aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJóhann B. Guðmundsson <johannbg@gmail.com>2021-05-18 13:19:28 +0000
committerJóhann B. Guðmundsson <johannbg@gmail.com>2021-05-25 11:59:08 +0000
commitf4ea5f8734c4636f7d6db78da76e9525beb9a0ac (patch)
tree6e58a70a412e2522c7a4b3923de0fc70c7544ff6
parent6c673298f36990665467564e6114c9ca2530f584 (diff)
downloaddracut-f4ea5f8734c4636f7d6db78da76e9525beb9a0ac.tar.gz
fix(dash): minor cleanups
- Remove hard coded path to binary - Add missing license header - Document sections - refactor install section
-rwxr-xr-xmodules.d/00dash/module-setup.sh28
1 files changed, 20 insertions, 8 deletions
diff --git a/modules.d/00dash/module-setup.sh b/modules.d/00dash/module-setup.sh
index aa963210..4a0c0e7e 100755
--- a/modules.d/00dash/module-setup.sh
+++ b/modules.d/00dash/module-setup.sh
@@ -1,20 +1,32 @@
#!/bin/bash
+# This file is part of dracut.
+# SPDX-License-Identifier: GPL-2.0-or-later
-# called by dracut
+# Prerequisite check(s) for module.
check() {
- require_binaries /bin/dash
+
+ # If the binary(s) requirements are not fulfilled the module can't be installed.
+ require_binaries dash || return 1
+
+ # Return 255 to only include the module, if another module requires it.
+ return 255
+
}
-# called by dracut
+# Module dependency requirements.
depends() {
+
+ # Return 0 to include the dependent module(s) in the initramfs.
return 0
+
}
-# called by dracut
+# Install the required file(s) and directories for the module in the initramfs.
install() {
- # If another shell is already installed, do not use dash
- [[ -x $initdir/bin/sh ]] && return
- # Prefer dash as /bin/sh if it is available.
- inst /bin/dash && ln -sf dash "${initdir}/bin/sh"
+ inst /bin/dash
+
+ # Prefer dash as default shell if no other shell is preferred.
+ [[ -L $initdir/bin/sh ]] || ln -sf dash "${initdir}/bin/sh"
+
}