diff --git a/gnu/local.mk b/gnu/local.mk index 8d817379a7..27e57302ae 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1629,6 +1629,7 @@ dist_patch_DATA = \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \ %D%/packages/patches/libmemcached-build-with-gcc7.patch \ %D%/packages/patches/libmhash-hmac-fix-uaf.patch \ + %D%/packages/patches/lvm2-no-systemd.patch \ %D%/packages/patches/maturin-no-cross-compile.patch \ %D%/packages/patches/mecab-variable-param.patch \ %D%/packages/patches/memtest86+-build-reproducibly.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 7a9f357681..6abdb23958 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -4494,6 +4494,7 @@ one to send arbitrary keycodes when a given key is tapped or held.") (sha256 (base32 "0z6w6bknhwh1n3qfkb5ij6x57q3wjf28lq3l8kh7rkhsplinjnjc")) + (patches (search-patches "lvm2-no-systemd.patch")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/patches/lvm2-no-systemd.patch b/gnu/packages/patches/lvm2-no-systemd.patch new file mode 100644 index 0000000000..440559b96d --- /dev/null +++ b/gnu/packages/patches/lvm2-no-systemd.patch @@ -0,0 +1,20 @@ +Fixes . + +Run 'vgchange' directly instead of attempting to run it via 'systemd-run' as +the udev rules included in lvm2 >= 2.03.14 do. + +diff --git a/udev/69-dm-lvm.rules.in b/udev/69-dm-lvm.rules.in +index ff15681..f9e5b70 100644 +--- a/udev/69-dm-lvm.rules.in ++++ b/udev/69-dm-lvm.rules.in +@@ -75,8 +75,8 @@ LABEL="lvm_scan" + # TODO: adjust the output of vgchange -aay so that + # it's better suited to appearing in the journal. + +-IMPORT{program}="(LVM_EXEC)/lvm pvscan --cache --listvg --checkcomplete --vgonline --autoactivation event --udevoutput --journal=output $env{DEVNAME}" +-ENV{LVM_VG_NAME_COMPLETE}=="?*", RUN+="(SYSTEMDRUN) --no-block --property DefaultDependencies=no --unit lvm-activate-$env{LVM_VG_NAME_COMPLETE} (LVM_EXEC)/lvm vgchange -aay --autoactivation event $env{LVM_VG_NAME_COMPLETE}" ++IMPORT{program}="(LVM_EXEC)/lvm pvscan --cache --listvg ++ENV{LVM_VG_NAME_COMPLETE}=="?*", RUN+="(SYSTEMDRUN) --no-block lvm-activate-$env{LVM_VG_NAME_COMPLETE} (LVM_EXEC)/lvm vgchange -aay + GOTO="lvm_end" + + LABEL="lvm_end"