Splux Linux

source-based Linux using SPS

SPS · log · files · refs · tags · releases · people · languages · GitHub · commit

cacaad3


mkiso: ship KSplash helpers on the Plasma live image

Date
Commitcacaad3c8ed1f4315afd7aba850441b81261851f
GitHubmirror

Parents

Stat

 lib/mkiso/live-plasma | 12 +++++++++++-
 lib/mkiso/plasma-bins | 10 ++++++++++
 tests/test_mkiso.sh   |  6 ++++++
 3 files changed, 27 insertions(+), 1 deletion(-)

Diff

diff --git a/lib/mkiso/live-plasma b/lib/mkiso/live-plasma
index e2d987f..4977c8a 100644
--- a/lib/mkiso/live-plasma
+++ b/lib/mkiso/live-plasma
@@ -13,8 +13,18 @@ export TERM=${TERM:-linux}
 export LANG=${LANG:-C.UTF-8}
 export LC_ALL=${LC_ALL:-C.UTF-8}
 
-mkdir -p "$XDG_RUNTIME_DIR" /run/dbus /var/lib/dbus /etc/dbus-1
+mkdir -p "$XDG_RUNTIME_DIR" /run/dbus /var/lib/dbus /etc/dbus-1 \
+	/root/.config/kdedefaults
 chmod 700 "$XDG_RUNTIME_DIR"
+# startplasma reads this before KSplash. A missing file logs
+# QIODevice::readLineInto ... kdedefaults/package.
+if [ ! -s /root/.config/kdedefaults/package ]; then
+	printf '%s\n' 'org.kde.breeze.desktop' >/root/.config/kdedefaults/package
+fi
+if [ ! -s /root/.config/kdedefaults/ksplashrc ]; then
+	printf '%s\n' '[KSplash]' 'Engine=KSplashQML' \
+		'Theme=org.kde.breeze.desktop' >/root/.config/kdedefaults/ksplashrc
+fi
 
 # Live NVIDIA is nouveau. Keep the proprietary stack unloaded.
 modprobe nouveau 2>/dev/null || :
diff --git a/lib/mkiso/plasma-bins b/lib/mkiso/plasma-bins
index 63586df..a83ce5a 100644
--- a/lib/mkiso/plasma-bins
+++ b/lib/mkiso/plasma-bins
@@ -7,6 +7,10 @@
 /usr/bin/kwin_wayland
 /usr/bin/kwin_x11
 /usr/bin/plasmashell
+/usr/bin/plasma_session
+/usr/bin/plasma_waitforname
+/usr/bin/plasma-shutdown
+/usr/bin/ksplashqml
 /usr/bin/konsole
 /usr/bin/dolphin
 /usr/bin/kwrite
@@ -15,6 +19,7 @@
 /usr/bin/kdeinit6
 /usr/bin/kglobalacceld
 /usr/bin/kcminit
+/usr/bin/kcminit_startup
 /usr/bin/ksmserver
 /usr/bin/krunner
 /usr/bin/systemsettings
@@ -36,4 +41,9 @@
 /usr/bin/qdbus6
 /usr/libexec/kf6/kconf_update
 /usr/libexec/kf6/kio_http_cache_cleaner
+/usr/libexec/kf6/kiod6
+/usr/libexec/kf6/kscreen_backend_launcher
+/usr/libexec/plasma-dbus-run-session-if-needed
+/usr/libexec/plasma-sourceenv.sh
+/usr/libexec/plasma-startup-sound
 
diff --git a/tests/test_mkiso.sh b/tests/test_mkiso.sh
index 629344d..d665c79 100755
--- a/tests/test_mkiso.sh
+++ b/tests/test_mkiso.sh
@@ -92,6 +92,12 @@ grep -q dbus-run-session "$layout/etc/sps/live-plasma" ||
 	fail 'live-plasma must start Plasma under a session bus'
 grep -q C.UTF-8 "$layout/etc/sps/live-plasma" ||
 	fail 'live-plasma must set a UTF-8 locale'
+grep -q kdedefaults "$layout/etc/sps/live-plasma" ||
+	fail 'live-plasma must seed kdedefaults for KSplash'
+grep -q ksplashqml "$project_dir/lib/mkiso/plasma-bins" ||
+	fail 'plasma-bins must include ksplashqml'
+grep -q plasma_waitforname "$project_dir/lib/mkiso/plasma-bins" ||
+	fail 'org.kde.KSplash.service Exec is plasma_waitforname'
 grep -q -- '-comp zstd' "$mkiso" || fail 'mkiso must write a zstd squashfs'
 grep -q -- '-Xcompression-level 3' "$mkiso" ||
 	fail 'mkiso squashfs compression should stay fast to build'