From 0cb070825cac251738b63b48b5fd30c3e5792da0 Mon Sep 17 00:00:00 2001 From: Saswat Padhi Date: Sun, 4 May 2025 23:48:10 -0700 Subject: [PATCH 1/2] Add gptfix and swapon to Arch Linux initramfs --- archlinux/PKGBUILD-initcpio-install.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/archlinux/PKGBUILD-initcpio-install.sh b/archlinux/PKGBUILD-initcpio-install.sh index 598052af..703b04ae 100644 --- a/archlinux/PKGBUILD-initcpio-install.sh +++ b/archlinux/PKGBUILD-initcpio-install.sh @@ -5,7 +5,9 @@ build() { add_module "xen-blkfront" add_binary "/usr/bin/sfdisk" add_binary "/usr/bin/mkswap" + add_binary "/usr/bin/swapon" add_binary "/usr/bin/dmsetup" + add_binary "/usr/bin/gptfix" add_binary "/usr/lib/qubes/qubes_cow_setup.sh" add_runscript From d1af3f7775933b3856affab6e811779841b2f742 Mon Sep 17 00:00:00 2001 From: Saswat Padhi Date: Sun, 25 May 2025 13:25:26 -0700 Subject: [PATCH 2/2] Fix the order of mkinitcpio hooks As documented on ArchWiki [1], the `lvm2` hook must appear after the `block` and before the `filesystems` hook. Otherwise, LVM might attempt to activate logical volumes before the underlying block devices are available. [1]: https://wiki.archlinux.org/title/Install_Arch_Linux_on_LVM#Adding_mkinitcpio_hooks --- archlinux/PKGBUILD-qubes-vm-kernel-support.install | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/archlinux/PKGBUILD-qubes-vm-kernel-support.install b/archlinux/PKGBUILD-qubes-vm-kernel-support.install index a70b6438..1afb8b41 100644 --- a/archlinux/PKGBUILD-qubes-vm-kernel-support.install +++ b/archlinux/PKGBUILD-qubes-vm-kernel-support.install @@ -22,7 +22,7 @@ $end" if [[ ! -s /etc/default/grub ]]; then echo >> /etc/default/grub fi - sed -Ei 's/^(HOOKS=[("])base/\1lvm2 qubes base/' /etc/mkinitcpio.conf + sed -Ei '/^HOOKS=/ s/(block)/\1 lvm2 qubes/' /etc/mkinitcpio.conf echo 'Adding qubes required hooks to /etc/default/grub' sed -Ei "/^$begin\$/,/^$end\$/{ \$c$combined @@ -41,7 +41,7 @@ post_upgrade () { post_remove () { local begin='### BEGIN QUBES HOOKS ###' end='### END QUBES HOOKS ###' echo 'Removing qubes required hooks from mkinitcpio.conf' - sed -Ei 's/^(HOOKS=[("])lvm2 qubes base/\1base/' /etc/mkinitcpio.conf + sed -Ei '/^HOOKS=/ s/(block) lvm2 qubes/\1/' /etc/mkinitcpio.conf echo 'Removing qubes required hooks from /etc/default/grub' sed -Ei "/^$begin\$/,/^$end\$/d" /etc/default/grub grub-mkconfig -o /boot/grub/grub.cfg