2026-01-24 22:59:20 +00:00

1.6 KiB

Build Scripts

Helper scripts for building Archipelago OS images.

Scripts

build-backend.sh

Compiles the Archipelago Rust backend binary.

  • Output: ../build/backend/archipelago
  • Requires: Rust toolchain
  • Optional: musl target for static binary

build-frontend.sh

Builds the Vue.js frontend for production.

  • Output: ../build/frontend/
  • Requires: Node.js 18+, npm
  • Builds static files for serving

create-backend-apk.sh

Creates Alpine APK package from backend binary.

  • Output: ../apks/archipelago-backend-*.apk
  • Includes: binary, systemd service, config files
  • Format: Alpine package format (tar.gz with metadata)

install-archipelago.sh

Installs Archipelago components into built image.

  • Called after image is created
  • Installs APK and frontend files
  • Configures services

convert-iso-to-disk.sh

Converts ISO image to raw disk image.

  • Input: ISO file
  • Output: .img file ready for dd
  • Creates partition layout (EFI + root)

check-dependencies.sh

Checks if all build dependencies are available.

  • Checks: Rust, Node.js, Docker (if needed)
  • Provides installation instructions
  • Non-blocking (warns but continues)

setup-alpine-build.sh

Sets up Alpine build environment.

  • Installs Alpine build tools
  • Configures abuild keys
  • Only needed for native Alpine builds

Usage

These scripts are called automatically by the main build process. You typically don't need to run them manually, but you can for testing:

# Build just the backend
./scripts/build-backend.sh

# Build just the frontend
./scripts/build-frontend.sh

# Create APK package
./scripts/create-backend-apk.sh