quarks/sys-kernel/dracut/files/027-0003-Do-not-call-plymouth-with-full-path.patch
2013-05-08 00:25:02 -07:00

168 lines
7.0 KiB
Diff

From d084ce382e70723854f960daa8b0e486ee1ce97f Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 11 Apr 2013 16:08:26 +0200
Subject: [PATCH 3/4] Do not call plymouth with full path
---
modules.d/50plymouth/module-setup.sh | 2 +-
modules.d/50plymouth/plymouth-emergency.sh | 2 +-
modules.d/50plymouth/plymouth-newroot.sh | 4 ++--
modules.d/50plymouth/plymouth-populate-initrd.sh | 5 ++---
modules.d/50plymouth/plymouth-pretrigger.sh | 6 +++---
modules.d/90crypt/crypt-lib.sh | 4 ++--
modules.d/90dmsquash-live/dmsquash-live-root.sh | 4 ++--
modules.d/98systemd/dracut-emergency.sh | 2 +-
modules.d/99base/dracut-lib.sh | 4 ++--
9 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/modules.d/50plymouth/module-setup.sh b/modules.d/50plymouth/module-setup.sh
index f754e24..ae35b11 100755
--- a/modules.d/50plymouth/module-setup.sh
+++ b/modules.d/50plymouth/module-setup.sh
@@ -4,7 +4,7 @@
check() {
[[ "$mount_needs" ]] && return 1
- [[ -x /sbin/plymouthd && -x /bin/plymouth && -x /usr/sbin/plymouth-set-default-theme ]]
+ type -P plymouthd >/dev/null && type -P plymouth >/dev/null
}
depends() {
diff --git a/modules.d/50plymouth/plymouth-emergency.sh b/modules.d/50plymouth/plymouth-emergency.sh
index 68955b8..ed0b0ac 100755
--- a/modules.d/50plymouth/plymouth-emergency.sh
+++ b/modules.d/50plymouth/plymouth-emergency.sh
@@ -1,4 +1,4 @@
#!/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
-[ -x /bin/plymouth ] && /bin/plymouth --hide-splash
+plymouth --hide-splash 2>/dev/null || :
diff --git a/modules.d/50plymouth/plymouth-newroot.sh b/modules.d/50plymouth/plymouth-newroot.sh
index 2311b47..96cd138 100755
--- a/modules.d/50plymouth/plymouth-newroot.sh
+++ b/modules.d/50plymouth/plymouth-newroot.sh
@@ -2,6 +2,6 @@
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
-if [ -x /bin/plymouth -a -z "$DRACUT_SYSTEMD" ]; then
- /bin/plymouth --newroot=$NEWROOT
+if type plymouth >/dev/null 2>&1 && [ -z "$DRACUT_SYSTEMD" ]; then
+ plymouth --newroot=$NEWROOT
fi
diff --git a/modules.d/50plymouth/plymouth-populate-initrd.sh b/modules.d/50plymouth/plymouth-populate-initrd.sh
index 1e2ffe7..6e0f561 100755
--- a/modules.d/50plymouth/plymouth-populate-initrd.sh
+++ b/modules.d/50plymouth/plymouth-populate-initrd.sh
@@ -4,15 +4,14 @@
PLYMOUTH_LOGO_FILE="/usr/share/pixmaps/system-logo-white.png"
PLYMOUTH_THEME=$(plymouth-set-default-theme)
-inst /sbin/plymouthd /bin/plymouthd
-dracut_install /bin/plymouth \
+dracut_install plymouthd plymouth \
"${PLYMOUTH_LOGO_FILE}" \
/etc/system-release
mkdir -m 0755 -p "${initdir}/usr/share/plymouth"
inst_libdir_file "plymouth/text.so" "plymouth/details.so"
-
+
if [[ $hostonly ]]; then
dracut_install \
"/usr/share/plymouth/themes/details/details.plymouth" \
diff --git a/modules.d/50plymouth/plymouth-pretrigger.sh b/modules.d/50plymouth/plymouth-pretrigger.sh
index 0e3cb02..8087bf6 100755
--- a/modules.d/50plymouth/plymouth-pretrigger.sh
+++ b/modules.d/50plymouth/plymouth-pretrigger.sh
@@ -2,7 +2,7 @@
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
-if [ -x /bin/plymouthd -a -z "$DRACUT_SYSTEMD" ]; then
+if type plymouthd >/dev/null 2>&1 && [-z "$DRACUT_SYSTEMD" ]; then
if getargbool 1 plymouth.enable && getargbool 1 rd.plymouth -d -n rd_NO_PLYMOUTH; then
# first trigger graphics subsystem
udevadm trigger --action=add --attr-match=class=0x030000 >/dev/null 2>&1
@@ -16,8 +16,8 @@ if [ -x /bin/plymouthd -a -z "$DRACUT_SYSTEMD" ]; then
read consoledev rest < /sys/class/tty/console/active
consoledev=${consoledev:-tty0}
[ -x /lib/udev/console_init -a -e "/dev/$consoledev" ] && /lib/udev/console_init "/dev/$consoledev"
- [ -x /bin/plymouthd ] && /bin/plymouthd --attach-to-session --pid-file /run/plymouth/pid
- /bin/plymouth --show-splash 2>&1 | vinfo
+ plymouthd --attach-to-session --pid-file /run/plymouth/pid
+ plymouth --show-splash 2>&1 | vinfo
# reset tty after plymouth messed with it
[ -x /lib/udev/console_init -a -e "/dev/$consoledev" ] && /lib/udev/console_init "/dev/$consoledev"
fi
diff --git a/modules.d/90crypt/crypt-lib.sh b/modules.d/90crypt/crypt-lib.sh
index d66ba88..ebe09f8 100755
--- a/modules.d/90crypt/crypt-lib.sh
+++ b/modules.d/90crypt/crypt-lib.sh
@@ -47,8 +47,8 @@ ask_for_password() {
{ flock -s 9;
# Prompt for password with plymouth, if installed and running.
- if [ -x /bin/plymouth ] && /bin/plymouth --ping; then
- /bin/plymouth ask-for-password \
+ if type plymouth >/dev/null 2>&1 && plymouth --ping 2>/dev/null; then
+ plymouth ask-for-password \
--prompt "$ply_prompt" --number-of-tries=$ply_tries \
--command="$ply_cmd"
ret=$?
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
index a79b0d9..07e41f0 100755
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
@@ -31,7 +31,7 @@ if [ "$fs" = "iso9660" -o "$fs" = "udf" ]; then
fi
getarg rd.live.check -d check || check=""
if [ -n "$check" ]; then
- [ -x /bin/plymouth ] && /bin/plymouth --hide-splash
+ type plymouth >/dev/null 2>&1 && plymouth --hide-splash
if [ -n "$DRACUT_SYSTEMD" ]; then
p=$(str_replace "$livedev" "-" '\x2d')
systemctl start checkisomd5@${p}.service
@@ -42,7 +42,7 @@ if [ -n "$check" ]; then
die "CD check failed!"
exit 1
fi
- [ -x /bin/plymouth ] && /bin/plymouth --show-splash
+ type plymouth >/dev/null 2>&1 && plymouth --show-splash
fi
ln -s $livedev /run/initramfs/livedev
diff --git a/modules.d/98systemd/dracut-emergency.sh b/modules.d/98systemd/dracut-emergency.sh
index a0a4b12..8ab045e 100755
--- a/modules.d/98systemd/dracut-emergency.sh
+++ b/modules.d/98systemd/dracut-emergency.sh
@@ -10,7 +10,7 @@ type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
source_conf /etc/conf.d
-[ -x /bin/plymouth ] && /bin/plymouth quit
+type plymouth >/dev/null 2>&1 && plymouth quit
export _rdshell_name="dracut" action="Boot" hook="emergency"
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
index e456b01..b8919f3 100755
--- a/modules.d/99base/dracut-lib.sh
+++ b/modules.d/99base/dracut-lib.sh
@@ -952,8 +952,8 @@ emergency_shell()
shift 2
elif [ "$1" = "--shutdown" ]; then
_rdshell_name=$2; action="Shutdown"; hook="shutdown-emergency"
- if [ -x /bin/plymouth ]; then
- /bin/plymouth --hide-splash
+ if type plymouth >/dev/null 2>&1; then
+ plymouth --hide-splash
elif [ -x /oldroot/bin/plymouth ]; then
/oldroot/bin/plymouth --hide-splash
fi
--
1.8.2.1