Skip to content

feat(asahi): wire Apple Silicon support for builder-aarch64 - #164

Merged
mdheller merged 1 commit into
mainfrom
feat/asahi-builder-aarch64
Jun 16, 2026
Merged

feat(asahi): wire Apple Silicon support for builder-aarch64#164
mdheller merged 1 commit into
mainfrom
feat/asahi-builder-aarch64

Conversation

@mdheller

Copy link
Copy Markdown
Contributor

Summary

  • Adds nixos-apple-silicon flake input (tpwrules/nixos-apple-silicon, nixpkgs follows) to wire Asahi kernel + drivers for Apple M-series hardware
  • Wires the apple-silicon-support module into nixosConfigurations.builder-aarch64
  • Fills out hosts/builder-aarch64/default.nix with full system config: hardware.asahi (enable, sound, AGX GPU), systemd-boot for the m1n1+U-Boot Asahi chain, Nix flake settings, Katello substituter stub, sourceos user, stateVersion 25.05
  • hardware-configuration.nix intentionally omitted — device-specific, generated on device after Asahi install
  • Adds scripts/katello-sourceos-setup.sh: hammer CLI script that creates the SourceOS product, repositories (nix-cache-aarch64-linux, sourceos-closures-aarch64), content view (sourceos-builder-aarch64), lifecycle environments (dev/candidate/stable), and initial publish+promote

Test plan

  • nix flake check passes on aarch64-linux (or with cross-eval from macOS)
  • builder-aarch64-contract check passes: channel=dev, role=builder-aarch64, dev.json capabilities intact
  • After Asahi refresh on M2: nixos-install --flake .#builder-aarch64 succeeds
  • katello-sourceos-setup.sh runs cleanly against a live Foreman+Katello instance

- flake.nix: add nixos-apple-silicon input (tpwrules/nixos-apple-silicon,
  follows nixpkgs); wire the apple-silicon-support module into
  nixosConfigurations.builder-aarch64

- hosts/builder-aarch64: add hardware.asahi options (enable, sound, AGX GPU),
  systemd-boot config for m1n1/U-Boot Asahi chain,
  canTouchEfiVariables=false (mandatory on Apple Silicon),
  Nix flake settings, local Katello substituter stub (127.0.0.1:8101),
  sourceos user with wheel/video/audio groups, stateVersion 25.05

  hardware-configuration.nix is intentionally omitted — generate on
  device with `nixos-generate-config` after Asahi install.

- scripts/katello-sourceos-setup.sh: hammer CLI setup for SourceOS
  content structure in Foreman+Katello: lifecycle envs (dev/candidate/stable),
  SourceOS product, nix-cache-aarch64-linux and sourceos-closures-aarch64
  repos, sourceos-builder-aarch64 content view, initial publish + dev promote
@mdheller
mdheller merged commit 58516ea into main Jun 16, 2026
@mdheller
mdheller deleted the feat/asahi-builder-aarch64 branch June 16, 2026 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant