summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2022-05-15 12:37:51 -0400
committerMike Gilbert <floppym@gentoo.org>2022-05-15 18:10:07 -0400
commit110cffbf0a10a6dabe902eecb9c139663ad737af (patch)
tree6cf4a1f8b4463fdea95a662c284afb8b7c3f81a2
parentfuse: Add patch to allow building against glibc-2.34 (diff)
downloadgenkernel-110cffbf0a10a6dabe902eecb9c139663ad737af.tar.gz
genkernel-110cffbf0a10a6dabe902eecb9c139663ad737af.tar.bz2
genkernel-110cffbf0a10a6dabe902eecb9c139663ad737af.zip
gen_initramfs.sh: append devicemanager only for specific modules
dmraid luks lvm multipath Bug: https://bugs.gentoo.org/749957 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
-rwxr-xr-xgen_funcs.sh9
-rwxr-xr-xgen_initramfs.sh11
2 files changed, 16 insertions, 4 deletions
diff --git a/gen_funcs.sh b/gen_funcs.sh
index 500caf2d..db396e3e 100755
--- a/gen_funcs.sh
+++ b/gen_funcs.sh
@@ -22,6 +22,15 @@ isTrue() {
return 1
}
+anyTrue() {
+ local x
+ for x
+ do
+ isTrue "${x}" && return 0
+ done
+ return 1
+}
+
set_color_vars() {
if ! isTrue "${NOCOLOR}"
then
diff --git a/gen_initramfs.sh b/gen_initramfs.sh
index 4ec296ef..0b74f4c0 100755
--- a/gen_initramfs.sh
+++ b/gen_initramfs.sh
@@ -2007,11 +2007,14 @@ append_auxiliary() {
}
append_data() {
- local name=$1 var=$2
+ [ $# -eq 0 ] && gen_die "append_data() called with zero arguments"
+
+ local name=$1
local func="append_${name}"
- [ $# -eq 0 ] && gen_die "append_data() called with zero arguments"
- if [ $# -eq 1 ] || isTrue "${var}"
+ shift
+
+ if [ $# -eq 0 ] || anyTrue "$@"
then
print_info 1 "$(get_indent 1)>> Appending ${name} cpio data ..."
${func} || gen_die "${func}() failed!"
@@ -2037,7 +2040,7 @@ create_initramfs() {
append_data 'base_layout'
append_data 'util-linux'
append_data 'eudev'
- append_data 'devicemanager'
+ append_data 'devicemanager' "${DMRAID}" "${LVM}" "${LUKS}" "${MULTIPATH}"
append_data 'auxiliary' "${BUSYBOX}"
append_data 'busybox' "${BUSYBOX}"
append_data 'b2sum' "${B2SUM}"