Browse Source

Hooks and modules have a .sh extension

This makes it trivial to filter out temporary files, editor backups,
package management leftovers, etc.  Thanks, Kay for the idea.
master
Victor Lowther 16 years ago committed by Dave Jones
parent
commit
3f9c86ab86
  1. 4
      Makefile
  2. 1
      README
  3. 6
      dracut
  4. 0
      hooks/cryptroot.sh
  5. 0
      hooks/resume.sh
  6. 0
      hooks/selinux-loadpolicy.sh
  7. 2
      init
  8. 0
      modules/00dash.sh
  9. 0
      modules/10redhat-i18n.sh
  10. 2
      modules/90crypt.sh
  11. 0
      modules/90kernel-modules.sh
  12. 0
      modules/90lvm.sh
  13. 0
      modules/95debug.sh
  14. 0
      modules/95terminfo.sh
  15. 0
      modules/95udev-rules.sh
  16. 4
      modules/99base.sh

4
Makefile

@ -12,8 +12,8 @@ install: @@ -12,8 +12,8 @@ install:
install -m 0755 dracut-functions $(DESTDIR)/usr/libexec/dracut/functions
mkdir $(DESTDIR)/usr/libexec/dracut/rules.d
for rule in rules.d/*.rules ; do install -m 0644 $$rule $(DESTDIR)/usr/libexec/dracut ; done
for hook in hooks/* ; do install -m 0755 $$hook $(DESTDIR)/usr/libexec/dracut ; done
for module in modules/*; do install -m 0755 $$module $(DESTDIR)/usr/libexec/dracut ; done
for hook in hooks/*.sh ; do install -m 0755 $$hook $(DESTDIR)/usr/libexec/dracut ; done
for module in modules/*.sh; do install -m 0755 $$module $(DESTDIR)/usr/libexec/dracut ; done
clean:
rm -f *~


1
README

@ -37,6 +37,7 @@ Some general rules for writing modules: @@ -37,6 +37,7 @@ Some general rules for writing modules:
* Generator modules should have a two digit numeric prefix -- they run in
ascending sort order. Anything in the 90-99 range is stuff that dracut
relies on, so try not to break those hooks.
* Generator modules and hooks must have a .sh extension.

Also, there is an attempt to keep things as distribution-agnostic as
possible. Every distribution has their own tool here and it's not

6
dracut

@ -44,7 +44,7 @@ hookdirs="pre-udev pre-mount pre-pivot" @@ -44,7 +44,7 @@ hookdirs="pre-udev pre-mount pre-pivot"
initdir=$(mktemp -d -t initramfs.XXXXXX)
trap 'rm -rf "$initdir"' 0 # clean up after ourselves no matter how we die.

export initdir hookdirs rulesdir dsrc dracutmodules kmodules
export initdir hookdirs rulesdir dsrc dracutmodules modules

# Create some directory structure first
for d in bin sbin usr/bin usr/sbin usr/lib etc proc sys sysroot dev/pts; do
@ -52,8 +52,8 @@ for d in bin sbin usr/bin usr/sbin usr/lib etc proc sys sysroot dev/pts; do @@ -52,8 +52,8 @@ for d in bin sbin usr/bin usr/sbin usr/lib etc proc sys sysroot dev/pts; do
done

# source all our modules
for f in "$dsrc/modules"/*[^~]; do
mod=${f##*/}; mod=${mod#[0-9][0-9]}
for f in "$dsrc/modules"/*.sh; do
mod=${f##*/}; mod=${mod#[0-9][0-9]}; mod=${mod%.sh}
if [[ $dracutmodules = all ]] || strstr "$dracutmodules" "$mod"; then
[[ -x $f ]] && . "$f"
fi

0
hooks/cryptroot → hooks/cryptroot.sh

0
hooks/resume → hooks/resume.sh

0
hooks/selinux-loadpolicy → hooks/selinux-loadpolicy.sh

2
init

@ -24,7 +24,7 @@ getarg() { @@ -24,7 +24,7 @@ getarg() {
source_all() {
local f
[ "$1" ] && [ -d "/$1" ] || return
for f in "/$1"/*; do [ -f "$f" ] && . "$f"; done
for f in "/$1"/*.sh; do [ -f "$f" ] && . "$f"; done
}

echo "Starting initrd..."

0
modules/00dash → modules/00dash.sh

0
modules/10redhat-i18n → modules/10redhat-i18n.sh

2
modules/90crypt → modules/90crypt.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/bash
inst cryptsetup
inst_rules "$dsrc/rules.d/63-luks.rules"
inst_hook pre-mount 50 "$dsrc/hooks/cryptroot"
inst_hook pre-mount 50 "$dsrc/hooks/cryptroot.sh"

0
modules/90kernel-modules → modules/90kernel-modules.sh

0
modules/90lvm → modules/90lvm.sh

0
modules/95debug → modules/95debug.sh

0
modules/95terminfo → modules/95terminfo.sh

0
modules/95udev-rules → modules/95udev-rules.sh

4
modules/99base → modules/99base.sh

@ -3,6 +3,6 @@ dracut_install mount mknod mkdir modprobe pidof sleep chroot echo sed sh ls @@ -3,6 +3,6 @@ dracut_install mount mknod mkdir modprobe pidof sleep chroot echo sed sh ls
# install our scripts and hooks
inst "$initfile" "/init"
inst "$switchroot" "/sbin/switch_root"
inst_hook pre-pivot 50 "$dsrc/hooks/selinux-loadpolicy"
inst_hook pre-mount 99 "$dsrc/hooks/resume"
inst_hook pre-pivot 50 "$dsrc/hooks/selinux-loadpolicy.sh"
inst_hook pre-mount 99 "$dsrc/hooks/resume.sh"

Loading…
Cancel
Save