Harald Hoyer 460d2c
From cfd872392c59c96665c558899880d6b2980065bb Mon Sep 17 00:00:00 2001
Harald Hoyer 460d2c
From: Kairui Song <kasong@redhat.com>
Harald Hoyer 460d2c
Date: Mon, 8 Jun 2020 17:00:00 +0800
Harald Hoyer 460d2c
Subject: [PATCH] 99squash: improve pre-requirements check
Harald Hoyer 460d2c
Harald Hoyer 460d2c
Check for systemd-initrd and squashfs-tools in check() to fail early if
Harald Hoyer 460d2c
it won't work.
Harald Hoyer 460d2c
Harald Hoyer 460d2c
Signed-off-by: Kairui Song <kasong@redhat.com>
Harald Hoyer 460d2c
---
Harald Hoyer 460d2c
 modules.d/99squash/module-setup.sh | 17 +++++++++++------
Harald Hoyer 460d2c
 1 file changed, 11 insertions(+), 6 deletions(-)
Harald Hoyer 460d2c
Harald Hoyer 460d2c
diff --git a/modules.d/99squash/module-setup.sh b/modules.d/99squash/module-setup.sh
Harald Hoyer 460d2c
index 72fa81f0..6307377c 100644
Harald Hoyer 460d2c
--- a/modules.d/99squash/module-setup.sh
Harald Hoyer 460d2c
+++ b/modules.d/99squash/module-setup.sh
Harald Hoyer 460d2c
@@ -1,11 +1,21 @@
Harald Hoyer 460d2c
 #!/bin/bash
Harald Hoyer 460d2c
 
Harald Hoyer 460d2c
 check() {
Harald Hoyer 460d2c
+    if ! dracut_module_included "systemd-initrd"; then
Harald Hoyer 460d2c
+        derror "dracut-squash only supports systemd bases initramfs"
Harald Hoyer 460d2c
+        return 1
Harald Hoyer 460d2c
+    fi
Harald Hoyer 460d2c
+
Harald Hoyer 460d2c
+    if ! type -P mksquashfs >/dev/null || ! type -P unsquashfs >/dev/null ; then
Harald Hoyer 460d2c
+        derror "dracut-squash module requires squashfs-tools"
Harald Hoyer 460d2c
+        return 1
Harald Hoyer 460d2c
+    fi
Harald Hoyer 460d2c
+
Harald Hoyer 460d2c
     return 255
Harald Hoyer 460d2c
 }
Harald Hoyer 460d2c
 
Harald Hoyer 460d2c
 depends() {
Harald Hoyer 460d2c
-    echo "bash systemd systemd-initrd"
Harald Hoyer 460d2c
+    echo "bash systemd-initrd"
Harald Hoyer 460d2c
     return 0
Harald Hoyer 460d2c
 }
Harald Hoyer 460d2c
 
Harald Hoyer 460d2c
@@ -14,11 +24,6 @@ installkernel() {
Harald Hoyer 460d2c
 }
Harald Hoyer 460d2c
 
Harald Hoyer 460d2c
 install() {
Harald Hoyer 460d2c
-    if ! type -P mksquashfs >/dev/null || ! type -P unsquashfs >/dev/null ; then
Harald Hoyer 460d2c
-        derror "squash module requires squashfs-tools to be installed."
Harald Hoyer 460d2c
-        return 1
Harald Hoyer 460d2c
-    fi
Harald Hoyer 460d2c
-
Harald Hoyer 460d2c
     inst_multiple kmod modprobe mount mkdir ln echo
Harald Hoyer 460d2c
     inst $moddir/setup-squash.sh /squash/setup-squash.sh
Harald Hoyer 460d2c
     inst $moddir/clear-squash.sh /squash/clear-squash.sh
Harald Hoyer 460d2c