2026-02-03 21:43:33 +00:00
# Quick Build Guide - Archipelago Beta Release
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## Prerequisites
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
Make sure you have:
- Docker or Podman installed
2026-02-14 16:44:20 +00:00
- `xorriso` installed (for ISO creation)
2026-02-03 21:43:33 +00:00
- Access to dev server: archipelago@192 .168.1.228
2026-02-01 18:46:35 +00:00
2026-02-14 16:44:20 +00:00
**Note**: When building on the target server with `sudo` , the script will automatically install missing dependencies (`xorriso` , `podman` ).
2026-02-03 21:43:33 +00:00
## Build Auto-Installer ISO
2026-02-01 18:46:35 +00:00
2026-02-14 16:44:20 +00:00
### Option 1: Build on Target Server (Recommended)
```bash
# SSH to target server
ssh archipelago@192 .168.1.228
# Navigate to project
cd ~/archy/image-recipe
# Run build (auto-installs missing deps)
sudo ./build-auto-installer-iso.sh
# Copy ISO back to your Mac
# On your Mac:
scp archipelago@192 .168.1.228:~/archy/image-recipe/results/archipelago-auto-installer-*.iso .
```
### Option 2: Build from Mac (requires Docker)
**Important**: This requires Docker Desktop installed on macOS.
2026-02-01 18:46:35 +00:00
```bash
2026-02-03 21:43:33 +00:00
cd /Users/dorian/Projects/archy/image-recipe
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
# Capture current live server state
DEV_SERVER=archipelago@192 .168.1.228 ./build-auto-installer-iso.sh
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
# ISO will be created in: results/archipelago-auto-installer-*.iso
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
## What the ISO Includes
2026-02-01 18:46:35 +00:00
2026-04-09 21:32:08 +02:00
✅ Complete Debian 13 root filesystem
2026-02-03 21:43:33 +00:00
✅ Pre-built Archipelago backend
✅ Pre-built frontend (web UI)
2026-02-14 16:44:20 +00:00
✅ **Prepackaged container images** (Bitcoin Knots, LND, UIs, and other bundled apps), loaded on first boot
2026-02-03 21:43:33 +00:00
✅ Nginx configuration (HTTPS ready)
✅ Auto-installer that:
- Detects internal disk
- Creates partitions (EFI + root)
- Extracts pre-built system
- Installs bootloader
- Reboots to working system
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## What Users Need to Do Post-Install
2026-02-01 18:46:35 +00:00
2026-02-14 16:44:20 +00:00
1. **Start apps from the Web UI** – Container images are prepackaged and loaded on first boot. Bitcoin Knots + UI, LND + UI, and other bundled apps are ready to start from the Web UI without manual `podman run` . No need to pull or deploy core containers.
2. **Access Web UI** – Navigate to `http://[server-ip]`
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## Testing the ISO
2026-02-01 18:46:35 +00:00
```bash
2026-02-03 21:43:33 +00:00
# Use VirtualBox, QEMU, or real hardware
qemu-system-x86_64 \
-m 4G \
-cdrom results/archipelago-auto-installer-*.iso \
-hda archipelago-test.qcow2 \
-boot d
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
## Important Notes
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
⚠️ **The auto-installer will ERASE the target disk!**
⚠️ Make sure to test on a non-production machine first
⚠️ Minimum 20GB disk space required (500GB+ recommended for Bitcoin)
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## Build from Source (Alternative)
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
If you want to build everything from scratch instead of capturing the live server:
2026-02-01 18:46:35 +00:00
```bash
2026-02-03 21:43:33 +00:00
BUILD_FROM_SOURCE=1 ./build-auto-installer-iso.sh
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
This will:
- Build backend from Rust source
- Build frontend with `npm run build`
- Create fresh SSL certificates
- Generate default configs
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## Troubleshooting
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
**ISO won't boot:**
- Ensure UEFI mode is enabled
- Try disabling Secure Boot
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
**Installer hangs:**
- Check the auto-start script fix is applied (see DEPLOYMENT.md)
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
**Backend doesn't detect containers:**
- Verify `/etc/sudoers.d/archipelago-podman` exists
- Check backend can run `sudo podman ps`
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
## Version Naming
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
ISOs are automatically named with timestamp:
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
archipelago-auto-installer-YYYYMMDD-HHMMSS.iso
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
For releases, rename to:
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
archipelago-v0.1.0-beta.1.iso
2026-02-01 18:46:35 +00:00
```
2026-02-03 21:43:33 +00:00
## Next Steps After Building
2026-02-01 18:46:35 +00:00
2026-02-03 21:43:33 +00:00
1. Test the ISO on VM
2. Verify web UI loads
3. Test container deployment
4. Document any issues
5. Tag the release in git
6. Upload ISO to distribution point