- Replaced OS-specific build method with a custom ISO builder in the build-for-hardware.sh script. - Updated output file naming to reflect the correct Alpine version in the build process. - Adjusted build dates in hardware configuration files for HP ProDesk, merged, and Start9 Pure profiles to the latest timestamp.
3.4 KiB
3.4 KiB
Building Complete Archipelago Node OS
Status: In Progress
Currently building the Rust backend for Alpine Linux. Once complete, we'll have a fully functional Archipelago Bitcoin Node OS.
What's Been Completed
✅ ISO Build System
- Custom ISO builder using pre-built Alpine Linux
- Hardware-specific builds (HP ProDesk, Start9, Dell OptiPlex, Generic)
- Fast builds (~2 seconds)
- No cross-compilation issues on ARM Mac
✅ Frontend (Vue.js)
- Production build complete
- Location:
image-recipe/build/frontend/ - Size: ~14MB compressed
- Includes: Dashboard, Apps, Marketplace, Container management, Settings
⏳ Backend (Rust)
- Currently compiling in Alpine Docker container
- Native musl build for Alpine Linux
- Will output single binary:
archipelago - Includes: Container orchestration, RPC API, WebSocket support
✅ Integration Scripts
build-backend.sh- Builds Rust backend in Dockerbuild-frontend.sh- Builds Vue.js frontendintegrate-archipelago.sh- Combines everything into ISObuild-custom-iso.sh- Updated to include backend/frontend
What Will Happen Next
Once the backend compiles:
-
Integration Build
./integrate-archipelago.shThis will:
- Take the compiled backend binary
- Take the built frontend files
- Create new ISO with both included
- Configure nginx to serve UI
- Create OpenRC service for backend
- Set up auto-start on boot
-
Result You'll have:
archipelago-3.19-hp-prodesk-x86_64.isoWhich includes:
- Alpine Linux 3.19 base
- Podman + container tools
- Archipelago backend (
/usr/local/bin/archipelago) - Archipelago web UI (
/usr/share/archipelago/web/) - nginx configured on port 8100
- Backend API on port 8101
- Auto-start services
- DHCP networking
-
Boot Experience
- Boot from USB
- Login as root
- Run
/media/cdrom/archipelago/install.sh - System installs everything automatically
- Reboot
- Backend starts automatically
- Web UI accessible at
http://device-ip:8100
Features in the Complete OS
Container Management
- Install containerized apps (Bitcoin Core, LND, etc.)
- Start/stop/remove containers
- View logs and status
- Resource monitoring
Web UI
- Dashboard with system stats
- App marketplace
- Container app management
- Settings and configuration
- Onboarding flow
Backend API
- RPC endpoints for all operations
- WebSocket for real-time updates
- Container orchestration
- App manifest parsing
- Dependency resolution
Security
- Rootless Podman containers
- Separate user account (archipelago)
- SSH access
- Firewall ready
- Encrypted secrets storage (planned)
File Sizes
- Base ISO: 208 MB (Alpine + packages)
- Backend binary: ~50-80 MB (estimated, includes all deps)
- Frontend: ~14 MB
- Final ISO: ~300 MB (estimated total)
Next Session
If the backend build completes:
- Run
./integrate-archipelago.sh - Flash to USB
- Boot on HP ProDesk
- Test full system
If it doesn't complete:
- Resume the build
- Docker container maintains build cache
- Won't need to recompile dependencies
Build Time Estimates
- Frontend: 3-4 seconds ✅ DONE
- Backend (first time): 5-10 minutes ⏳ IN PROGRESS
- Backend (incremental): 30-60 seconds
- ISO integration: 2-3 seconds
- Total: ~10-15 minutes for complete build
Current Time: Building backend...
Estimated Completion: 5-10 minutes from start