]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
dracut: added --list-modules
authorHarald Hoyer <harald@redhat.com>
Fri, 17 Sep 2010 06:36:26 +0000 (08:36 +0200)
committerHarald Hoyer <harald@redhat.com>
Mon, 20 Sep 2010 12:53:45 +0000 (14:53 +0200)
dracut

diff --git a/dracut b/dracut
index ee2f79ff96e29d76f67440e25d7dadccf10655ac..9c1223a8359d41d3fffaa53bb445148ec5999a8d 100755 (executable)
--- a/dracut
+++ b/dracut
@@ -89,6 +89,7 @@ Creates initial ramdisk images for preloading modules
                          otherwise you will not be able to boot.
   --no-compress         Do not compress the generated initramfs.  This will
                          override any other compression options.
+  --list-modules        List all available dracut modules.
 EOF
 }
 
@@ -150,6 +151,9 @@ while (($# > 0)); do
             ignore_kmodules="yes"
             omit_dracutmodules_l+=\ kernel-modules
             ;;
+        --list-modules)
+            do_list="yes";
+            ;;
         -*) printf "\nUnknown option: %s\n\n" "$1" >&2; usage; exit 1;;
         *) break ;;
     esac
@@ -228,6 +232,15 @@ fi
 dracutfunctions=$dracutbasedir/dracut-functions
 export dracutfunctions
 
+[[ $do_list = yes ]] && {
+    for mod in $dracutbasedir/modules.d/*; do
+        [[ -d $mod ]] || continue;
+        [[ -e $mod/install || -e $mod/installkernel ]] || continue;
+        echo ${mod##*/??}
+    done
+    exit 0
+}
+
 # Detect lib paths
 [[ $libdir ]] || for libdir in /lib64 /lib; do
     [[ -d $libdir ]] && break