Akadata Linux · Version 0 Saphira

Build command reference

The complete public command surface of the current Akadata Linux build controller.

Technical preview

Command grammar

./build.sh [--dry-run] COMMAND [PACKAGE...]

Package identifiers use stage prefixes such as stage1:gcc, stage2:grub, stage2:manifest, stage3:image, and stage4:curl. Aggregate targets are sdk, stage0 through stage4, base, and all.

--dry-run precedes the command: ./build.sh --dry-run build all.


Selection and execution

CommandEffect
./build.sh menuOpen the interactive top-level console menu.
./build.sh list [STAGE]List packages, optionally filtering stage0 through stage4.
./build.sh status [STAGE]Show package state for all stages or one stage.
./build.sh select PACKAGE...Persist named package selections.
./build.sh select-stage STAGE ...Replace only one stage’s selections.
./build.sh unselect [PACKAGE...]Clear named selections, or all selections when none are supplied.
./build.sh build [PACKAGE...]Build named packages or the persisted selection. Aggregate targets are accepted here.
./build.sh build-selectedBuild the persisted selection.
./build.sh next [STAGE]Build the next ready unit, optionally in one stage.
./build.sh validate [PACKAGE...]Validate named sources/state or the persisted selection.

Policy and configuration

CommandEffect
./build.sh settings showDisplay effective deterministic build policy.
./build.sh settings set NAME VALUESet jobs, load, architecture, optimization, pipe, branch-cost, kernel, or profile policy.
./build.sh settings resetRestore documented defaults.
./build.sh kernel-config showShow selected kernel configuration and SHA-256.
./build.sh kernel-config reset-defaultSelect the Akadata default kernel configuration.
./build.sh policy-report [PATH]Write the per-unit effective build-policy audit.
./build.sh clean-targetsPrint registered generated paths and markers.
./build.sh stage-capability-auditRegenerate the stage-placement capability report.
./build.sh system-configConfigure users, passwords, hostname, IPv4, and IPv6.
./build.sh stage2-menuconfigOpen Linux menuconfig explicitly inside the Stage2 chroot.

Clean and rebuild

CommandEffect
./build.sh clean TARGETClean a unit, stage, base, or all and invalidate dependants.
./build.sh rebuild TARGETClean, rebuild, and validate a unit, stage, base, or all.

Stage3 image and boot

CommandEffect
./build.sh imageBuild or validate the Stage3 qcow2 image.
./build.sh image-grub-hostCreate raw and qcow2 images using host Arch GRUB.
./build.sh image-grub-akadataCreate raw and qcow2 images using Akadata-built GRUB.
./build.sh image-cleanExplicitly remove the preserved Stage3 raw image.
./build.sh boot-rawBoot the preserved raw image through installed GRUB.
./build.sh bootBoot the Stage3 qcow2 through installed GRUB.
./build.sh rescueBoot the external kernel with akadata-rescue.
./build.sh kernel-bootCompatibility alias for rescue.
./build.sh kernel-boot-fullBoot the external kernel with normal /sbin/init.

Standards audits

CommandEffect
./build.sh fhs-audit [--source-only|ROOTFS]Validate the FHS 3.0 source and target-root contract.
./build.sh lsb-audit [--source-only|ROOTFS]Validate the LSB 5.0 compatibility profile.
./build.sh standards-audit [--source-only|ROOTFS]Run both filesystem and compatibility audits.

Stage4 managed packages

CommandEffect
./build.sh stage4-statusShow Stage4 package state.
./build.sh stage4-select ...Select Stage4 packages or a named profile.
./build.sh stage4-create-keysCreate the APK repository RSA signing key.
./build.sh stage4-validate-keysValidate APK and configured OpenPGP keys.
./build.sh stage4-preflightAudit selected package-build requirements.
./build.sh stage4-buildBuild selected Stage4 packages only.
./build.sh stage4-installInstall selected packages into the derived rootfs.
./build.sh stage4-validateValidate Stage4 structure and derived rootfs.
./build.sh stage4-repositoryCreate and sign the Akadata package repository.
./build.sh stage4-imageExplicitly create akadata-stage4.qcow2.
./build.sh stage4-bootExplicitly boot akadata-stage4.qcow2.

Settings examples

Use policy values without compiler prefixes

./build.sh settings set jobs 8
./build.sh settings set load 10
./build.sh settings set architecture x86-64-v3
./build.sh settings set optimization O3
./build.sh settings set pipe on
./build.sh settings set gcc-branch-cost off
./build.sh settings set kernel default
./build.sh settings set kernel custom /absolute/path/to/kernel.config
./build.sh settings set profile performance
SettingAccepted values
jobsInteger from 1 through 1024
loadNumber greater than 0 and no greater than 1024
architecturex86-64, x86-64-v2, x86-64-v3, or x86-64-v4
optimizationO0, Og, O1, O2, O3, Os, or Oz
pipeon or off
gcc-branch-coston or off; optional and off by default
kerneldefault, or custom followed by an absolute path
profileconservative or performance

Use O3, not -O3, and x86-64-v3, not x86_64-v3. Invalid saved policy can be recovered with ./build.sh settings reset; help remains available.