From 67dd0f7e6b724057867429eae276caae869e0e10 Mon Sep 17 00:00:00 2001 From: Marcelo Alcantara Date: Fri, 25 Sep 2026 23:36:45 +1000 Subject: [PATCH 1/3] omarchy-mac-boot: require the HOOKS baseline once the source relies on it From omacom/omarchy-mac#544 the Apple drop-ins no longer add Plymouth themselves and build on omarchy-settings' 00-omarchy-hooks.conf (#536). A settings version cannot express that (quattro candidates sort below stock releases and omarchy pins its settings exactly), so a build whose payload has no 93-omarchy-mac-plymouth.conf depends on the name omarchy-mkinitcpio-hooks-baseline, which settings packages that ship the baseline must provide. --- pkgbuilds/omarchy-mac-boot/PKGBUILD | 9 +++++++++ pkgbuilds/omarchy-mac-boot/README.md | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/pkgbuilds/omarchy-mac-boot/PKGBUILD b/pkgbuilds/omarchy-mac-boot/PKGBUILD index a0fb5b9c..706fcf35 100644 --- a/pkgbuilds/omarchy-mac-boot/PKGBUILD +++ b/pkgbuilds/omarchy-mac-boot/PKGBUILD @@ -45,6 +45,15 @@ package() { 'gzip' 'kbd' 'mkinitcpio' 'sed' 'systemd' 'util-linux') "$srcdir/boot/install" "$pkgdir" + # Once the source drops its own Plymouth fragment (omacom/omarchy-mac#544), + # the Apple drop-ins build on omarchy-settings' HOOKS baseline + # (/etc/mkinitcpio.conf.d/00-omarchy-hooks.conf, omacom/omarchy-mac#536), and + # an older settings package leaves Plymouth out of the Mac initramfs. A + # settings version cannot say so (quattro candidates sort below stock + # releases, and omarchy pins its settings exactly), so the settings packages + # that ship the baseline provide it by name. + [[ -e $pkgdir/etc/mkinitcpio.conf.d/93-omarchy-mac-plymouth.conf ]] || + depends+=('omarchy-mkinitcpio-hooks-baseline') printf '%s\n' "$_commit" | install -Dm644 /dev/stdin "$pkgdir/usr/share/omarchy-mac/boot-source-revision" # Administrator-editable: every /etc path and the initramfs helpers an image diff --git a/pkgbuilds/omarchy-mac-boot/README.md b/pkgbuilds/omarchy-mac-boot/README.md index 17f1d7e8..d2506e6c 100644 --- a/pkgbuilds/omarchy-mac-boot/README.md +++ b/pkgbuilds/omarchy-mac-boot/README.md @@ -10,6 +10,10 @@ The package is aarch64-only and published to edge only. It widens to rc and stab It requires `limine-mkinitcpio-hook` 1.39.0-2 or newer: that is the first build whose hooks leave a Mac's `/boot` to mkinitcpio until Limine is activated. With an older hook, Limine's kernel hook replaces mkinitcpio's by name, and this package's `limine-ready` gate stops it on a Mac that still boots GRUB, so a kernel update would never reach `/boot`. +## HOOKS baseline + +From the source that drops the boot package's own Plymouth fragment (omacom/omarchy-mac#544), the Apple drop-ins build on omarchy-settings' HOOKS baseline, `/etc/mkinitcpio.conf.d/00-omarchy-hooks.conf` (omacom/omarchy-mac#536). With an older settings package the Mac initramfs loses Plymouth at the passphrase prompt. A settings version cannot express this: quattro candidate builds sort below stock releases, and `omarchy` pins its settings version exactly. So when the staged payload has no `93-omarchy-mac-plymouth.conf`, `package()` adds a dependency on the name `omarchy-mkinitcpio-hooks-baseline`. Every settings package that ships the baseline on aarch64 (`omarchy-settings`, `omarchy-settings-dev`, candidate builds) must `provide` that name. Until one does, such a build of this package cannot be installed: it fails outright rather than silently booting without Plymouth. + ## Transition - It provides, conflicts with and replaces `omarchy-apple-boot` and `omarchy-first-boot`. The scriptlet moves a pending `omarchy-first-boot` marker to `omarchy-mac-first-boot`, drops the replaced unit's dangling enable link and points at a customised `90-omarchy-asahi.conf.pacsave`. From f3a96c195b1cdc7f3f981bb2f74a88e0d9a9660c Mon Sep 17 00:00:00 2001 From: Marcelo Alcantara Date: Fri, 25 Sep 2026 23:37:40 +1000 Subject: [PATCH 2/3] omarchy-mac-boot: document the publish order its pinned source needs A pin with omacom/omarchy-mac#544 needs the settings HOOKS baseline (#542) published first; a pin with #543's update-verify entrypoint must publish before any runtime carrying #543. pkgrel 3 so this rebuild does not reuse the published 20260925-2 filename. --- pkgbuilds/omarchy-mac-boot/PKGBUILD | 2 +- pkgbuilds/omarchy-mac-boot/README.md | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgbuilds/omarchy-mac-boot/PKGBUILD b/pkgbuilds/omarchy-mac-boot/PKGBUILD index 706fcf35..b4b8f555 100644 --- a/pkgbuilds/omarchy-mac-boot/PKGBUILD +++ b/pkgbuilds/omarchy-mac-boot/PKGBUILD @@ -8,7 +8,7 @@ pkgname=omarchy-mac-boot # 20260921-N. Reset pkgrel to 1 when pkgver changes; bump it to re-pin or # rebuild on the same day. pkgver=20260925 -pkgrel=2 +pkgrel=3 pkgdesc='Apple Silicon boot support for Omarchy: initramfs, in-place encryption, first boot and Limine activation' arch=('aarch64') groups=('omarchy-platform-apple-silicon') diff --git a/pkgbuilds/omarchy-mac-boot/README.md b/pkgbuilds/omarchy-mac-boot/README.md index d2506e6c..83076db0 100644 --- a/pkgbuilds/omarchy-mac-boot/README.md +++ b/pkgbuilds/omarchy-mac-boot/README.md @@ -14,6 +14,13 @@ It requires `limine-mkinitcpio-hook` 1.39.0-2 or newer: that is the first build From the source that drops the boot package's own Plymouth fragment (omacom/omarchy-mac#544), the Apple drop-ins build on omarchy-settings' HOOKS baseline, `/etc/mkinitcpio.conf.d/00-omarchy-hooks.conf` (omacom/omarchy-mac#536). With an older settings package the Mac initramfs loses Plymouth at the passphrase prompt. A settings version cannot express this: quattro candidate builds sort below stock releases, and `omarchy` pins its settings version exactly. So when the staged payload has no `93-omarchy-mac-plymouth.conf`, `package()` adds a dependency on the name `omarchy-mkinitcpio-hooks-baseline`. Every settings package that ships the baseline on aarch64 (`omarchy-settings`, `omarchy-settings-dev`, candidate builds) must `provide` that name. Until one does, such a build of this package cannot be installed: it fails outright rather than silently booting without Plymouth. +## Publish order + +A new pin publishes on merge, so check what the pinned source needs first: + +- **Settings baseline.** A pin that includes omacom/omarchy-mac#544 (no `93-omarchy-mac-plymouth.conf`) needs omarchy-settings with the HOOKS baseline (omacom/omarchy-mac#542) published on aarch64, and providing `omarchy-mkinitcpio-hooks-baseline`. Publish that first; otherwise this build cannot be installed. +- **Update verification.** A pin that includes omacom/omarchy-mac#543 (`/usr/lib/omarchy/mac-boot/update-verify`) must publish before any runtime that carries #543. Otherwise that runtime blocks every update on Macs whose `omarchy-mac-boot` predates it. + ## Transition - It provides, conflicts with and replaces `omarchy-apple-boot` and `omarchy-first-boot`. The scriptlet moves a pending `omarchy-first-boot` marker to `omarchy-mac-first-boot`, drops the replaced unit's dangling enable link and points at a customised `90-omarchy-asahi.conf.pacsave`. From 8f80d460498b54534a33eb5b0f08766b097a0f66 Mon Sep 17 00:00:00 2001 From: Marcelo Alcantara Date: Sat, 26 Sep 2026 01:25:33 +1000 Subject: [PATCH 3/3] omarchy-mac-boot 20260925-3: pin quattro-upstream f7ea7ecc Moves the pin from the boot-set integration commit to quattro-upstream, which now has #541 with its review fixes (first boot hands off only for a failed step, and the retry waits for NetworkManager), #543's update-verify entrypoint, #545's provision entrypoints and #549's keyslot-only LUKS check. #544 is not in it, so the Plymouth fragment still ships and no HOOKS baseline dependency applies. --- pkgbuilds/omarchy-mac-boot/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgbuilds/omarchy-mac-boot/PKGBUILD b/pkgbuilds/omarchy-mac-boot/PKGBUILD index b4b8f555..184a6b97 100644 --- a/pkgbuilds/omarchy-mac-boot/PKGBUILD +++ b/pkgbuilds/omarchy-mac-boot/PKGBUILD @@ -20,9 +20,9 @@ conflicts=('omarchy-apple-boot' 'omarchy-first-boot') replaces=('omarchy-apple-boot' 'omarchy-first-boot') install=omarchy-mac-boot.install # An exact omarchy-mac commit, never a branch. -_commit=a09ee0cadd8a78a774dab06eae2d6faa6a395255 +_commit=f7ea7ecc804a133e1afe571b708458a6d71db77d source=("omarchy-mac::git+https://github.com/omacom/omarchy-mac.git#commit=${_commit}") -sha256sums=('45da7d2039a3196150fc4f7798210c5717dc9a0e9c0526de988759948f6f536f') +sha256sums=('b14b862e8f22cb7db49afcf7e380bc92d532967cc0edef72adfda54a1eb5605b') prepare() { # Tests and staging must not be able to read the surrounding desktop source.