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.
66 lines
3.2 KiB
Bash
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)
|
|
}
|