plymouth/suse-initrd-support

85 lines
2.5 KiB
Plaintext

---
configure.ac | 1
scripts/boot-plymouth.chroot.sh | 7 ++++++
scripts/boot-plymouth.sh | 8 +++++++
scripts/setup-plymouth.sh.in | 41 ++++++++++++++++++++++++++++++++++++++++
4 files changed, 57 insertions(+)
--- plymouth-0.8.3_git201110131555.orig/configure.ac
+++ plymouth-0.8.3_git201110131555/configure.ac
@@ -440,6 +440,7 @@ AC_CONFIG_FILES([Makefile
themes/spinner/Makefile
themes/script/Makefile
images/Makefile
+ scripts/setup-plymouth.sh
scripts/plymouth-generate-initrd
scripts/plymouth-populate-initrd
scripts/plymouth-set-default-theme
--- /dev/null
+++ plymouth-0.8.3_git201110131555/scripts/boot-plymouth.chroot.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+#%stage: setup
+#%depends: plymouth
+#%programs: /usr/bin/plymouth /usr/sbin/plymouthd
+#%dontshow
+
+plymouth update-root-fs --new-root-dir=/root
--- /dev/null
+++ plymouth-0.8.3_git201110131555/scripts/boot-plymouth.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+#%stage: boot
+#%depends: start udev kms
+#%programs: /usr/bin/plymouth /usr/sbin/plymouthd
+
+/usr/sbin/plymouthd --mode=boot --attach-to-session
+
+plymouth show-splash
--- /dev/null
+++ plymouth-0.8.3_git201110131555/scripts/setup-plymouth.sh.in
@@ -0,0 +1,43 @@
+#!/bin/bash
+#
+#%stage: setup
+#%depends: start
+
+# We don't need to copy the binaries since boot-plymouth.sh does that for us
+
+[ -z "$tmp_mnt" ] && exit 1
+
+THEME=$(plymouth-set-default-theme)
+
+PLUGIN_PATH=$(plymouth --get-splash-plugin-path)
+
+MODULE=$(grep "ModuleName *= *" @PLYMOUTH_DATADIR@/plymouth/themes/${THEME}/${THEME}.plymouth | sed 's/ModuleName *= *//')
+
+if [ ! -f "$PLUGIN_PATH/${MODULE}.so" ]; then
+ echo "The default plymouth plugin ($MODULE) doesn't exist." > /dev/stderr
+ exit 1
+fi
+
+FILES="@PLYMOUTH_DATADIR@/plymouth/themes/text/text.plymouth \
+ @PLYMOUTH_DATADIR@/plymouth/themes/details/details.plymouth \
+ @PLYMOUTH_DATADIR@/plymouth/plymouthd.defaults \
+ @PLYMOUTH_DATADIR@/plymouth/themes/${THEME}/* \
+ @PLYMOUTH_DATADIR@/plymouth/logo.png \
+ /usr/bin/plymouth \
+ /usr/sbin/plymouthd \
+ /etc/plymouth/plymouthd.conf"
+
+PLUGINS="${PLUGIN_PATH}/details.so \
+ ${PLUGIN_PATH}/text.so \
+ ${PLUGIN_PATH}/${MODULE}.so \
+ ${PLUGIN_PATH}/renderers/drm.so \
+ ${PLUGIN_PATH}/renderers/frame-buffer.so"
+
+for file in $FILES; do
+ install -D $file $tmp_mnt/$file
+done
+
+for plugin in $PLUGINS; do
+ mkdir -p $tmp_mnt/$(dirname $plugin)
+ cp_bin $plugin $tmp_mnt/$plugin
+done