You are not logged in.
edit 2:
If you don't want to build from sources have a look at this post: http://bbs.archlinux.org/viewtopic.php? … 03#p371403
edit:
UPDATED LINK:
http://slexiw.netsons.org/files/splashy-stuff7.tar.gz
About me:
I'm a professional developer (mainly c/c++) with 10 years of development experience. I've never programmed in bash before so this is my first experience. My Linux knowledge isn't good either but i learned a lot thanks to Arch Linux.
About the thread:
I need a boot splash for a mini-pc I'm building and i want, of course, use Arch Linux. The current status is pretty depressive, initscripts-splash are outdated and there is no real support for user-mode boot splashing system (like splashy).
A few suggestions (IMHO) for the Arch Linux developers:
-Integrate the splash system in the official initscripts. If you write a wrapper like start_daemon and stop_daemon to be used in /etc/rc.multi and /etc/rc.shutdown, we can limit the changes to just /etc/rc.d/functions and at least the initscripts-splash will be more maintainable and the whole code more clean.
-Patch killall5 to add the support to ignore pids. The patch is really small and the one used by Ubuntu is http://patches.ubuntu.com/s/sysvinit/ex … ids.dpatch. There is a package in AUR that uses a different patch: http://aur.archlinux.org/packages.php?ID=16445. I tested it and so far it worked fine, no problems to be reported.
Why do we need a patched killall5? Splashy gets killed early during the shutdown process and the whole purpose of having a splash system is defeated. Currently Splashy cannot handle the reboot/shutdown.
Enough talking, now back to the real stuff. I've modified the initscript-splash package (completely rewritten) and the splashy package (almost completely rewritten).
I've also written a new package to support splashy themes. I'm using these packages for my system and i never had any problem so far.
initscripts-splash:
Rewritten to fit my needs for Splashy. Based on initscripts-2008.05-1 (in testing, if you are not using the testing repo you should better wait till the package hits core).
It only supports MY Splashy package, no other splash system is supported, not even the "old" Splashy package from AUR.
splashy:
Based on the great work done by the maintainers and the contributors of the package in AUR. A lot has been rewritten and it's actually a lot different.
splashy-themes:
Simple package with just 1 theme (for now), depends on archlinux-wallpaper and uses a little hack to use the wallpapers provided. I will provide new themes as soon as i have time.
Splashy now supports:
Progress bar
Text output
Shutdown/Reboot
Still working on resume/suspend and "verbose on error".
Installation tutorial:
-Download, compile and install sysvinit-mod from aur: http://aur.archlinux.org/packages.php?ID=16445
-Remove your old initscripts or initscripts-splash package, remember to back /etc/rc.conf and /etc/inittab before.
-Download, build and install initscripts-splash from http://slexiw.netsons.org/files/initscr … ash.tar.gz
-Download, build and install splashy from http://slexiw.netsons.org/files/splashy.tar.gz
-Download, build and install splashy-themes from http://slexiw.netsons.org/files/splashy-themes.tar.gz
-You may want to restore your old /etc/rc.conf and /etc/inittab now.
-Add SPLASH="splashy" to the end of /etc/rc.conf.
-Edit /etc/splashy/config.xml to select the theme you want (to list the installed themes do "ls /usr/share/splashy/themes/", use the directory name as the theme name).
-Add the "splashy" hook to /etc/mkinitcpio.conf (mine is after v86d and before autodetect)
-Rebuild your initramfs: mkinitcpio -g /boot/kernel26.img
-Add "splash" to the kernel command line, if you are not using uvesafb (v86d hook) add vga=791 too. You should also add "quiet".
If you are still confused follow this guide: http://wiki.archlinux.org/index.php/Splashy
Looking for suggestions, bug reports and patches!
Thank you for reading this, you've done what i couldn't do, i can't believe i wrote all that cr*p.
Last edited by lexiw (2008-05-29 15:28:49)
Offline
WOW great job im gonna test it
dovie andi se tovya sagain
Offline
Oh snap, I just purged the old splashy from my system due to alot of those issues, gonna pull it down and try it out, thanks heaps
Offline
it works great
edit it works great on my laptop on my desktop however the backgrounds in the themes wont show
Last edited by INCSlayer (2008-05-22 10:42:23)
dovie andi se tovya sagain
Offline
it works great
edit it works great on my laptop on my desktop however the backgrounds in the themes wont show
Can you see the progress bar? Does it works correctly during the shutdown?
Offline
yea it works it turns out after some testing that the fault was in uvesafb apparently if i run it then i dont get a background with splashy but if i dont run it everything works fine kinda weird but not a problem for me
dovie andi se tovya sagain
Offline
It works perfectly for me, great job! I had actually just recently given up on arch's splash packages but this made my morning
Offline
Give this man a cigar.
This is exactly the kind of initiative that Arch promotes its users to take; Patches Welcome!
Well done.
Wiki page next....(?)
Offline
This looks good. You might want to contact the maintainer of splashy in the AUR (user angvp). He is actually applying to be a trusted user and is interested in bringing splashy to the community repo. I'm sure he would be very interested in this.
Offline
Great job, man. I haven't tried this just yet, because I'm not all that interested in boot splash stuff, but this is a huge boon to the community who has been looking for this sort of stuff for a while.
Three cheers!
Offline
-Integrate the splash system in the official initscripts. If you write a wrapper like start_daemon and stop_daemon to be used in /etc/rc.multi and /etc/rc.shutdown, we can limit the changes to just /etc/rc.d/functions and at least the initscripts-splash will be more maintainable and the whole code more clean.
Now, we've gone through this a couple of times, and I don't actually want to integrate splash SPECIFIC stuff in the initscripts.
However, we have the ability to override functions used by the initscripts. All we need to do is extrapolate out the pieces that you would need so that you can override them.
So, if you would be willing to provide a patch against git (http://projects.archlinux.org/?p=initsc … ;a=summary) which extrapolates the pieces you need, we could get that applied, and you simply need to dump your overriding functions in /etc/rc.d/functions.d/. NOTE: submit the patch to the bug tracker, it will get lost if you just post it on the forums.
Alternatively, you can just tell us (http://bugs.archlinux.org/) which pieces you want extrapolated, but this will take much longer, as I don't think anyone dealing with this stuff is really gung-ho about splash support.
-Patch killall5 to add the support to ignore pids. The patch is really small and the one used by Ubuntu is http://patches.ubuntu.com/s/sysvinit/ex … ids.dpatch. There is a package in AUR that uses a different patch: http://aur.archlinux.org/packages.php?ID=16445. I tested it and so far it worked fine, no problems to be reported.
Why do we need a patched killall5? Splashy gets killed early during the shutdown process and the whole purpose of having a splash system is defeated. Currently Splashy cannot handle the reboot/shutdown.
This seems a little silly to me. I'm sure there's 10 or 20 other ways you could implement the same functionality without needing to patch a quasi-critical binary just for splash support. The patch affects all users. Splashy does not.
Offline
yea it works it turns out after some testing that the fault was in uvesafb apparently if i run it then i dont get a background with splashy but if i dont run it everything works fine kinda weird but not a problem for me
I know, uvesafb sometimes just doesn't work. Once in a while it fails to load for me.
Give this man a cigar.
This is exactly the kind of initiative that Arch promotes its users to take; Patches Welcome!
Well done.
Wiki page next....(?)
Thank you very much
This looks good. You might want to contact the maintainer of splashy in the AUR (user angvp). He is actually applying to be a trusted user and is interested in bringing splashy to the community repo. I'm sure he would be very interested in this.
I will as soon as my work is ready and the code cleaned up.
Great job, man. I haven't tried this just yet, because I'm not all that interested in boot splash stuff, but this is a huge boon to the community who has been looking for this sort of stuff for a while.
Three cheers!
Thank you! I was frustrated for the lack of splash support in Arch Linux and i hope my work will be useful for the community.
Thank you again guys, those are the posts that keeps me working
Here's a little update for you:
Added support for jpeg images
Added a new theme (archlinux-burn)
Reworked the code a bit to remove some "sleep x" (yeah, it's a bit faster now)
The hook is now more "splashy standard".
A little note about splashy-themes: ideally we would have a theme for every wallpaper from archlinux-wallpaper plus other themes.
If you would like to submit a theme, send me a mail
http://slexiw.netsons.org/files/initscr … ash.tar.gz
http://slexiw.netsons.org/files/splashy.tar.gz
http://slexiw.netsons.org/files/splashy-themes.tar.gz
ReDownload, ReBuild and ReInstall the three packages, edit your /etc/splashy/config.xml to select a theme (remember that *-43 themes are for 4:3 screens), rebuild your initramfs and enjoy
Offline
lexiw wrote:-Integrate the splash system in the official initscripts. If you write a wrapper like start_daemon and stop_daemon to be used in /etc/rc.multi and /etc/rc.shutdown, we can limit the changes to just /etc/rc.d/functions and at least the initscripts-splash will be more maintainable and the whole code more clean.
Now, we've gone through this a couple of times, and I don't actually want to integrate splash SPECIFIC stuff in the initscripts.
However, we have the ability to override functions used by the initscripts. All we need to do is extrapolate out the pieces that you would need so that you can override them.
So, if you would be willing to provide a patch against git (http://projects.archlinux.org/?p=initsc … ;a=summary) which extrapolates the pieces you need, we could get that applied, and you simply need to dump your overriding functions in /etc/rc.d/functions.d/. NOTE: submit the patch to the bug tracker, it will get lost if you just post it on the forums.
Alternatively, you can just tell us (http://bugs.archlinux.org/) which pieces you want extrapolated, but this will take much longer, as I don't think anyone dealing with this stuff is really gung-ho about splash support.
I will probably provide a patch after i studied the code a little deeper The /etc/rc.d/functions.d/ solution seems the right way to implement it.
lexiw wrote:-Patch killall5 to add the support to ignore pids. The patch is really small and the one used by Ubuntu is http://patches.ubuntu.com/s/sysvinit/ex … ids.dpatch. There is a package in AUR that uses a different patch: http://aur.archlinux.org/packages.php?ID=16445. I tested it and so far it worked fine, no problems to be reported.
Why do we need a patched killall5? Splashy gets killed early during the shutdown process and the whole purpose of having a splash system is defeated. Currently Splashy cannot handle the reboot/shutdown.This seems a little silly to me. I'm sure there's 10 or 20 other ways you could implement the same functionality without needing to patch a quasi-critical binary just for splash support. The patch affects all users. Splashy does not.
I could not find an alternative solution by myself, as i stated my Linux knowledge isn't more than average. If you could provide me some hints I'll be happy to do some further research on the issue and provide a patch. I'll be glad to drop the sysvinit-mod dependency.
Without the right know-how i just went the "mainstream way" and did what Debian/Ubuntu did.
Edit:
I didn't know you could ovveride functions, this will be a great boost for the initscripts-splash project Thank you!
Last edited by lexiw (2008-05-22 17:35:15)
Offline
Have you provided already a PKGBUILD or instructions for installing?
http://slexiw.netsons.org/files/initscr … ash.tar.gz
http://slexiw.netsons.org/files/splashy.tar.gz
http://slexiw.netsons.org/files/splashy-themes.tar.gzReDownload, ReBuild and ReInstall the three packages, edit your /etc/splashy/config.xml to select a theme (remember that *-43 themes are for 4:3 screens), rebuild your initramfs and enjoy smile
Because that's a bit unclear (at least for me)...
Proud Ex-Arch user.
Still an ArchLinux lover though.
Currently on Kubuntu 9.10
Offline
I didn't know you could ovveride functions, this will be a great boost for the initscripts-splash project Thank you!
I just made this change here: http://projects.archlinux.org/?p=initsc … 46040bf089
It makes me feel dumb for implementing it poorly to begin with. The problem with the original way was that it required rc.d daemons to call source_functions
They no longer have to
Offline
Have you provided already a PKGBUILD or instructions for installing?
http://slexiw.netsons.org/files/initscr … ash.tar.gz
http://slexiw.netsons.org/files/splashy.tar.gz
http://slexiw.netsons.org/files/splashy-themes.tar.gzReDownload, ReBuild and ReInstall the three packages, edit your /etc/splashy/config.xml to select a theme (remember that *-43 themes are for 4:3 screens), rebuild your initramfs and enjoy smile
Because that's a bit unclear (at least for me)...
Yes, in the first post. The tarballs containes all the files needed to build the packages.
I just made this change here: http://projects.archlinux.org/?p=initsc … 46040bf089
It makes me feel dumb for implementing it poorly to begin with. The problem with the original way was that it required rc.d daemons to call source_functions
They no longer have to
Wow, the same thing i did today and that i was going to request in the bug tracker. That's awesome
Offline
Yes, in the first post. The tarballs containes all the files needed to build the packages.
Do you mind to update the instructions on the first post (since i believe you have already made some importan changes)?
Proud Ex-Arch user.
Still an ArchLinux lover though.
Currently on Kubuntu 9.10
Offline
I'll be glad to drop the sysvinit-mod dependency.
ohhh, please forget it I thought you changed something
Proud Ex-Arch user.
Still an ArchLinux lover though.
Currently on Kubuntu 9.10
Offline
The whole thing works perfectly on my system Thank you very much! Am I right in thinking that these changes are being included in the distro in the near future?
Offline
Looks like the splashy-themes md5sum in the PKGBUILD is incorrect (hasn't been updated).
Offline
Looks like the splashy-themes md5sum in the PKGBUILD is incorrect (hasn't been updated).
Yeah, I'm working hard on splashy/initscripts-splash now. I reworked the whole code (once again) to use /etc/rc.d/functions.d/ but I still can't decide how to handle daemons correctly. There are 2 different behaviors, boot and shutdown are different.
1) During boot some daemons could start other daemons (ie hal/dbus).
2) During shutdown the DAEMONS array is different from "ls /var/run/daemons/" thanks to problem (1) and because some daemons aren't daemons at all (ie microcode)
So:
1) During boot i can't use both the DAEMONS list (to count the daemons) AND the stat_busy/stat_done of the daemons to increase the progress bar. I must patch rc.multi to fix the problem.
2) During shutdown i can use "ls /var/run/daemons/" to get a correct daemons count but if i use stat_busy/stat_done to increase the progress bar the boot will act weird (for the problem 1). I still can't use stat_busy/stat_done with "ls /var/run/daemons/" because microcode isn't in that list but it's still in the DAEMONS array and thus get stopped. The actual fix is to patch rc.shutdown.
If i don't find a clean solution I'll send to the devs a patch to add 3 wrapper functions to /etc/rc.d/functions.
Something like this in /etc/rc.d/functions to be used in /etc/rc.multi and /etc/rc.shutdown:
start_daemon() {
/etc/rc.d/$@ start
}
stop_daemon() {
/etc/rc.d/$@ stop
}
start_daemon_bkgd() {
stat_bkgd "Starting $@"
(/etc/rc.d/$@ start) &>/dev/null
}
I will later override these functions in a /etc/rc.d/function.d/ script. I'm still not sure about this solution, i think i need more brainstorming.
Right now the initscripts are barely touched and thus the dependency on initscripts-splash will probably dropped (YAY!). When the daemons problem is solved i will probably fill a feature request if needed.
Last edited by lexiw (2008-05-23 00:42:52)
Offline
This is awesome. Gives this man your first born child. I've been wanting this for a while. I was a bit more leaned to fbsplash since with kernel26-ice since it can make your ttys look awesome. But, I don't care for it as much now. You only use tty1-6 when X is broken. However, I think USplash is better. Since Ubuntu is so popular, there are many gorgeous USPLASH themes. Maybe a tool can be written or it already exists that can convert usplash themes to splashy.
Now, we need uswsusp-splashy. It's a bit tricky to compile it. I was able to make a uswsusp-fbsplash package after a lot of hell. I failed to create uswsusp-splashy. At the time, I have tried, it bitched about libsplashy.
Offline
This is awesome. First time I've actually got my system to boot with splashscreens.
When I try to use archlinux-burn I'm getting image not found errors when I mkinitcpio. It seems the images are not there or corrupted. (I've reinstalled the package, so it's not a corrupt download.)
Also, I don't have a background when I boot up like the one I get when I shut down. (I just get the archlinux logo at the top left with the normal boot text) I'm not sure if this is how it is supposed to be or not.
Last edited by Statix (2008-05-23 01:02:54)
Madly in love with Arch64, Openbox, DotA, and of course... penguins!
Happy to help if you're not a Help Vampire. Use your wonderful resources like ArchWiki, Google, and our wonderful search page.
Offline
This is awesome. First time I've actually got my system to boot with splashscreens.
When I try to use archlinux-burn I'm getting image not found errors when I mkinitcpio. It seems the images are not there or corrupted. (I've reinstalled the package, so it's not a corrupt download.)
Also, I don't have a background when I boot up like the one I get when I shut down. (I just get the archlinux logo at the top left with the normal boot text) I'm not sure if this is how it is supposed to be or not.
Have you upgraded just splashy-boot after my last update (you need splashy with jpeg support)? Have you correctly installed arch-wallpaper? Tell me the output of "ls -l /usr/share/splashy/themes/archlinux-burn/" and try if setting the default theme works
Now, we need uswsusp-splashy. It's a bit tricky to compile it. I was able to make a uswsusp-fbsplash package after a lot of hell. I failed to create uswsusp-splashy. At the time, I have tried, it bitched about libsplashy.
It will be my next step, but looking at splashy's git there seems to be an imminent 0.4 release.
Tomorrow there will be an update (and i hope, the final one) to the packages.
Offline
This is awesome. Gives this man your first born child. I've been wanting this for a while. I was a bit more leaned to fbsplash since with kernel26-ice since it can make your ttys look awesome. But, I don't care for it as much now. You only use tty1-6 when X is broken. However, I think USplash is better. Since Ubuntu is so popular, there are many gorgeous USPLASH themes. Maybe a tool can be written or it already exists that can convert usplash themes to splashy.
Now, we need uswsusp-splashy. It's a bit tricky to compile it. I was able to make a uswsusp-fbsplash package after a lot of hell. I failed to create uswsusp-splashy. At the time, I have tried, it bitched about libsplashy.
Well actually USPLASH isn't better, but it is more popular... maybe if the upstreams for splashy an usplash merged both proyects things would be great...
Proud Ex-Arch user.
Still an ArchLinux lover though.
Currently on Kubuntu 9.10
Offline