Repository navigation
Runtime settings profile and platform package lists - #542
Merged
Merged
Conversation
omarchy-pkg-defaults prints the base list plus the aarch64 and Apple or Qualcomm additions for the detected or named platform, and omarchy-reinstall-pkgs installs that set instead of the base list alone. Only the Apple list names Apple packages; only the Qualcomm list adds its firmware.
…icon Only Apple Silicon gets the Asahi repository, and there [omarchy] comes before it and Arch Linux ARM so the Mac builds carried there (Aurora kernel, m1n1, U-Boot, the Hyprland stack) win over the same names. Qualcomm and other aarch64 machines now stage Arch Linux ARM's repositories instead of the x86_64 template.
omarchy-settings can ship the same files on aarch64 as on x86_64 once each platform-specific one decides at runtime: the HOOKS baseline leaves Apple Silicon's own hooks alone, and the Thunderbolt module is optional for kernels without it. default/settings-runtime-profile lists the rest, which only act where their tools run, and tells the recipe to stop stripping this source.
Migration 1789154627 copied the zram vendor drop-in into /etc on Macs because their settings package left it out. Now that it ships everywhere, an identical copy would only hide its updates; an edited one is kept. Fresh Macs get zram from the aarch64 package list and the packaged drop-in.
The Apple fixture follows the Apple repository order and resolves the base, aarch64 and Apple lists with the image's kernel, boot chain and Asahi platform packages; Qualcomm and generic aarch64 resolve their own lists. The staging test keeps each fixture's repository order in step with its template.
The detector reads the machine it runs on, so an Apple image built in a chroot or booted in a VM looked generic and the baseline replaced its hooks. The asahi hook that Apple's mkinitcpio.conf or boot package already put in HOOKS now keeps the baseline out as well.
Their omarchy-settings now carries the zram drop-in and reclaim tuning, which expect swap on zram. The migration installs and starts the generator where the platform's default packages name it. The profile notes also name what else turns systemd-oomd on, and the new tests quote their literals.
Its mkinitcpio and Limine drop-ins now ship on aarch64 and reach what a Mac boots, which VM acceptance cannot qualify.
maralcbr
changed the base branch from
mac/13-hw-platform
to
quattro-upstream
September 25, 2026 10:33
Collaborator
Author
|
Note from ticket 17 (#539): this PR's |
The composable HOOKS baseline (00-omarchy-hooks.conf) replaces this branch's guard in omarchy_hooks.conf; the runtime profile now names it. The Apple list keeps its video-decode entries, and the composition test expects the optional Thunderbolt module.
A Mac unlocked by busybox encrypt and cryptdevice= cannot boot the systemd baseline, and one without the Apple boot package loses its asahi hook to it. The baseline now leaves mkinitcpio.conf's line alone on a Mac that carries either, until ticket 45 moves it; an asahi hook marks such a root off a Mac too.
omarchy-mac is not on the aarch64 channels yet and obs-studio is not built for aarch64, so the platform set failed as a whole there. Each missing default is now reported and skipped.
maralcbr
added a commit
that referenced
this pull request
Sep 25, 2026
Brings in the runtime profile and composed package lists (#542), the platform mkinitcpio baseline (#536) and deferred first-boot setup (#528). The Apple package list is #542's with omarchy-mac-boot after omarchy-mac. The boot package's 90-94 drop-ins now sort after 00-omarchy-hooks.conf; a new test composes the real baseline with them on an Apple Silicon fixture: the encrypted systemd image gets asahi, omarchy-vendorfw, omarchy-mac-encrypt and sd-encrypt once, a non-Latin layout stays out, and a legacy busybox encrypt line is left as its owner set it up.
This was referenced Sep 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ticket 14. Stacked on #514 (
mac/13-hw-platform). Recipe side: omacom/omarchy-pkgs#638.What changed
Runtime settings profile. omarchy-settings can now ship the same files on aarch64 as on x86_64, because each platform-specific file decides at runtime:
omarchy_hooks.confleaves an Apple root's HOOKS alone. It checks whether the detector says Apple Silicon, or whether HOOKS already carryasahi, which covers Apple images built in a chroot or booted in a VM.thunderbolt?).default/settings-runtime-profilelists the rest. The recipe keys on this file.Package lists are composed as base + architecture + platform:
install/omarchy-aarch64.packages(zram-generator)install/omarchy-apple.packages(omarchy-mac, plus the audio, video-decode and Widevine packages Apple setup already installs)install/omarchy-qualcomm.packages(linux-firmware-qcom)omarchy-pkg-defaults [platform]prints the composed set, andomarchy-reinstall-pkgsinstalls it.pacman templates per platform.
default/pacman/apple-silicon/, ordered[omarchy],[asahi-alarm], then Arch Linux ARM, so the omacom builds for the Mac win.[omarchy], with no Asahi repository. They used to stage the x86 template.Migration 1790328426 installs and starts zram-generator on aarch64 machines that lack it. It also retires the identical
/etczram copy that 1789154627 wrote (the Prepare 4.0.3rc4 trust bootstrap #435 note).The package-resolution fixtures follow the new lists and Apple repository order, and a test keeps each fixture in step with its template.
Promoting omarchy-settings through
tools/releasenow needs a Mac hardware record, since it now carries drop-ins that go into what a Mac boots.Audit rows
~/.bashrcon Macs). It needs the settings scriptlet to apply the skel.bashrcon Apple, which changes the bytes of the x86 package's.INSTALL. Left for the owner.[omarchy-aarch64]at runtime until omarchy-mac and friends publish on omacom.Testing
test/all, non-root, CI package set): ARM container gives only the two files in.github/known-test-failures. The emulated x86 Arch container gives the known hermes-remove failure plus launch-shell-test, which fails the same way on the base commit there.tools/package-resolution/check, live databases): all checks pass.omarchy asahi-alarm core extra alarm aur.linuxresolves toomarchy/linux-auroraeven before the kernel is installed.hyprland,hyprland-guiutils,hyprtoolkit,xdg-terminal-execandavd-fwcome from[omarchy].tools/release/test/omacom-laneandfork-paritypass.Second review found two real problems, both fixed. The HOOKS guard missed Apple images built or booted off a Mac. Existing non-Apple aarch64 machines got zram tuning without zram-generator.
Follow-ups and risks
etc/limine-entry-tool.dnow ships on Macs. These files are key=value and can't be gated in-file. On a Mac where Limine is active (omarchy-pkgs#631),/etc/default/limineoutranks only the keys it sets.ENABLE_LIMINE_FALLBACK,MAX_SNAPSHOT_ENTRIES,SNAPSHOT_FORMAT_CHOICEand theKERNEL_CMDLINEappends apply, so 09/36/55 should check them on hardware. The new release gate enforces that.asahihook until 24's target manifest lands. The image builder (21/23) reads only the base and Apple lists today; it should compose withomarchy-pkg-defaults apple-siliconto get zram-generator.omarchy-update-system-pkgs-when-conflictedstill refuses to move leftovers on Apple at the memory and USB paths that settings now owns.omarchy_hooks.conf; the guard here is interim.