Currently, the progressbar in usplash is updated by the initialization scripts.
Although this works ok, the progress effect is very ugly because the bar moves in huge increments and then stops for an undetermined time until it moves again. Besides not being beautiful, this provides no information to the user about the time remaining for the boot or shutdown process.
I suggest that the usplash progressbar be time-based, pretty much like the progressbar in MacOSX.
Since the booting and shutdown times do not change drastically from session to session, we could save the time the computer spent to boot and to shutdown, and use it to guide the progressbar the next time. This would provide a beautiful and smooth animation of the progressbar, and an accurate remaining time, increasing the usability.
This can be already implemented using the current usplash code without modifications whatsoever, and a working solution is already available.
Please check it here: