Bug#999417: Blank line in plymouthd.conf silently breaks it
On Mon, 15 Nov 2021 16:39:58 +1100 "Trent W. Buck" wrote: > Laurent Bigonville wrote: > > On Thu, 11 Nov 2021 06:24:53 +1100 "Trent W. Buck" > > wrote: > > > > > See attached example files. > > > > Could you please explain a bit more what's not working? > > Sorry, I thought my report included more information than it did. > This is the actual commit that fixed it for me: > > https://github.com/cyberitsolutions/bootstrap2020/commit/af75998 > > The behaviour I see is that plymouth shows a splash screen, but > it uses the fallback "text" theme, with the "█ █ █" three rectangles, > with a spinner on a Tango dark grey background (#2E3436). > > When plymouthd.conf contains no \n\n sequences, I see the correct bgrt theme, > with an animated spinner (white circle on black background). I can indeed confirm that if you have two new lines (\n) breaks the displaying of the theme
Bug#999417: Blank line in plymouthd.conf silently breaks it
PS: I reran my test script with "sid" instead of "bullseye", and the problem still exists in sid. It also includes lsinitramfs output. Trent W. Buck wrote: > > I just tried now with plymouth version 0.9.5+git20211018-1, after adding a > > white space in the configuration file and regenerating the initramfs (with > > update-initramfs -u) I can see the theme in initramfs (lsinitramfs) and the > > bgrt theme is properly used. > > > > How did you regenerate the initramfs? Does lsinitramfs show you the theme > > files inside the initramfs? Could you try with 0.9.5+git20211018-1 and see > > if it makes a difference? > > OK here's a script (attached) that should reliably show > 1) working behaviour; then > 2) failing behaviour. plymouth-issue-test.sh Description: Bourne shell script bash5$ /home/twb/Desktop/bootstrap2020/plymouth-issue-test.sh #!/bin/bash -v build=( mmdebstrap sid tmp.squashfs --aptopt='Acquire::http::Proxy "http://localhost:3142;' --include=plymouth-themes,linux-image-generic,init,live-boot,pigz --dpkgopt=force-unsafe-io --dpkgopt=force-confold # dpkg, don't pause because I edited plymouth.conf before you --essential-hook='mkdir -p $1/etc/plymouth' --essential-hook='copy-in plymouthd.conf /etc/plymouth/' --customize-hook='download /vmlinuz vmlinuz' --customize-hook='download /initrd.img initrd.img' --customize-hook='chroot $1 dpkg-query -W plymouth plymouth-themes' --customize-hook='chroot $1 lsinitramfs -l /initrd.img | grep plymouth' ) test=( kvm -m 1024 # without this, not enough ram to start the initrd! -hda tmp.squashfs -kernel vmlinuz -initrd initrd.img -append 'splash boot=live plainroot root=/dev/sda' ) # With no \n\n, plymouthd shows correct spinner animation on black background (bgrt inherits from spinner). printf '[Daemon]\nTheme=bgrt\n' >plymouthd.conf && "${build[@]}" && "${test[@]}" I: automatically chosen mode: unshare I: chroot architecture amd64 is equal to the host's architecture I: automatically chosen format: squashfs I: using /tmp/mmdebstrap.0JUC5aHB_o as tempdir W: tar2sqfs does not support extended attributes from the 'system' namespace I: running apt-get update... done I: downloading packages with apt... done I: extracting archives... done I: installing essential packages... done I: running --essential-hook in shell: sh -c 'mkdir -p $1/etc/plymouth' exec /tmp/mmdebstrap.0JUC5aHB_o I: running special hook: copy-in plymouthd.conf /etc/plymouth/ I: downloading apt... done I: installing apt... done I: installing remaining packages inside the chroot... done done done I: running special hook: download /vmlinuz vmlinuz I: running special hook: download /initrd.img initrd.img I: running --customize-hook in shell: sh -c 'chroot $1 dpkg-query -W plymouth plymouth-themes' exec /tmp/mmdebstrap.0JUC5aHB_o plymouth0.9.5+git20211018-1 plymouth-themes 0.9.5+git20211018-1 I: running --customize-hook in shell: sh -c 'chroot $1 lsinitramfs -l /initrd.img | grep plymouth' exec /tmp/mmdebstrap.0JUC5aHB_o drwxr-xr-x 2 root root0 Nov 15 05:52 etc/plymouth -rw-r--r-- 1 1000 1000 20 Nov 15 05:51 etc/plymouth/plymouthd.conf -rwxr-xr-x 1 root root 151 Nov 10 15:45 scripts/init-bottom/plymouth -rwxr-xr-x 1 root root 472 Nov 10 15:45 scripts/init-premount/plymouth -rwxr-xr-x 1 root root 155 Nov 10 15:45 scripts/panic/plymouth -rwxr-xr-x 1 root root47880 Nov 10 15:45 usr/bin/plymouth drwxr-xr-x 3 root root0 Nov 15 05:52 usr/lib/x86_64-linux-gnu/plymouth -rw-r--r-- 1 root root18944 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/details.so -rw-r--r-- 1 root root14664 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/label.so drwxr-xr-x 2 root root0 Nov 15 05:52 usr/lib/x86_64-linux-gnu/plymouth/renderers -rw-r--r-- 1 root root60416 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/renderers/drm.so -rw-r--r-- 1 root root35632 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/renderers/frame-buffer.so -rw-r--r-- 1 root root23200 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/text.so -rw-r--r-- 1 root root69032 Nov 10 15:45 usr/lib/x86_64-linux-gnu/plymouth/two-step.so drwxr-xr-x 2 root root0 Nov 15 05:52 usr/libexec/plymouth -rwxr-xr-x 1 root root14600 Nov 10 15:45 usr/libexec/plymouth/plymouthd-fd-escrow -rwxr-xr-x 1 root root 151584 Nov 10 15:45 usr/sbin/plymouthd drwxr-xr-x 3 root root0 Nov 15 05:52 usr/share/plymouth -rw-r--r-- 1 root root 5834 Nov 15 05:52 usr/share/plymouth/debian-logo.png -rw-r--r-- 1 root root 139 Nov 10 15:45 usr/share/plymouth/plymouthd.defaults drwxr-xr-x 6 root root0 Nov 15 05:52 usr/share/plymouth/themes drwxr-xr-x 2 root root
Bug#999417: Blank line in plymouthd.conf silently breaks it
Laurent Bigonville wrote: > On Thu, 11 Nov 2021 06:24:53 +1100 "Trent W. Buck" > wrote: > > > See attached example files. > > Could you please explain a bit more what's not working? Sorry, I thought my report included more information than it did. This is the actual commit that fixed it for me: https://github.com/cyberitsolutions/bootstrap2020/commit/af75998 The behaviour I see is that plymouth shows a splash screen, but it uses the fallback "text" theme, with the "█ █ █" three rectangles, with a spinner on a Tango dark grey background (#2E3436). When plymouthd.conf contains no \n\n sequences, I see the correct bgrt theme, with an animated spinner (white circle on black background). > I just tried now with plymouth version 0.9.5+git20211018-1, after adding a > white space in the configuration file and regenerating the initramfs (with > update-initramfs -u) I can see the theme in initramfs (lsinitramfs) and the > bgrt theme is properly used. > > How did you regenerate the initramfs? Does lsinitramfs show you the theme > files inside the initramfs? Could you try with 0.9.5+git20211018-1 and see > if it makes a difference? Let me see if I make a full test recipe... hrm, not easily. I will instead include the "before" and "after" ramdisks and kernel. ...hrm, they're 40MB each, not really suitable for email. The actual images are identical except for the plymouthd.conf and some fontconfig cache files. That suggests the problem is inside the plymouthd C code itself. OK here's a script (attached) that should reliably show 1) working behaviour; then 2) failing behaviour. plymouth-issue-test.sh Description: Bourne shell script
Bug#999417: Blank line in plymouthd.conf silently breaks it
On Thu, 11 Nov 2021 06:24:53 +1100 "Trent W. Buck" wrote: > See attached example files. Hello, Could you please explain a bit more what's not working? I just tried now with plymouth version 0.9.5+git20211018-1, after adding a white space in the configuration file and regenerating the initramfs (with update-initramfs -u) I can see the theme in initramfs (lsinitramfs) and the bgrt theme is properly used. How did you regenerate the initramfs? Does lsinitramfs show you the theme files inside the initramfs? Could you try with 0.9.5+git20211018-1 and see if it makes a difference? Kind regards, Laurent Bigonville
Bug#999417: Blank line in plymouthd.conf silently breaks it
Package: plymouth Version: 0.9.5-3 Severity: normal See attached example files. -- System Information: Debian Release: 11.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'proposed-updates'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 5.10.0-9-amd64 (SMP w/8 CPU threads) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled # I don't care about PrisonPC branding on inmate desktops. # The only branding I care about is in ppcadm. # # The Debian 11 default splash is loud and Debian-y: # https://wiki.debian.org/DebianArt/Themes/Homeworld # # Change the default to match Windows 10 style. # That is: # * black background # * a simple spinner animation # * if present, a centered logo, from # /sys/firmware/acpi/tables/BGRT. # # This makes the transition from EFI to plymouth "seamless". # # WARNING: if this file contains any blank lines, # it will silently fail to include the correct theme in the ramdisk, # causing a de facto Theme=text behaviour. [Daemon] Theme=bgrt # I don't care about PrisonPC branding on inmate desktops. # The only branding I care about is in ppcadm. # The Debian 11 default splash is loud and Debian-y: # https://wiki.debian.org/DebianArt/Themes/Homeworld # # Change the default to match Windows 10 style. # That is: # * black background # * a simple spinner animation # * if present, a centered logo, from # /sys/firmware/acpi/tables/BGRT. # # This makes the transition from EFI to plymouth "seamless". [Daemon] Theme=bgrt