Files
omarchy-pkgs/pkgbuilds/omarchy-mac-boot/PKGBUILD
T
Marcelo Alcantara 8168e33032 omarchy-mac, omarchy-mac-boot: pin quattro-upstream ff7ce0d4d
Both packages move to the same omarchy-mac commit, so speakersafetyd keeps
one owner (#567 with #535) and the boot entrypoints the runtime needs publish
first. omarchy-mac gains the Apple Silicon platform group its source's guard
contract names.
2026-09-27 20:29:25 +10:00

66 lines
3.2 KiB
Bash

# Maintainer: Marcelo Alcantara <maralc@gmail.com>
# Recipe from maralcbr/omarchy-pkgs asahi-quattro pkgbuilds/omarchy-mac-boot
# (20260921-10 at 0a55baeddecf59687c32b4bd4e1dee743605c183); the payload now
# builds from packages/omarchy-mac/boot in omacom/omarchy-mac.
pkgname=omarchy-mac-boot
# pkgver is the UTC commit date of _commit, so it sorts above the fork's
# 20260921-N. Reset pkgrel to 1 when pkgver changes; bump it to re-pin or
# rebuild on the same day.
pkgver=20260927
pkgrel=1
pkgdesc='Apple Silicon boot support for Omarchy: initramfs, in-place encryption, first boot and Limine activation'
arch=('aarch64')
groups=('omarchy-platform-apple-silicon')
url='https://github.com/omacom/omarchy-mac'
license=('MIT')
makedepends=('git')
provides=('omarchy-apple-boot' 'omarchy-first-boot')
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=ff7ce0d4dfaea9e17270b3061e642ee095b7b265
source=("omarchy-mac::git+https://github.com/omacom/omarchy-mac.git#commit=${_commit}")
sha256sums=('7530c284cd323d451540205c0a677c4e187070f0b8c4081a2e85f487f2ebb985')
prepare() {
# Staging must not be able to read the surrounding desktop source.
rm -rf "$srcdir/boot"
cp -a "$srcdir/omarchy-mac/packages/omarchy-mac/boot" "$srcdir/boot"
[[ $(git -C "$srcdir/omarchy-mac" rev-parse HEAD) == "$_commit" ]]
[[ $(TZ=UTC0 git -C "$srcdir/omarchy-mac" show -s --format=%cd --date=format-local:%Y%m%d HEAD) == "$pkgver" ]]
}
# The tests run in the checkout: some compare the payload with the desktop
# source around it (the HOOKS baseline in etc/, the first-run user units and the
# default package lists, from omacom/omarchy-mac#582 and #598).
check() {
"$srcdir/omarchy-mac/packages/omarchy-mac/boot/test/all"
}
package() {
# Runtime-only, so the builder stages and tests the payload without the
# desktop or a boot chain. 1.39.0-2 is the first limine-mkinitcpio-hook that
# leaves a Mac's /boot to mkinitcpio until Limine is activated.
depends=('omarchy' 'limine' 'limine-mkinitcpio-hook>=1.39.0-2' 'limine-snapper-sync' 'asahi-scripts'
'bash' 'binutils' 'btrfs-progs' 'coreutils' 'cpio' 'cryptsetup' 'diffutils' 'gawk' 'gnupg' 'grep'
'gum' '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 file and the initramfs helpers an image
# may rewrite.
mapfile -t backup < <(cd "$pkgdir" && find etc usr/lib/omarchy/initcpio -type f | sort)
}