omarchy-settings: keep the Limine and mkinitcpio drop-ins on aarch64
The aarch64 packages removed etc/mkinitcpio.conf.d and etc/limine-entry-tool.d wholesale. On an encrypted aarch64 install that boots with Limine (DGX Spark, Snapdragon X), installing the published package therefore drops omarchy_hooks.conf, HOOKS falls back to /etc/mkinitcpio.conf, and the next kernel update builds an initramfs with no encrypt hook: the machine hangs waiting for /dev/mapper/root with no prompt. Ship both drop-in directories on aarch64 and remove only thunderbolt_module.conf, whose module ARM kernels do not have. Keep the Limine template and the snapper notifier autostart for the same reason. The memory-stack removals (zram, oomd, zswap, USB autosuspend) are unchanged.
This commit is contained in:
1 parent
be95483566
commit
ccecdbde56
2 files changed
+35
-51
No files matched your search
@@ -6,10 +6,11 @@ _pkgver_base=4.0.0
|
||||
_pkgver_base_tag=v3.8.2
|
||||
pkgdesc='Omarchy user defaults, /etc/skel content, fonts, plymouth theme, and support helpers (quattro branch tip)'
|
||||
# Arch-specific because the shipped /etc tree is not the same on every
|
||||
# architecture: the Limine, mkinitcpio, zram and oomd drop-ins belong to the
|
||||
# x86_64 boot and memory stack and are left out of the aarch64 package (see
|
||||
# package()). makepkg only honours the arch-suffixed arrays below on
|
||||
# arch-specific packages.
|
||||
# architecture: the zram and oomd drop-ins belong to the x86_64 memory stack
|
||||
# and are left out of the aarch64 package (see package()). The Limine and
|
||||
# mkinitcpio drop-ins ship on both: UEFI aarch64 installs (DGX Spark,
|
||||
# Snapdragon X) boot with Limine and an encrypted root exactly like x86_64.
|
||||
# makepkg only honours the arch-suffixed arrays below on arch-specific packages.
|
||||
arch=('x86_64' 'aarch64')
|
||||
url='https://github.com/basecamp/omarchy'
|
||||
license=('MIT')
|
||||
@@ -68,14 +69,17 @@ backup=(
|
||||
'etc/udev/rules.d/99-omarchy-power-profile.rules'
|
||||
'etc/udev/rules.d/99-omarchy-wifi-powersave.rules'
|
||||
)
|
||||
# Boot configuration is backed up on both architectures.
|
||||
backup+=(
|
||||
'etc/mkinitcpio.conf.d/omarchy_hooks.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-defaults.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-uki.conf'
|
||||
)
|
||||
# backup has no arch-suffixed form, so the x86_64-only drop-ins join it here.
|
||||
# Each of these paths is removed from the aarch64 package in package().
|
||||
if [[ $CARCH == x86_64 ]]; then
|
||||
backup+=(
|
||||
'etc/mkinitcpio.conf.d/omarchy_hooks.conf'
|
||||
'etc/mkinitcpio.conf.d/thunderbolt_module.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-defaults.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-uki.conf'
|
||||
'etc/modprobe.d/omarchy-usb-autosuspend.conf'
|
||||
'etc/systemd/oomd.conf.d/10-omarchy.conf'
|
||||
'etc/systemd/zram-generator.conf'
|
||||
@@ -160,14 +164,6 @@ package() {
|
||||
install -d "$pkgdir/usr/share/omarchy/config"
|
||||
cp -a config/. "$pkgdir/usr/share/omarchy/config/"
|
||||
|
||||
# The Limine/Snapper notifier has nothing to notify about without the x86_64
|
||||
# boot stack; drop it from both seeds so aarch64 users don't autostart a
|
||||
# helper whose backing tool is not installed.
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
rm -f "$pkgdir/etc/skel/.config/autostart/limine-snapper-notify.desktop" \
|
||||
"$pkgdir/usr/share/omarchy/config/autostart/limine-snapper-notify.desktop"
|
||||
fi
|
||||
|
||||
# Package-owned defaults with real system/XDG locations. User config remains
|
||||
# higher priority: ~/.config/uwsm/default, ~/.config/uwsm/env.d,
|
||||
# ~/.config/environment.d, ~/.config/fontconfig, ~/.config/xdg-terminals.list,
|
||||
@@ -217,11 +213,12 @@ package() {
|
||||
install -d "$pkgdir/etc"
|
||||
cp -a etc/. "$pkgdir/etc/"
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
# The x86_64 boot stack's drop-ins must not ship on aarch64: mkinitcpio
|
||||
# reads every file under /etc/mkinitcpio.conf.d/, so omarchy_hooks.conf
|
||||
# would inject the Limine hooks into the Asahi kernel's initramfs, and the
|
||||
# Limine entry-tool config has no consumer without Limine.
|
||||
rm -rf "$pkgdir/etc/limine-entry-tool.d" "$pkgdir/etc/mkinitcpio.conf.d"
|
||||
# Keep omarchy_hooks.conf and the Limine entry-tool config: without them a
|
||||
# kernel update on an encrypted aarch64 install rebuilds an initramfs with
|
||||
# no encrypt hook and the machine cannot unlock its root. Only the
|
||||
# Thunderbolt module request is x86-specific; ARM kernels lack the module
|
||||
# and mkinitcpio treats a missing explicit module as an error.
|
||||
rm -f "$pkgdir/etc/mkinitcpio.conf.d/thunderbolt_module.conf"
|
||||
# Memory stack: no zram device or zswap on the aarch64 install, and
|
||||
# systemd-oomd is not enabled there, so the vm.* reclaim tuning written
|
||||
# for zram would be wrong for it. Keep only the network tuning.
|
||||
@@ -325,11 +322,6 @@ EOF
|
||||
# live root config.
|
||||
install -d "$pkgdir/usr/share/omarchy/default"
|
||||
cp -a default/. "$pkgdir/usr/share/omarchy/default/"
|
||||
# The Limine template is read by the x86_64 ISO orchestrator only.
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
rm -rf "$pkgdir/usr/share/omarchy/default/limine"
|
||||
fi
|
||||
|
||||
# Snapper config template used by the install-time `snapper create-config`.
|
||||
install -Dm644 default/snapper/root \
|
||||
"$pkgdir/etc/snapper/config-templates/omarchy"
|
||||
|
||||
@@ -13,13 +13,14 @@ pkgname='omarchy-settings'
|
||||
_tag='v4.0.3'
|
||||
_commit='0534987009061cbe2dacdde4ad564092ab698d12'
|
||||
pkgver=4.0.3
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc='Omarchy user defaults, /etc/skel content, fonts, plymouth theme, and support helpers'
|
||||
# Arch-specific because the shipped /etc tree is not the same on every
|
||||
# architecture: the Limine, mkinitcpio, zram and oomd drop-ins belong to the
|
||||
# x86_64 boot and memory stack and are left out of the aarch64 package (see
|
||||
# package()). makepkg only honours the arch-suffixed arrays below on
|
||||
# arch-specific packages.
|
||||
# architecture: the zram and oomd drop-ins belong to the x86_64 memory stack
|
||||
# and are left out of the aarch64 package (see package()). The Limine and
|
||||
# mkinitcpio drop-ins ship on both: UEFI aarch64 installs (DGX Spark,
|
||||
# Snapdragon X) boot with Limine and an encrypted root exactly like x86_64.
|
||||
# makepkg only honours the arch-suffixed arrays below on arch-specific packages.
|
||||
arch=('x86_64' 'aarch64')
|
||||
url='https://github.com/basecamp/omarchy'
|
||||
license=('MIT')
|
||||
@@ -77,14 +78,17 @@ backup=(
|
||||
'etc/udev/rules.d/99-omarchy-power-profile.rules'
|
||||
'etc/udev/rules.d/99-omarchy-wifi-powersave.rules'
|
||||
)
|
||||
# Boot configuration is backed up on both architectures.
|
||||
backup+=(
|
||||
'etc/mkinitcpio.conf.d/omarchy_hooks.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-defaults.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-uki.conf'
|
||||
)
|
||||
# backup has no arch-suffixed form, so the x86_64-only drop-ins join it here.
|
||||
# Each of these paths is removed from the aarch64 package in package().
|
||||
if [[ $CARCH == x86_64 ]]; then
|
||||
backup+=(
|
||||
'etc/mkinitcpio.conf.d/omarchy_hooks.conf'
|
||||
'etc/mkinitcpio.conf.d/thunderbolt_module.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-defaults.conf'
|
||||
'etc/limine-entry-tool.d/omarchy-uki.conf'
|
||||
'etc/modprobe.d/omarchy-usb-autosuspend.conf'
|
||||
'etc/systemd/oomd.conf.d/10-omarchy.conf'
|
||||
'etc/systemd/zram-generator.conf'
|
||||
@@ -155,14 +159,6 @@ package() {
|
||||
install -d "$pkgdir/usr/share/omarchy/config"
|
||||
cp -a config/. "$pkgdir/usr/share/omarchy/config/"
|
||||
|
||||
# The Limine/Snapper notifier has nothing to notify about without the x86_64
|
||||
# boot stack; drop it from both seeds so aarch64 users don't autostart a
|
||||
# helper whose backing tool is not installed.
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
rm -f "$pkgdir/etc/skel/.config/autostart/limine-snapper-notify.desktop" \
|
||||
"$pkgdir/usr/share/omarchy/config/autostart/limine-snapper-notify.desktop"
|
||||
fi
|
||||
|
||||
# Package-owned defaults with real system/XDG locations. User config remains
|
||||
# higher priority: ~/.config/uwsm/default, ~/.config/uwsm/env.d,
|
||||
# ~/.config/environment.d, ~/.config/fontconfig, ~/.config/xdg-terminals.list,
|
||||
@@ -215,11 +211,12 @@ package() {
|
||||
install -d "$pkgdir/etc"
|
||||
cp -a etc/. "$pkgdir/etc/"
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
# The x86_64 boot stack's drop-ins must not ship on aarch64: mkinitcpio
|
||||
# reads every file under /etc/mkinitcpio.conf.d/, so omarchy_hooks.conf
|
||||
# would inject the Limine hooks into the Asahi kernel's initramfs, and the
|
||||
# Limine entry-tool config has no consumer without Limine.
|
||||
rm -rf "$pkgdir/etc/limine-entry-tool.d" "$pkgdir/etc/mkinitcpio.conf.d"
|
||||
# Keep omarchy_hooks.conf and the Limine entry-tool config: without them a
|
||||
# kernel update on an encrypted aarch64 install rebuilds an initramfs with
|
||||
# no encrypt hook and the machine cannot unlock its root. Only the
|
||||
# Thunderbolt module request is x86-specific; ARM kernels lack the module
|
||||
# and mkinitcpio treats a missing explicit module as an error.
|
||||
rm -f "$pkgdir/etc/mkinitcpio.conf.d/thunderbolt_module.conf"
|
||||
# Memory stack: no zram device or zswap on the aarch64 install, and
|
||||
# systemd-oomd is not enabled there, so the vm.* reclaim tuning written
|
||||
# for zram would be wrong for it. Keep only the network tuning.
|
||||
@@ -323,11 +320,6 @@ EOF
|
||||
# live root config.
|
||||
install -d "$pkgdir/usr/share/omarchy/default"
|
||||
cp -a default/. "$pkgdir/usr/share/omarchy/default/"
|
||||
# The Limine template is read by the x86_64 ISO orchestrator only.
|
||||
if [[ $CARCH == aarch64 ]]; then
|
||||
rm -rf "$pkgdir/usr/share/omarchy/default/limine"
|
||||
fi
|
||||
|
||||
# Snapper config template used by the install-time `snapper create-config`.
|
||||
install -Dm644 default/snapper/root \
|
||||
"$pkgdir/etc/snapper/config-templates/omarchy"
|
||||
|
||||
Reference in new issue
Block a user