]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
run udevadm trigger for graphics for plymouth in pre-trigger hook
authorHarald Hoyer <harald@redhat.com>
Wed, 3 Jun 2009 15:05:57 +0000 (17:05 +0200)
committerHarald Hoyer <harald@redhat.com>
Wed, 3 Jun 2009 15:07:23 +0000 (17:07 +0200)
dracut
modules.d/50plymouth/63-luks.rules
modules.d/50plymouth/install
modules.d/50plymouth/plymouth-pretrigger.sh [new file with mode: 0755]
modules.d/99base/init

diff --git a/dracut b/dracut
index e5e7ecd7ab0cc689f512e32f71e7e774bae1490a..1d03d2f6c5a8b538d8072675dcd5a26257e84b35 100755 (executable)
--- a/dracut
+++ b/dracut
@@ -96,7 +96,7 @@ if [[ -f $outfile && ! $force ]]; then
     exit 1
 fi
 
-hookdirs="cmdline pre-udev netroot pre-mount pre-pivot mount emergency"
+hookdirs="cmdline pre-udev pre-trigger netroot pre-mount pre-pivot mount emergency"
 
 readonly initdir=$(mktemp -d -t initramfs.XXXXXX)
 trap 'rm -rf "$initdir"' 0 # clean up after ourselves no matter how we die.
index 893577bbc6b706b89f55da00250b1f5b935a8536..01a1b1d89221a3f1ba69d50b53fceb34b5690616 100644 (file)
@@ -8,6 +8,6 @@ SUBSYSTEM!="block", GOTO="luks_end"
 ACTION!="add|change", GOTO="luks_end"
 
 KERNEL!="sr*", IMPORT{program}="vol_id --export $tempnode"
-ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="cryptroot-ask $env{DEVNAME} luks-$env{ID_FS_UUID}"
+ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="/sbin/cryptroot-ask $env{DEVNAME} luks-$env{ID_FS_UUID}"
 
 LABEL="luks_end"
index bfba52b52eaf4cf633537291bfcab0d126a61942..ffc8e48d0beb901486d70b0c212b441c00f96c8c 100755 (executable)
@@ -2,6 +2,7 @@
 . "$moddir"/plymouth-populate-initrd
 inst_hook pre-udev 10 "$moddir"/plymouth-prep.sh
 inst_hook pre-pivot 90 "$moddir"/plymouth-newroot.sh
+inst_hook pre-trigger 10 "$moddir"/plymouth-pretrigger.sh
 inst_hook emergency 50 "$moddir"/plymouth-emergency.sh
 inst "$moddir"/cryptroot-ask.sh /sbin/cryptroot-ask
 # Include KMS capable drm drivers
@@ -10,4 +11,4 @@ for modname in `find "/lib/modules/$kernel/kernel/drivers/gpu/drm" -name '*.ko'`
     instmods $modname
   fi
 done
-inst_rules "$moddir/52-plymouth-start.rules"
+#inst_rules "$moddir/52-plymouth-start.rules"
diff --git a/modules.d/50plymouth/plymouth-pretrigger.sh b/modules.d/50plymouth/plymouth-pretrigger.sh
new file mode 100755 (executable)
index 0000000..ee9a7b2
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+# first trigger graphics subsystem
+udevadm trigger --subsystem-match=graphics >/dev/null 2>&1
+udevadm settle --timeout=30 >/dev/null 2>&1
+/bin/plymouth --show-splash
+
index 70c2514ee4eadc33675841e307d24502c136c758..234cf49e0ae34c628c65f3d2d2413f0d251e051c 100755 (executable)
@@ -70,6 +70,10 @@ source_all pre-udev
 udevd --daemon
 getarg rdudevinfo && udevadm control --log_priority=info
 getarg rdudevdebug && udevadm control --log_priority=debug
+
+source_all pre-trigger
+
+# then the rest
 udevadm trigger >/dev/null 2>&1
 udevadm settle --timeout=30 >/dev/null 2>&1