[Bootsplash] Provided by the kernel

kernel
bootsplash
built-in

#1

Some of you might already wonder why the latest kernel shows some new errors about missing a file for bootsplash. Max Staudt is currently working on a new way to display a bootsplash within the kernel like Windows or MacOS does.

Support for DraCut and SystemD is already done. So the integration with that should be just fine. Plymouth on the other hand uses a lot of basis packages which is deeply integrated in a special way, mostly even odd. This we will do much better.

However one of the last issues we may have is encryption. For displaying the password we use /dev/fb0. Does somebody know a nice application which may showcase a nice screen for that device node? Else we are already feature complete


Current howto


How to turn off kernel bootsplash?
Any plans for cool stylish bootscreen?
Bootsplash error on boot
Bootsplash failed 4.14.0-1
[Stable Update] 2017-12-23 - Kernels, KDE-Apps, Cinnamon, Deepin, Xorg, LibreOffice
Bootsplash for encrypted disk?
Feature Request: Plymouth boot screen and nicer grub theme
[Illyria] Manjaro KDE v18.0-beta8 online now!
Help to install plymouth
Help to install plymouth
Sometimes Manjaro will not Boot
How can I enable Boot splash screen in manjaro
Manjaro on Proxmox
Login too slow
#2

I appreciate the work you do for making it realy pretty - but will it be default on soon? and if so how can one deactivate it? - I like the boot output :innocent::sweat_smile:


#3

Is it a separate package or anything integrated into the kernel?


#4

Max is still working on the new feature and will update me as soon as the new patches are available. We will have a tool, which enables us to create those needed files for the bootsplash. The engine will be integrated into the kernel. I hope Mid-December we have some working solution online.


#5

that’s a fair point though. as much as it’s a nice option to hide output, I usually disable it on my own machines because i prefer to see what’s going on for that split second before sddm appears


#6

Will this affect people that are still using plymouth like me?, for example, showing the bootsplash instead of plymouth.


#7

Plymouth has been horribly broken for sometime, this is why the stable version hasn’t been updated to more recent versions since the summer. The latest version in testing breaks many of the existing plymouth themes in the Manjaro repos and has been removed altogether from the unstable repos. I assume that once the developers get the kernel bootsplash and tools straightened out they will post instructions on how to transition away from plymouth.


#8

I would still try to use plymouth because i’m not gonna throw away time that i spend making a theme, i’ll try to see if the plymouth theme won’t get messy with the ck atom kernel when it fixes it’s performance.I would use the kernel bootsplash if it would be themeable and i could make animations with scripts and all sort of stuff.


#9

It will be theme-able. The concept that SuSe got accepted in the the kernel tree is similar to the kernel patch set that Gentoo has had available for years. It uses the frame buffer before X starts. In Gentoo you can even customize the decorations of each VT, so if you drop out of X or launch X from a VT you get the design of your choice in the background, as well as having animated themes during boot-up before X launches and takes over.


#10

well, is there anything new?


#11

Not yet. Seems the development is still ongoing. Mid Spring '18 we might have our first preview or so …


#12

Max released the next set of patches and I’ve integrated them into linux414. Also the needed themes are now provided. Currently I’m trying to figure out on how to make it work.


#13

OK, we are getting there now. I’ve got the updated information needed to get it running:

example:
Splash-file under /lib/firmware/mypath/myfile
Cmdline: bootsplash.bootfile=mypath/myfile

As soon as the file can be loaded, splash runs automatically.

For the framebuffer you can use vesafb/efifb. Also simplefb should work. Use gfxpayload=1024x768x16 in GRUB or vga=791. Resolutions may be chosen freely.


[SOLVED] Has Plymouth been removed?
#14

doesnt work for me :frowning:

dmesg | grep bootsplash:
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.14-x86_64 root=UUID=86b0189d-a8cd-4332-b598-c97f3d32e46d rw quiet nowatchdog bootsplash.bootfile=bootsplash-themes/tux/bootsplash scsi_mod.use_blk_mq=y i915.modeset=1 i915.semaphores=1 i915.i915_enable_rc6=7 intel_pstate=passive rootflags=journal_async_commit
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.14-x86_64 root=UUID=86b0189d-a8cd-4332-b598-c97f3d32e46d rw quiet nowatchdog bootsplash.bootfile=bootsplash-themes/tux/bootsplash scsi_mod.use_blk_mq=y i915.modeset=1 i915.semaphores=1 i915.i915_enable_rc6=7 intel_pstate=passive rootflags=journal_async_commit
[ 0.567811] bootsplash bootsplash.0: Direct firmware load for bootsplash-themes/tux/bootsplash failed with error -2
[ 0.567812] bootsplash: Failed to initialize.


#15

@davidex: did you use the latest bootsplash-themes package I had uploaded?


#16

Same here, kernel 4.14.7, bootsplash-theme-tux 0.1-2

[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.14-x86_64 root=UUID=d165a649-f57d-4de1-a5cd-f6b1071a7449 rw quiet acpi_osi=Linux acpi=force acpi_enforce_resources=lax nowatchdog ipv6.disable=1 bootsplash.bootfile=bootsplash-themes/tux/bootsplash
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.14-x86_64 root=UUID=d165a649-f57d-4de1-a5cd-f6b1071a7449 rw quiet acpi_osi=Linux acpi=force acpi_enforce_resources=lax nowatchdog ipv6.disable=1 bootsplash.bootfile=bootsplash-themes/tux/bootsplash
[ 0.436229] bootsplash bootsplash.0: Direct firmware load for bootsplash-themes/tux/bootsplash failed with error -2
[ 0.436230] bootsplash: Failed to initialize


#17

Did you regenerate the initramfs?


#18

yes. in fact recently linux was updated to 4.14.8 and still gives the same error


#19

Did you added the bootsplash-tux hook to mkinitcpio.conf and updated the initramfs accordingly? See example


#20

It is working for me after adding hook.