25
Mar
05

Changes in splashutils

As you might have noticed, some two weeks ago I released a new version of splashutils (1.1.9), which introduces many new features and some rather large changes in the way the splash works.

There have been a few factors that pushed me towards this release. First of all, people seem to like it when stuff is moved from the kernel into the userspace. Thus, starting with fbsplash-0.9.2, what little silent mode code there was in the kernel, has been removed. The truth is, the silent mode can easily be handled by userspace, with no help from the kernel. The verbose mode on the other hand can’t be moved to the userspace, unless one is willing to write a complete userspace console. That’s why fbsplash is there to stay, at least for some time. The silent image is now displayed on its own tty. This allows the user to switch back and forth between verbose and silent mode. It also automatically solves problems with consolefont, provided it doesn’t touch the silent tty.

Second thing that made me realize that some changes are necessary is a simple test I have performed. Try doing for ((i=0;i<65535;i=$i+1000)) do splash_util -c paint -m s -t livecd-2005.0 --progress=$i ; done. It’s slow! A lot slower than I suspected it would be. It turns out that loading and unpacking the background picture every time it is to be repainted isn’t such a good idea, even if the whole process is repeated only a few times during boot. Fortunately, a solution has existed long before the problem was discovered. It’s called the ‘splash daemon’ and was originally planned for gensplash. The splash daemon code has now been integrated into splashutils. The new mode of operation allows us to avoid the constant reloading and unpacking that was taking place with previous versions of splashutils.

The third reason for introducing the changes was a feeling that gensplash is moving far too slow. I started the project more than half a year ago and since then there hasn’t been a single release. Sure, there is some progress as far as the code is concerned but it’s still nowhere near a final version. Taking splashutils as a base, I was able to implement many of the features planned for gensplash in just a few days. At least now it will be possible to test them and see them in action.

I realize most of these new features is undocumented yet, and thus hard to take advantage of, but this will be taken care of soon. I plan to include full documentation in the next release of splashutils.

Advertisements

0 Responses to “Changes in splashutils”



  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: