archy/NEXT_STEPS.md
Dorian 76782073c2 Refactor build script for custom ISO creation and update hardware configuration
- 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.
2026-01-31 22:56:39 +00:00

7.1 KiB

🎯 Archipelago Next Steps

What's Complete

  • Build system fixed and working on ARM Mac
  • HP ProDesk 400 G4 DM ISO created (208 MB)
  • Custom Alpine ISO builder (build-custom-iso.sh)
  • Hardware-specific build wrapper (build-for-hardware.sh)
  • Automated installation script included in ISO
  • DHCP networking configured
  • Podman + container tools included
  • Base system packages (nginx, openssh, etc.)
  • Custom Archipelago branding
  • Documentation complete

🧪 Testing Required

Virtual Machine Testing

  • Boot ISO in VirtualBox
  • Boot ISO in QEMU
  • Test installation script
  • Verify Podman works
  • Test container pull/run
  • Check network connectivity

Hardware Testing (HP ProDesk)

  • Flash ISO to USB drive
  • Boot HP ProDesk from USB
  • Verify BIOS/UEFI boot
  • Test installation on real hardware
  • Verify network (DHCP)
  • Test Podman performance
  • Check CPU/RAM/disk usage

Other Hardware

  • Test on Start9 Server Pure
  • Test on Dell OptiPlex 7040 Micro
  • Test on generic x86_64 PC

🔨 Backend Integration

Build Rust Backend

  • Compile Archipelago backend for Alpine Linux (musl)
  • Create Alpine APK package
  • Include APK in ISO at build time
  • Configure backend to start on boot
  • Test RPC endpoints
  • Verify container management works

Current Backend Status

Location: /Users/dorian/Projects/archy/core/

  • archipelago/ - Main server binary
  • container/ - Container orchestration
  • models/ - Data models
  • security/ - Security policies
  • performance/ - Resource management

Build Command Needed:

cd core/archipelago
cargo build --release --target x86_64-unknown-linux-musl

Package as APK:

# Create APKBUILD file
# Build with abuild
# Copy to image-recipe/build/iso-custom/custom/apks/

🎨 Frontend Integration

Vue.js UI

  • Build frontend for production
  • Include in ISO at /usr/share/archipelago/web/
  • Configure nginx to serve UI
  • Test UI loads at boot
  • Verify WebSocket/API connections

Current Frontend Status

Location: /Users/dorian/Projects/archy/neode-ui/

Build Command:

cd neode-ui
npm run build
# Copy dist/ to ISO

🐳 Container Apps Integration

App Manifests

Location: /Users/dorian/Projects/archy/apps/

Apps ready to integrate:

  • Bitcoin Core
  • LND
  • Core Lightning
  • BTCPay Server
  • Mempool
  • Nostr relays (nostr-rs-relay, strfry)
  • Web5 DWN
  • Meshtastic
  • Router
  • Home Assistant
  • Grafana
  • SearXNG
  • Ollama
  • OnlyOffice
  • Penpot

Integration Steps:

  1. Parse manifest.yml files
  2. Pre-pull Docker images (optional)
  3. Include manifests in ISO
  4. Test install/start/stop via backend

🌐 Networking & Auto-Boot

Auto-Connect on Boot

Current status:

  • DHCP configured for common interfaces (eth0, enp0s3, enp0s25)
  • DNS configured (8.8.8.8, 1.1.1.1)
  • Test internet connectivity on first boot
  • Test DNS resolution
  • Add fallback interfaces if needed

Backend Auto-Start

  • Create OpenRC init script for archipelago backend
  • Enable service on boot
  • Configure to start after network
  • Add health check
  • Configure restart on failure

UI Auto-Start

  • Configure nginx to start on boot
  • Test UI accessible at http://device-ip:8100
  • Add boot splash screen (optional)
  • Display IP address on console at boot

🔐 Security Hardening

Current Security Status

  • Rootless Podman (non-root containers)
  • Separate user account (archipelago)
  • SSH key-only authentication
  • Firewall rules (iptables)
  • AppArmor/SELinux profiles
  • Secrets encryption
  • SSL/TLS for web UI
  • Signed images (Cosign)

Secrets Management

  • Implement encrypted secrets storage
  • Bitcoin Core wallet encryption
  • LND wallet password management
  • API key storage
  • Certificate management

📦 Additional Features

System Management

  • Automatic updates
  • Backup/restore functionality
  • Monitoring dashboard
  • Log aggregation
  • Health checks
  • Resource usage graphs

User Experience

  • First-boot wizard
  • Welcome screen
  • Quick setup guide
  • Hardware detection display
  • Network status indicator
  • Container status dashboard

Hardware Optimization

  • Intel GPU drivers (HP ProDesk, Start9)
  • Power management
  • Temperature monitoring
  • Fan control (if applicable)
  • Storage optimization (TRIM, etc.)

🚀 Deployment Options

USB Boot

  • Create bootable USB from ISO
  • Persistent storage on USB
  • Live mode vs Install mode

Dedicated Installation

  • Install to internal storage
  • Partition scheme
  • Encrypted disk support
  • RAID support (optional)

Network Boot (PXE)

  • PXE boot server setup
  • Network installation
  • Automatic provisioning

📚 Documentation Needed

User Documentation

  • Installation guide
  • Quick start guide
  • App installation guide
  • Troubleshooting guide
  • FAQ

Developer Documentation

  • Architecture overview (exists)
  • Build system guide
  • Contributing guide
  • API documentation
  • Container manifest spec (exists)

Hardware-Specific Guides

  • HP ProDesk setup guide
  • Start9 Server Pure guide
  • Dell OptiPlex guide
  • Generic x86_64 guide

🎯 Priority Order

Phase 1: Core Functionality (Next)

  1. Test current ISO in VM START HERE
  2. Build Rust backend for Alpine Linux
  3. Include backend in ISO
  4. Test backend starts and runs

Phase 2: UI Integration

  1. Build Vue.js frontend
  2. Include in ISO
  3. Configure nginx
  4. Test full stack (backend + UI)

Phase 3: Hardware Testing

  1. Flash to USB
  2. Test on HP ProDesk
  3. Verify all hardware works
  4. Optimize performance

Phase 4: Container Apps

  1. Integrate Bitcoin Core
  2. Test container lifecycle
  3. Add remaining apps
  4. Test app dependencies

Phase 5: Polish & Security

  1. Security hardening
  2. Auto-boot configuration
  3. User experience improvements
  4. Documentation finalization

📊 Project Status

Component Status Priority
Build System Complete -
Base ISO Complete -
Backend Build ⚠️ Needed 🔴 High
Frontend Build ⚠️ Needed 🟡 Medium
VM Testing 🔵 Ready 🔴 High
Hardware Testing 🔵 Ready 🔴 High
Container Integration ⏸️ Pending 🟡 Medium
Security ⏸️ Pending 🟡 Medium
Documentation 🟢 Partial 🟢 Low

🎉 Immediate Win

You can now:

  1. Boot Archipelago on any x86_64 machine
  2. Get a working Alpine Linux system
  3. Have Podman + container tools ready
  4. Run the installation script
  5. Start pulling and running containers manually

Next milestone: Backend integration so the web UI can manage containers!


Last Updated: January 31, 2026
Current Phase: Testing & Backend Integration
Blocker: None - ready to proceed!