diff --git a/archlinux/PKGBUILD-initcpio-hook.sh b/archlinux/PKGBUILD-initcpio-hook.sh index 67139406..bcc55dc6 100644 --- a/archlinux/PKGBUILD-initcpio-hook.sh +++ b/archlinux/PKGBUILD-initcpio-hook.sh @@ -4,6 +4,7 @@ run_earlyhook() { msg "Starting Qubes copy on write setup script" + /usr/lib/qubes/scrub_pages.sh /usr/lib/qubes/qubes_cow_setup.sh -} \ No newline at end of file +} diff --git a/archlinux/PKGBUILD-initcpio-install.sh b/archlinux/PKGBUILD-initcpio-install.sh index 598052af..6fcc5c55 100644 --- a/archlinux/PKGBUILD-initcpio-install.sh +++ b/archlinux/PKGBUILD-initcpio-install.sh @@ -5,11 +5,20 @@ 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/scrub_pages.sh" add_binary "/usr/lib/qubes/qubes_cow_setup.sh" + + map add_module \ + 'dm-mod' \ + 'dm-snapshot' add_runscript - + + # Mark it's safe to add scrub_pages=0 to the kernel cmdline now + echo 1 > /var/lib/qubes/initramfs-updated } help() { diff --git a/archlinux/PKGBUILD-qubes-vm-kernel-support.install b/archlinux/PKGBUILD-qubes-vm-kernel-support.install index a70b6438..f99ac641 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 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 diff --git a/archlinux/PKGBUILD.in b/archlinux/PKGBUILD.in index 00d66332..bc92596b 100644 --- a/archlinux/PKGBUILD.in +++ b/archlinux/PKGBUILD.in @@ -61,6 +61,7 @@ package_qubes-vm-kernel-support() { install -m 611 "${srcdir}/${_pkgnvr}/archlinux/PKGBUILD-initcpio-install.sh" "${pkgdir}/usr/lib/initcpio/install/qubes" install -m 611 "${srcdir}/${_pkgnvr}/archlinux/PKGBUILD-initcpio-hook.sh" "${pkgdir}/usr/lib/initcpio/hooks/qubes" install -m 755 "${srcdir}/${_pkgnvr}/dracut/full-dmroot/qubes_cow_setup.sh" "${pkgdir}/usr/lib/qubes/qubes_cow_setup.sh" + install -m 755 "${srcdir}/${_pkgnvr}/dracut/xen-balloon-scrub-pages/scrub_pages.sh" "${pkgdir}/usr/lib/qubes/scrub_pages.sh" install -m 0644 "${srcdir}/${_pkgnvr}/grub/grub.qubes-kernel-vm-support" "${pkgdir}/etc/default/grub.qubes-kernel-vm-support" make install-gptfix SBINDIR=/usr/bin "DESTDIR=$pkgdir" } diff --git a/rpm_spec/qubes-utils.spec.in b/rpm_spec/qubes-utils.spec.in index 7e16c80a..a6eb2134 100644 --- a/rpm_spec/qubes-utils.spec.in +++ b/rpm_spec/qubes-utils.spec.in @@ -14,7 +14,11 @@ Requires: GraphicsMagick Requires: python%{python3_pkgversion}-qubesimgconverter Requires: (%{name}-selinux if selinux-policy) %{?systemd_requires} +%if 0%{?is_opensuse} +BuildRequires: (systemd or systemd-mini) +%else BuildRequires: systemd +%endif BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python3-rpm-macros # for meminfo-writer @@ -144,7 +148,7 @@ rm -rf $RPM_BUILD_ROOT %{python3_sitelib}/qubesimgconverter/imggen.py %{python3_sitelib}/qubesimgconverter/test.py %{python3_sitelib}/qubesimgconverter/test_integ.py -%{python3_sitelib}/qubesimgconverter-%{version}-py?.[0-9]*.egg-info +%{python3_sitelib}/qubesimgconverter-*.egg-info %{python3_sitelib}/qubesimgconverter/__pycache__ %files libs