Skip to content

Powered by Grav

Maintainer overview & fork model

Maintainer overview & fork model

The entry point for changing BOA: the stack as a code reader sees it — entry scripts, sourced library sets, the deployable payload — and the omega8cc fork model.

Entry point for changing BOA itself. Two things live here: the stack architecture as a code reader sees it — entry scripts, sourced library sets, the deployable payload — and the fork model: every component is an omega8cc repository, omega8cc is upstream, and nothing defers to pre-fork projects.

Verified at source, the stack reads as a short chain.

The entry scripts:

  • BOA.sh.txt — the meta installer. Exports the release identity (_tRee, _xSrl, _rLsn, _bTsBOA.sh.txt:47-50), deploys serial-gated tools through _fetch_versioned <dest> <url> fNN (BOA.sh.txt:1056), then hands off to the two stack installers.
  • BARRACUDA.sh.txt — system/stack installer.
  • OCTOPUS.sh.txt — per-instance platform layer.

Each entry script then, in order:

  1. Sources its settingslib/settings/{barracuda,octopus}.sh.cnf (defaults plus the bootstrap helpers).
  2. Fetches the BOA payload_download_helpers_libs (barracuda.sh.cnf:1613) pulls it into ${_bldPth}: a _download_boa_code tarball in the default BATCH _DL_MODE, or git clone --branch ${_BRANCH_BOA} when _DL_MODE=GIT (barracuda.sh.cnf:1636).
  3. Loads its include set from lib/functions/ — BARRACUDA loads helper dns system sql valkey redis nginx php solr master xtra firewall hotfix (BARRACUDA.sh.txt:275); OCTOPUS loads helper dns satellite (OCTOPUS.sh.txt:266).

master.sh.inc and satellite.sh.inc are deliberately parallel and never co-loaded (compare master.sh.inc:576 with satellite.sh.inc:3155): a fix that touches one side is patched into the other as a separate copy, never DRYed into a shared function.

The Ægir layer is four omega8cc forks, all fetched from _gitHub="https://github.com/omega8cc" (BARRACUDA.sh.txt:183):

  • Hostmaster (frontend distro) and Hosting (hosting_* modules) — branch 5.x-${_tRee} (master.sh.inc:576-577).
  • Provision (Drush-based backend) — ${_BRANCH_PRN} (master.sh.inc:688).
  • Drush 8 (patched classic) — a version-pinned tarball (master.sh.inc:735; pins at BARRACUDA.sh.txt:48-51).

Release mechanics — how a tag on 5.x-pro/5.x-lts reaches every production box through the SKYNET self-update agent (_SKYNET_MODE gate, aegir/tools/system/owl.sh:349, deployed as /var/xdrago/owl.sh) and how the fNN serials force tool re-fetch — are the Release model & SKYNET pipeline topic, indexed from the guide front page.

Reference

  • Variables and Commands — consolidated _VAR and CLI tables cited throughout this guide.
  • Discontinued features — components that left the stack; check before documenting anything you find only in old trees.

© 2026 BOA Documentation. All rights reserved.