Skip to content

Master installer image: one stick provisions a Pithead coordinator, a RigForge rig, or both #797

Description

@VijitSingh97

Direction set by the operator (2026-07-31): the appliance image becomes the ONE way to stand up
any machine in a mine. The installer page's first question becomes what this machine IS:

  • Pithead — the current flow, unchanged: coordinator + nodes + dashboard.
  • RigForge rig — the form collapses to almost nothing: pool address (default discovered via
    mDNS — a Pithead on the LAN answers pithead.local:3333), optional worker name and stratum
    password. First boot from disk compiles XMRig once (cached on /data), tunes what a read-only
    root allows, and mines. No dashboard, no nodes, no chains partition needed — the repart
    layout can size /data small.
  • Both — Pithead plus the on-box miner (The appliance offers mine-on-this-box but gives no way to install RigForge on it #796 option 3): RigForge runs beside the
    containers, pointed at the machine's own stratum.

The fleet story this buys: flash one stick, install machine 1 as Pithead, then walk the same
stick down the rack installing rigs — each one finds the coordinator over mDNS and asks only
for confirmation. The stick already keeps clean session state per machine and carries operator
pre-seeds; both mechanisms extend to rig configs unchanged.

Groundwork this depends on (from the #796 recon, unverified on the RO root until the bench
prototype): RigForge units rendered into /run rather than /etc; GRUB/1GB-hugepage tuning
declared image-owned (runtime sysctl tuning only, or moved to image build); the RigForge tree
synced to /data so the XMRig build lands on writable storage; toolchain baked at image build
(apt cannot run on the appliance).

Open questions for the recon session:

  • image identity and naming once it installs two products (org umbrella?), and how the image
    version couples to each product's version;
  • whether the rig role skips the containers entirely (no podman surface on a pure rig) or
    keeps the base identical for simpler A/B updates — leaning identical-base: one image, one
    update pipeline, roles differ only in what the boot path starts;
  • credentials card per role (a rig has no dashboard login — its card is just the worker name
    and where it points).

Sequence: bench prototype of RigForge-on-appliance over SSH on the debug image (recon, after
the operator's Monero sync completes) → rigforge-side RO-root changes → #796 (Both) → this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appliancePithead OS appliance work — lands on feat/phase2-bakery-imageenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions