Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[draft] Add a boot animation system #3177

Open
BarryLhm opened this issue Nov 15, 2024 · 2 comments
Open

[draft] Add a boot animation system #3177

BarryLhm opened this issue Nov 15, 2024 · 2 comments

Comments

@BarryLhm
Copy link
Contributor

BarryLhm commented Nov 15, 2024

I think it's the time for Chimera Linux to get a boot animation system.
Consider adding plymouth, or maybe creating a new one? Android's bootanimation is a good example.

@BarryLhm
Copy link
Contributor Author

I think the animation should appear immediately after basic init is done, even before loading gpu driver.
I mean, if grub has set the display to the highest mode, the kernel will start with a hd console, so the animation could be loaded in initramfs stage without gpu driver packed in initramfs.
The best place to store animation files is /boot. For 'esp on /boot' installations, this directory could be accessible before root filesystem check. And for 'esp on /boot/efi' systems, using this path can avoid taking up space on esp.

@robertek
Copy link
Contributor

robertek commented Dec 6, 2024

I don't think creating new boot animation system is a way to go. It is much more complex then only showing an image. For example it needs to support console interaction (password entry).

To be honest I'm missing the old bootsplash kernel implementation, which allowed general console theming, not only the boot part. But this is long gone and I do not see anyone preparing something like that again.

The plymouth is probably the easiest way to implement.
There are couple of things that needs to be incorporated atop of the upstream plymouth.

  1. initramfs-tools helpers. Debian has them implemented and with some modification it may be probably included. With this, you may have it working in a dumb way (just display boot animation, without any progress or interaction). See [1].
  2. implemet dinit services to notify plymouth about the current progress. See the systemd units in [2].
  3. And the final thing is to implement support for possible console interaction to current boot scripts. For example the zfs load-key -a would need that (but there will be others). I had this implemented in my simple init script I used time ago, see [3].

References

[1] https://salsa.debian.org/debian/plymouth/-/tree/debian/debian/local?ref_type=heads
[2] https://salsa.debian.org/debian/plymouth/-/tree/debian/systemd-units?ref_type=heads
[3] https://github.com/robertek/root-scripts/blob/master/init.tpl#L68

@BarryLhm BarryLhm changed the title [enhancement] Add a boot animation system [draft] Add a boot animation system Dec 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants