main now has omarchy-mac-pkgs#10: the boot check leaves device tree overlays out when /etc/default/update-m1n1 does not apply them (an owner's copy pacman kept over the .pacnew, or no file), instead of failing a correct boot.bin and stopping omarchy update. #9 is test-only. Same UTC commit date as 20261004-2, so pkgrel 3. omarchy-mac stays at 2a3ed89.
69 lines
3.4 KiB
Bash
69 lines
3.4 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 omarchy-mac-boot/ in omacom/omarchy-mac-pkgs.
|
|
|
|
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=20261004
|
|
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')
|
|
url='https://github.com/omacom/omarchy-mac-pkgs'
|
|
license=('MIT')
|
|
makedepends=('git')
|
|
# The device tree overlay tests run dtc, fdtoverlay and fdtget.
|
|
checkdepends=('dtc')
|
|
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-pkgs main commit, never a branch.
|
|
_commit=6bd123a6790e33e0ccb7ab09ac4eee7815c9a95b
|
|
source=("omarchy-mac-pkgs::git+https://github.com/omacom/omarchy-mac-pkgs.git#commit=${_commit}")
|
|
sha256sums=('6af86c533129815653377731516cf5411fdd4f40e217687a8113ae33fc42c19f')
|
|
|
|
prepare() {
|
|
# Tests and staging must not be able to read the other package's tree.
|
|
rm -rf "$srcdir/boot"
|
|
cp -a "$srcdir/omarchy-mac-pkgs/omarchy-mac-boot" "$srcdir/boot"
|
|
[[ $(git -C "$srcdir/omarchy-mac-pkgs" rev-parse HEAD) == "$_commit" ]]
|
|
[[ $(TZ=UTC0 git -C "$srcdir/omarchy-mac-pkgs" show -s --format=%cd --date=format-local:%Y%m%d HEAD) == "$pkgver" ]]
|
|
}
|
|
|
|
check() {
|
|
"$srcdir/boot/test/all"
|
|
}
|
|
|
|
package() {
|
|
# Runtime-only, so the builder stages and tests the payload without the
|
|
# desktop. 1.39.0-2 is the first limine-mkinitcpio-hook that leaves a Mac's
|
|
# /boot to mkinitcpio until Limine is activated. update-m1n1 builds stage 2
|
|
# from m1n1 and U-Boot, so neither can be removed; m1n1 is the virtual name,
|
|
# leaving its provider (m1n1-aurora) to the image, as the kernel is. First
|
|
# boot populates the Asahi repository's keyring.
|
|
depends=('omarchy' 'limine' 'limine-mkinitcpio-hook>=1.39.0-2' 'limine-snapper-sync' 'asahi-scripts'
|
|
'm1n1' 'uboot-asahi' 'asahi-alarm-keyring'
|
|
'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)
|
|
}
|