From: Harald Hoyer Date: Wed, 3 Jun 2009 15:05:57 +0000 (+0200) Subject: run udevadm trigger for graphics for plymouth in pre-trigger hook X-Git-Tag: 0.1~120 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1eeddd31afb4efebef4a579180dd47fee2e4a1ab;p=thirdparty%2Fdracut.git run udevadm trigger for graphics for plymouth in pre-trigger hook --- diff --git a/dracut b/dracut index e5e7ecd7a..1d03d2f6c 100755 --- 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. diff --git a/modules.d/50plymouth/63-luks.rules b/modules.d/50plymouth/63-luks.rules index 893577bbc..01a1b1d89 100644 --- a/modules.d/50plymouth/63-luks.rules +++ b/modules.d/50plymouth/63-luks.rules @@ -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" diff --git a/modules.d/50plymouth/install b/modules.d/50plymouth/install index bfba52b52..ffc8e48d0 100755 --- a/modules.d/50plymouth/install +++ b/modules.d/50plymouth/install @@ -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 index 000000000..ee9a7b2a7 --- /dev/null +++ b/modules.d/50plymouth/plymouth-pretrigger.sh @@ -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 + diff --git a/modules.d/99base/init b/modules.d/99base/init index 70c2514ee..234cf49e0 100755 --- a/modules.d/99base/init +++ b/modules.d/99base/init @@ -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