From e83c8036e62dd66a01f444517694a286aa2ce8df Mon Sep 17 00:00:00 2001 From: Olivier MEDOC Date: Sun, 29 Jan 2017 15:10:33 +0100 Subject: [PATCH] archlinux: use dracut native file instead of our own --- archlinux/PKGBUILD | 9 +++--- archlinux/PKGBUILD-initcpio-hook.sh | 44 +------------------------- archlinux/PKGBUILD-initcpio-install.sh | 1 + 3 files changed, 7 insertions(+), 47 deletions(-) diff --git a/archlinux/PKGBUILD b/archlinux/PKGBUILD index 384cf90..0a99140 100644 --- a/archlinux/PKGBUILD +++ b/archlinux/PKGBUILD @@ -6,7 +6,7 @@ # Maintainer: Olivier Medoc pkgname=(qubes-vm-utils qubes-vm-kernel-support) pkgver=`cat version` -pkgrel=9 +pkgrel=10 epoch= pkgdesc="Common Linux files for Qubes VM." arch=("x86_64") @@ -26,12 +26,12 @@ changelog= source=(PKGBUILD-initcpio-hook.sh PKGBUILD-initcpio-install.sh) noextract=() -md5sums=(e88b50aed7d28087968da728ec1dc2b6 3d204b0d8acda9cf3ea5ebd5334a04d6) +md5sums=(SKIP) build() { -for source in qrexec-lib udev qmemman core kernel-modules Makefile; do +for source in qrexec-lib udev qmemman core kernel-modules Makefile dracut; do (ln -s $srcdir/../$source $srcdir/$source) done @@ -53,11 +53,12 @@ install=PKGBUILD-qubes-vm-kernel-support.install mkdir -p ${pkgdir}/usr/lib/initcpio/install/ mkdir -p ${pkgdir}/usr/lib/initcpio/hooks/ +mkdir -p ${pkgdir}/usr/lib/qubes/ mkdir -p ${pkgdir}/usr/bin/ install -m 611 ${srcdir}/PKGBUILD-initcpio-install.sh ${pkgdir}/usr/lib/initcpio/install/qubes install -m 611 ${srcdir}/PKGBUILD-initcpio-hook.sh ${pkgdir}/usr/lib/initcpio/hooks/qubes - +install -m 755 ${srcdir}/dracut/full-dmroot/qubes_cow_setup.sh ${pkgdir}/usr/lib/qubes/qubes_cow_setup.sh make install-u2mfn DESTDIR=$pkgdir -C kernel-modules } diff --git a/archlinux/PKGBUILD-initcpio-hook.sh b/archlinux/PKGBUILD-initcpio-hook.sh index 738b9dc..6713940 100644 --- a/archlinux/PKGBUILD-initcpio-hook.sh +++ b/archlinux/PKGBUILD-initcpio-hook.sh @@ -4,48 +4,6 @@ run_earlyhook() { msg "Starting Qubes copy on write setup script" - if ! grep -q 'root=[^ ]*dmroot' /proc/cmdline; then - warning "Qubes: dmroot not requested, probably not a Qubes VM" - exit 0 - fi + /usr/lib/qubes/qubes_cow_setup.sh - if [ -e /dev/mapper/dmroot ] ; then - die "Qubes: FATAL error: /dev/mapper/dmroot already exists?!" - fi - - modprobe xen-blkfront || warning "Qubes: Cannot load Xen Block Frontend..." - - msg "Qubes: Waiting for /dev/xvda* devices..." - while ! [ -e /dev/xvda ]; do sleep 0.1; done - msg "Qubes: /dev/xvda* found" - - SWAP_SIZE=$(( 1024 * 1024 * 2 )) # sectors, 1GB - - if [ `cat /sys/block/xvda/ro` = 1 ] ; then - msg "Qubes: Doing COW setup for AppVM..." - - while ! [ -e /dev/xvdc ]; do sleep 0.1; done - VOLATILE_SIZE=$(cat /sys/block/xvdc/size) # sectors - ROOT_SIZE=$(cat /sys/block/xvda/size) # sectors - if [ $VOLATILE_SIZE -lt $SWAP_SIZE ]; then - die "Qubes: volatile.img smaller than 1GB, cannot continue" - fi - sfdisk -q --unit S /dev/xvdc >/dev/null <