From b3dfe76019f593880f94c8cd9a40da457a6244fb Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Wed, 29 Nov 2017 10:48:41 +0100 Subject: [PATCH] dracut - 046-33 - git snapshot --- 0019.patch | 1 + 0020.patch | 81 ++++++++++++++++++++------------------ 0021.patch | 23 +++++++++++ 0023.patch | 24 ++++++++++++ 0024.patch | 25 ++++++++++++ 0025.patch | 36 +++++++++++++++++ 0026.patch | 25 ++++++++++++ 0027.patch | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 0028.patch | 33 ++++++++++++++++ 0029.patch | 31 +++++++++++++++ 0030.patch | 27 +++++++++++++ 0031.patch | 24 ++++++++++++ 0032.patch | 33 ++++++++++++++++ 0033.patch | 58 ++++++++++++++++++++++++++++ 0034.patch | 64 ++++++++++++++++++++++++++++++ dracut.spec | 18 ++++++++- 16 files changed, 573 insertions(+), 39 deletions(-) create mode 100644 0021.patch create mode 100644 0023.patch create mode 100644 0024.patch create mode 100644 0025.patch create mode 100644 0026.patch create mode 100644 0027.patch create mode 100644 0028.patch create mode 100644 0029.patch create mode 100644 0030.patch create mode 100644 0031.patch create mode 100644 0032.patch create mode 100644 0033.patch create mode 100644 0034.patch diff --git a/0019.patch b/0019.patch index 7b31c78..429a045 100644 --- a/0019.patch +++ b/0019.patch @@ -24,3 +24,4 @@ index 5ad0f464..995d983e 100755 outfile="/boot/${MACHINE_ID}/$kernel/initrd" else outfile="/boot/initramfs-$kernel.img" + diff --git a/0020.patch b/0020.patch index 6e54cfe..3cfdd0b 100644 --- a/0020.patch +++ b/0020.patch @@ -1,42 +1,47 @@ -From 82651e9ef3c4c799281ba006f6ef46902e13086f Mon Sep 17 00:00:00 2001 -From: Peter Robinson -Date: Thu, 12 Oct 2017 12:17:41 +0100 -Subject: [PATCH] Add rpmsg, hwspinlock and usb/misc for ARM +From 04fa94987767a035ebcf7a4bb46f1356e709d9e8 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Tue, 10 Oct 2017 13:29:41 +0200 +Subject: [PATCH] Merge pull request #284 from sm00th/kmoddir -Some of the more complex devices now need rpmsg and hwspinlock in the early boot -process to start, and these to the initrd, and pull in usb/misc because -apparently non standard usb hubs are a thing. - -Signed-off-by: Peter Robinson +dracut-install: fix relative paths in --kerneldir --- - modules.d/90kernel-modules/module-setup.sh | 3 +++ - 1 file changed, 3 insertions(+) + install/dracut-install.c | 15 ++++++++------- + 1 file changed, 8 insertions(+), 7 deletions(-) -diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh -index c6405e95..076f1e8a 100755 ---- a/modules.d/90kernel-modules/module-setup.sh -+++ b/modules.d/90kernel-modules/module-setup.sh -@@ -32,17 +32,20 @@ installkernel() { - "=drivers/clk" \ - "=drivers/dma" \ - "=drivers/extcon" \ -+ "=drivers/hwspinlock" \ - "=drivers/i2c/busses" \ - "=drivers/mfd" \ - "=drivers/phy" \ - "=drivers/power" \ - "=drivers/regulator" \ -+ "=drivers/rpmsg" \ - "=drivers/rtc" \ - "=drivers/soc" \ - "=drivers/usb/chipidea" \ - "=drivers/usb/dwc2" \ - "=drivers/usb/dwc3" \ - "=drivers/usb/host" \ -+ "=drivers/usb/misc" \ - "=drivers/usb/musb" \ - "=drivers/usb/phy" \ - "=drivers/scsi/hisi_sas" \ --- -2.14.2 +diff --git a/install/dracut-install.c b/install/dracut-install.c +index 2c20b491..95425e8d 100644 +--- a/install/dracut-install.c ++++ b/install/dracut-install.c +@@ -933,13 +933,6 @@ static int parse_argv(int argc, char *argv[]) + break; + case ARG_KERNELDIR: + kerneldir = strdup(optarg); +- if ((strncmp("/lib/modules/", kerneldir, 13) != 0) +- && (strncmp("/usr/lib/modules/", kerneldir, 17) != 0)) { +- char *p; +- p = strstr(kerneldir, "/lib/modules/"); +- if (p != NULL) +- kerneldirlen = p - kerneldir; +- } + break; + case ARG_FIRMWAREDIRS: + firmwaredirs = strv_split(optarg, ":"); +@@ -1399,9 +1392,17 @@ static int install_modules(int argc, char **argv) + struct kmod_module *mod = NULL, *mod_o = NULL; + + const char *modname = NULL; ++ char *abskpath = NULL; ++ char *p; + int i; + + ctx = kmod_new(kerneldir, NULL); ++ abskpath = kmod_get_dirname(ctx); ++ ++ p = strstr(abskpath, "/lib/modules/"); ++ if (p != NULL) ++ kerneldirlen = p - abskpath; ++ + if (arg_hostonly) { + char *modalias_file; + modalias_file = getenv("DRACUT_KERNEL_MODALIASES"); diff --git a/0021.patch b/0021.patch new file mode 100644 index 0000000..b46d6c8 --- /dev/null +++ b/0021.patch @@ -0,0 +1,23 @@ +From 2c9bcac1136c6a18aedcdcdac5789ccf5cd18492 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Tue, 10 Oct 2017 13:39:17 +0200 +Subject: [PATCH] dracut-install: char* -> const char* + +--- + install/dracut-install.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/install/dracut-install.c b/install/dracut-install.c +index 95425e8d..82e882cc 100644 +--- a/install/dracut-install.c ++++ b/install/dracut-install.c +@@ -1392,7 +1392,7 @@ static int install_modules(int argc, char **argv) + struct kmod_module *mod = NULL, *mod_o = NULL; + + const char *modname = NULL; +- char *abskpath = NULL; ++ const char *abskpath = NULL; + char *p; + int i; + + diff --git a/0023.patch b/0023.patch new file mode 100644 index 0000000..64f5d08 --- /dev/null +++ b/0023.patch @@ -0,0 +1,24 @@ +From faabcb23602673f87ec60965b3ff615004371603 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Wed, 11 Oct 2017 15:28:20 +0200 +Subject: [PATCH] dracut.sh: quote sync file argument + +--- + dracut.sh | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/dracut.sh b/dracut.sh +index 995d983e..990700af 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -1823,8 +1823,7 @@ fi + + command -v restorecon &>/dev/null && restorecon -- "$outfile" + +-sync $outfile 2> /dev/null +-if [ $? -ne 0 ] ; then ++if ! sync "$outfile" 2> /dev/null; then + dinfo "dracut: sync operartion on newly created initramfs $outfile failed" + exit 1 + fi + diff --git a/0024.patch b/0024.patch new file mode 100644 index 0000000..815e4d3 --- /dev/null +++ b/0024.patch @@ -0,0 +1,25 @@ +From 6bc8fbda610c6ce0a7c20242ff7ed811cdced89d Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Thu, 12 Oct 2017 11:23:38 +0200 +Subject: [PATCH] Merge pull request #223 from + bmr-cymru/bmr-ignore-activation-skip + +lvm_scan.sh: use -K when calling lvchange +--- + modules.d/90lvm/lvm_scan.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/90lvm/lvm_scan.sh b/modules.d/90lvm/lvm_scan.sh +index 8bf08641..61a18b24 100755 +--- a/modules.d/90lvm/lvm_scan.sh ++++ b/modules.d/90lvm/lvm_scan.sh +@@ -114,7 +114,7 @@ if [ -n "$LVS" ] ; then + info "Scanning devices $lvmdevs for LVM logical volumes $LVS" + lvm lvscan $lvm_ignorelockingfailure 2>&1 | vinfo + for LV in $LVS; do +- lvm lvchange --yes -ay $lvm_quirk_args $LV 2>&1 | vinfo ++ lvm lvchange --yes -K -ay $lvm_quirk_args $LV 2>&1 | vinfo + done + fi + + diff --git a/0025.patch b/0025.patch new file mode 100644 index 0000000..f2b1583 --- /dev/null +++ b/0025.patch @@ -0,0 +1,36 @@ +From 4b758ebe2288e594a1f522334192e5d8fa1f96af Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Thu, 12 Oct 2017 13:32:00 +0200 +Subject: [PATCH] Merge pull request #294 from nullr0ute/arm-fixes + +Add rpmsg, hwspinlock and usb/misc for ARM +--- + modules.d/90kernel-modules/module-setup.sh | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh +index c6405e95..076f1e8a 100755 +--- a/modules.d/90kernel-modules/module-setup.sh ++++ b/modules.d/90kernel-modules/module-setup.sh +@@ -32,17 +32,20 @@ installkernel() { + "=drivers/clk" \ + "=drivers/dma" \ + "=drivers/extcon" \ ++ "=drivers/hwspinlock" \ + "=drivers/i2c/busses" \ + "=drivers/mfd" \ + "=drivers/phy" \ + "=drivers/power" \ + "=drivers/regulator" \ ++ "=drivers/rpmsg" \ + "=drivers/rtc" \ + "=drivers/soc" \ + "=drivers/usb/chipidea" \ + "=drivers/usb/dwc2" \ + "=drivers/usb/dwc3" \ + "=drivers/usb/host" \ ++ "=drivers/usb/misc" \ + "=drivers/usb/musb" \ + "=drivers/usb/phy" \ + "=drivers/scsi/hisi_sas" \ + diff --git a/0026.patch b/0026.patch new file mode 100644 index 0000000..7a37d97 --- /dev/null +++ b/0026.patch @@ -0,0 +1,25 @@ +From 1751bacda1b705f60e6ded9862d21b5bda127482 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Mon, 23 Oct 2017 10:23:42 +0200 +Subject: [PATCH] Merge pull request #296 from + dracut-mailing-devs/20170303132146.4968-1-crrodriguez@opensuse.org + +systemd 233 requires sha256, hmac and algif_hash modules +--- + modules.d/00systemd/module-setup.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh +index 23d39bbe..d022de65 100755 +--- a/modules.d/00systemd/module-setup.sh ++++ b/modules.d/00systemd/module-setup.sh +@@ -18,7 +18,7 @@ depends() { + } + + installkernel() { +- hostonly='' instmods autofs4 ipv6 ++ hostonly='' instmods autofs4 ipv6 algif_hash hmac sha256 + instmods -s efivarfs + } + + diff --git a/0027.patch b/0027.patch new file mode 100644 index 0000000..97bb510 --- /dev/null +++ b/0027.patch @@ -0,0 +1,109 @@ +From 21789cbb0a6d103176a2e10c9dd456cdcdcb4b94 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Wed, 25 Oct 2017 12:53:47 +0200 +Subject: [PATCH] make qemu and qemu-net a default module in non-hostonly mode + +--- + modules.d/90qemu-net/module-setup.sh | 31 ++++++++++++++++-------------- + modules.d/90qemu/module-setup.sh | 37 ++++++++++++++++++++---------------- + 2 files changed, 38 insertions(+), 30 deletions(-) + +diff --git a/modules.d/90qemu-net/module-setup.sh b/modules.d/90qemu-net/module-setup.sh +index 58f12339..121e83df 100755 +--- a/modules.d/90qemu-net/module-setup.sh ++++ b/modules.d/90qemu-net/module-setup.sh +@@ -2,22 +2,25 @@ + + # called by dracut + check() { +- if type -P systemd-detect-virt >/dev/null 2>&1; then +- vm=$(systemd-detect-virt --vm >/dev/null 2>&1) +- (($? != 0)) && return 255 +- [[ $vm = "qemu" ]] && return 0 +- [[ $vm = "kvm" ]] && return 0 +- [[ $vm = "bochs" ]] && return 0 +- fi ++ if [[ $hostonly ]] || [[ $mount_needs ]]; then ++ if type -P systemd-detect-virt >/dev/null 2>&1; then ++ vm=$(systemd-detect-virt --vm >/dev/null 2>&1) ++ (($? != 0)) && return 255 ++ [[ $vm = "qemu" ]] && return 0 ++ [[ $vm = "kvm" ]] && return 0 ++ [[ $vm = "bochs" ]] && return 0 ++ fi + +- for i in /sys/class/dmi/id/*_vendor; do +- [[ -f $i ]] || continue +- read vendor < $i +- [[ "$vendor" == "QEMU" ]] && return 0 +- [[ "$vendor" == "Bochs" ]] && return 0 +- done ++ for i in /sys/class/dmi/id/*_vendor; do ++ [[ -f $i ]] || continue ++ read vendor < $i ++ [[ "$vendor" == "QEMU" ]] && return 0 ++ [[ "$vendor" == "Bochs" ]] && return 0 ++ done + +- return 255 ++ return 255 ++ fi ++ return 0 + } + + # called by dracut +diff --git a/modules.d/90qemu/module-setup.sh b/modules.d/90qemu/module-setup.sh +index 9f8495a6..7e5ea6a4 100755 +--- a/modules.d/90qemu/module-setup.sh ++++ b/modules.d/90qemu/module-setup.sh +@@ -2,28 +2,33 @@ + + # called by dracut + check() { +- if type -P systemd-detect-virt >/dev/null 2>&1; then +- vm=$(systemd-detect-virt --vm 2>/dev/null) +- (($? != 0)) && return 255 +- [[ $vm = "qemu" ]] && return 0 +- [[ $vm = "kvm" ]] && return 0 +- [[ $vm = "bochs" ]] && return 0 ++ if [[ $hostonly ]] || [[ $mount_needs ]]; then ++ if type -P systemd-detect-virt >/dev/null 2>&1; then ++ vm=$(systemd-detect-virt --vm 2>/dev/null) ++ (($? != 0)) && return 255 ++ [[ $vm = "qemu" ]] && return 0 ++ [[ $vm = "kvm" ]] && return 0 ++ [[ $vm = "bochs" ]] && return 0 ++ fi ++ ++ for i in /sys/class/dmi/id/*_vendor; do ++ [[ -f $i ]] || continue ++ read vendor < $i ++ [[ "$vendor" == "QEMU" ]] && return 0 ++ [[ "$vendor" == "Red Hat" ]] && return 0 ++ [[ "$vendor" == "Bochs" ]] && return 0 ++ done ++ ++ return 255 + fi + +- for i in /sys/class/dmi/id/*_vendor; do +- [[ -f $i ]] || continue +- read vendor < $i +- [[ "$vendor" == "QEMU" ]] && return 0 +- [[ "$vendor" == "Red Hat" ]] && return 0 +- [[ "$vendor" == "Bochs" ]] && return 0 +- done +- return 255 ++ return 0 + } + + # called by dracut + installkernel() { +- # qemu specific modules +- hostonly='' instmods \ ++ # qemu specific modules ++ hostonly='' instmods \ + ata_piix ata_generic pata_acpi cdrom sr_mod ahci \ + virtio_blk virtio virtio_ring virtio_pci \ + virtio_scsi virtio_console virtio_rng \ + diff --git a/0028.patch b/0028.patch new file mode 100644 index 0000000..d367a3a --- /dev/null +++ b/0028.patch @@ -0,0 +1,33 @@ +From e190224345f3a8b2f9e85d84bc879dd96bf265da Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Thu, 26 Oct 2017 09:08:28 +0200 +Subject: [PATCH] lsinitrd.sh: dismiss "cat" error messages + +nobody wants to see "cat: broken pipe" +--- + lsinitrd.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lsinitrd.sh b/lsinitrd.sh +index f4088453..f3f727c8 100755 +--- a/lsinitrd.sh ++++ b/lsinitrd.sh +@@ -172,7 +172,7 @@ fi + read -N 6 bin < "$image" + case $bin in + $'\x71\xc7'*|070701) +- CAT="cat --" ++ CAT="cat 2>/dev/null --" + is_early=$(cpio --extract --verbose --quiet --to-stdout -- 'early_cpio' < "$image" 2>/dev/null) + if [[ "$is_early" ]]; then + if [[ -n "$unpackearly" ]]; then +@@ -211,7 +211,7 @@ case $bin in + CAT="bzcat --" + ;; + $'\x71\xc7'*|070701) +- CAT="cat --" ++ CAT="cat 2>/dev/null --" + ;; + $'\x02\x21'*) + CAT="lz4 -d -c" + diff --git a/0029.patch b/0029.patch new file mode 100644 index 0000000..c5fe4a8 --- /dev/null +++ b/0029.patch @@ -0,0 +1,31 @@ +From ed9281d6d13b6250e3f12408366fca46bc3384ce Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Thu, 26 Oct 2017 09:31:27 +0200 +Subject: [PATCH] dracut.sh: after doing the lazy resolve always install + dependencies + +Exit the lazy resolving mode after doing the lazy resolve, because there +won't be any lazy resolving anymore after this step. + +Fixes https://github.com/dracutdevs/dracut/issues/152 +Obsoletes https://github.com/dracutdevs/dracut/pull/225 +--- + dracut.sh | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/dracut.sh b/dracut.sh +index 990700af..635fdb1c 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -1544,6 +1544,10 @@ if [[ $kernel_only != yes ]]; then + dinfo "*** Resolving executable dependencies done***" + fi + ++ # Now we are done with lazy resolving, always install dependencies ++ unset DRACUT_RESOLVE_LAZY ++ export DRACUT_RESOLVE_DEPS=1 ++ + # libpthread workaround: pthread_cancel wants to dlopen libgcc_s.so + for _dir in $libdirs; do + for _f in "$_dir/libpthread.so"*; do + diff --git a/0030.patch b/0030.patch new file mode 100644 index 0000000..788dcd8 --- /dev/null +++ b/0030.patch @@ -0,0 +1,27 @@ +From d976e193256407b7839b02cb888ea95a8d442180 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Fri, 27 Oct 2017 09:10:22 +0200 +Subject: [PATCH] Merge pull request #298 from derekhiggins/master + +Skip iscsi attachment if no info +--- + modules.d/95iscsi/iscsiroot.sh | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh +index 379cc296..aefd263d 100755 +--- a/modules.d/95iscsi/iscsiroot.sh ++++ b/modules.d/95iscsi/iscsiroot.sh +@@ -44,8 +44,9 @@ fi + handle_firmware() + { + if ! iscsistart -f; then +- warn "iscistart: Could not get list of targets from firmware." +- return 1 ++ warn "iscistart: Could not get list of targets from firmware. Skipping." ++ echo 'skipped' > "/tmp/iscsistarted-firmware" ++ return 0 + fi + + for p in $(getargs rd.iscsi.param -d iscsi_param); do + diff --git a/0031.patch b/0031.patch new file mode 100644 index 0000000..afae8b5 --- /dev/null +++ b/0031.patch @@ -0,0 +1,24 @@ +From f9042fd83980dc88d6545512da5ea36e397907ae Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Fri, 3 Nov 2017 09:15:02 +0100 +Subject: [PATCH] Merge pull request #302 from keszybz/yet-another-timeout-fix + +dmsquash-generator.sh: properly escape backslash in path +--- + modules.d/90dmsquash-live/dmsquash-generator.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/90dmsquash-live/dmsquash-generator.sh b/modules.d/90dmsquash-live/dmsquash-generator.sh +index d47cf14a..fe190012 100755 +--- a/modules.d/90dmsquash-live/dmsquash-generator.sh ++++ b/modules.d/90dmsquash-live/dmsquash-generator.sh +@@ -70,7 +70,7 @@ ROOTFLAGS="$(getarg rootflags)" + else + echo "What=/dev/mapper/live-rw" + [ -n "$ROOTFLAGS" ] && echo "Options=${ROOTFLAGS}" +- _dev=dev-mapper-live\x2drw ++ _dev=$'dev-mapper-live\\x2drw' + fi + } > "$GENERATOR_DIR"/sysroot.mount + + diff --git a/0032.patch b/0032.patch new file mode 100644 index 0000000..b19911a --- /dev/null +++ b/0032.patch @@ -0,0 +1,33 @@ +From 18a5011ff2465b7923db907100f0f59f01908c4e Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Fri, 3 Nov 2017 09:16:45 +0100 +Subject: [PATCH] Revert "lsinitrd.sh: dismiss "cat" error messages" + +This reverts commit e190224345f3a8b2f9e85d84bc879dd96bf265da. +--- + lsinitrd.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lsinitrd.sh b/lsinitrd.sh +index f3f727c8..f4088453 100755 +--- a/lsinitrd.sh ++++ b/lsinitrd.sh +@@ -172,7 +172,7 @@ fi + read -N 6 bin < "$image" + case $bin in + $'\x71\xc7'*|070701) +- CAT="cat 2>/dev/null --" ++ CAT="cat --" + is_early=$(cpio --extract --verbose --quiet --to-stdout -- 'early_cpio' < "$image" 2>/dev/null) + if [[ "$is_early" ]]; then + if [[ -n "$unpackearly" ]]; then +@@ -211,7 +211,7 @@ case $bin in + CAT="bzcat --" + ;; + $'\x71\xc7'*|070701) +- CAT="cat 2>/dev/null --" ++ CAT="cat --" + ;; + $'\x02\x21'*) + CAT="lz4 -d -c" + diff --git a/0033.patch b/0033.patch new file mode 100644 index 0000000..d1bfac2 --- /dev/null +++ b/0033.patch @@ -0,0 +1,58 @@ +From 11b3d60f5c20136530c3afe78d9a1a1160e021f2 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Mon, 6 Nov 2017 09:55:54 +0100 +Subject: [PATCH] Merge pull request #303 from FGrose/bootmsg + +dmsquash-live-root: Replace incompatible shell syntax. +--- + modules.d/90dmsquash-live/dmsquash-live-root.sh | 29 +++++++++++-------------- + 1 file changed, 13 insertions(+), 16 deletions(-) + +diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh +index 723d7f01..1458329c 100755 +--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh ++++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh +@@ -178,29 +178,26 @@ do_live_overlay() { + warn "Using temporary overlay." + elif [ -n "$devspec" -a -n "$pathspec" ]; then + [ -z "$m" ] && +- m=' Unable to find a persistent overlay; using a temporary one.' +- m=($'\n' "$m" $'\n' +- ' All root filesystem changes will be lost on shutdown.' +- $'\n' ' Press any key to continue') +- echo -e "\n\n\n${m[*]}\n\n\n" > /dev/kmsg ++ m=' Unable to find a persistent overlay; using a temporary one.' ++ m="$m"$'\n All root filesystem changes will be lost on shutdown.' ++ m="$m"$'\n Press [Enter] to continue.' ++ echo -e "\n\n\n\n${m}\n\n\n" > /dev/kmsg + if [ -n "$DRACUT_SYSTEMD" ]; then +- if plymouth --ping ; then ++ if type plymouth >/dev/null 2>&1 && plymouth --ping ; then + if getargbool 0 rhgb || getargbool 0 splash ; then +- m[0]='>>>'$'\n''>>>'$'\n''>>>'$'\n\n' +- m[5]=$'\n''<<<'$'\n''<<<'$'\n''<<<' +- plymouth display-message --text="${m[*]}" ++ m='>>>'$'\n''>>>'$'\n''>>>'$'\n\n\n'"$m" ++ m="${m%n.*}"$'n.\n\n\n''<<<'$'\n''<<<'$'\n''<<<' ++ plymouth display-message --text="${m}" + else +- plymouth ask-question --prompt="${m[*]}" --command=true ++ plymouth ask-question --prompt="${m}" --command=true + fi + else +- m[0]='>>>' +- m[5]='<<<' +- unset -v m[2] m[4] +- systemd-ask-password --timeout=0 "${m[*]}" ++ m=">>>${m//.[[:space:]]/.} <<<" ++ systemd-ask-password --timeout=0 "${m}" + fi + else +- plymouth --ping && plymouth --quit +- read -s -r -p $'\n\n'"${m[*]}:" -n 1 reply ++ type plymouth >/dev/null 2>&1 && plymouth --ping && plymouth --quit ++ read -s -r -p $'\n\n'"${m}" -n 1 reply + fi + fi + if [ -n "$overlayfs" ]; then + diff --git a/0034.patch b/0034.patch new file mode 100644 index 0000000..0080062 --- /dev/null +++ b/0034.patch @@ -0,0 +1,64 @@ +From 1ec2e34adcec7ee17fbf5e0410fd21cd1f2c9e27 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Mon, 6 Nov 2017 09:56:13 +0100 +Subject: [PATCH] Merge pull request #300 from danimo/pick_all_matching_keymaps + +10i18n: Load all keymaps for a given locale +--- + modules.d/10i18n/module-setup.sh | 35 ++++++++++++++++++++--------------- + 1 file changed, 20 insertions(+), 15 deletions(-) + +diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh +index 62babb2b..7723f6fa 100755 +--- a/modules.d/10i18n/module-setup.sh ++++ b/modules.d/10i18n/module-setup.sh +@@ -29,21 +29,24 @@ install() { + + # This is from 10redhat-i18n. + findkeymap () { +- local MAP=$1 ++ local MAPS=$1 + local MAPNAME=${1%.map*} +- [[ ! -f $MAP ]] && \ +- MAP=$(find ${kbddir}/keymaps -type f -name ${MAPNAME} -o -name ${MAPNAME}.map -o -name ${MAPNAME}.map.\* | head -n1) +- [[ " $KEYMAPS " = *" $MAP "* ]] && return +- KEYMAPS="$KEYMAPS $MAP" +- case $MAP in +- *.gz) cmd=zgrep;; +- *.bz2) cmd=bzgrep;; +- *) cmd=grep ;; +- esac +- +- for INCL in $($cmd "^include " $MAP | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do +- for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do +- findkeymap $FN ++ local map ++ [[ ! -f $MAPS ]] && \ ++ MAPS=$(find ${kbddir}/keymaps -type f -name ${MAPNAME} -o -name ${MAPNAME}.map -o -name ${MAPNAME}.map.\*) ++ ++ for map in $MAPS; do ++ KEYMAPS="$KEYMAPS $map" ++ case $map in ++ *.gz) cmd=zgrep;; ++ *.bz2) cmd=bzgrep;; ++ *) cmd=grep ;; ++ esac ++ ++ for INCL in $($cmd "^include " $map | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do ++ for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do ++ findkeymap $FN ++ done + done + done + } +@@ -191,7 +194,9 @@ install() { + findkeymap ${map} + done + +- inst_opt_decompress ${KEYMAPS} ++ for keymap in ${KEYMAPS}; do ++ inst_opt_decompress ${keymap} ++ done + + inst_opt_decompress ${kbddir}/consolefonts/${DEFAULT_FONT}.* + diff --git a/dracut.spec b/dracut.spec index bd91902..02a7381 100644 --- a/dracut.spec +++ b/dracut.spec @@ -14,7 +14,7 @@ %define with_nbd 0 %endif -%define dist_free_release 20.git20171010 +%define dist_free_release 33.git20171127 Name: dracut Version: 046 @@ -56,6 +56,19 @@ Patch16: 0017.patch Patch17: 0018.patch Patch18: 0019.patch Patch19: 0020.patch +Patch20: 0021.patch +Patch21: 0023.patch +Patch22: 0024.patch +Patch23: 0025.patch +Patch24: 0026.patch +Patch25: 0027.patch +Patch26: 0028.patch +Patch27: 0029.patch +Patch28: 0030.patch +Patch29: 0031.patch +Patch30: 0032.patch +Patch31: 0033.patch +Patch32: 0034.patch Source1: https://www.gnu.org/licenses/lgpl-2.1.txt @@ -535,6 +548,9 @@ rm -rf -- $RPM_BUILD_ROOT %endif %changelog +* Wed Nov 29 2017 Harald Hoyer - 046-33 +- git snapshot + * Thu Oct 12 2017 Peter Robinson 046-20 - Add fix for some ARM SBCs