What's Splashy?
Splashy是什么?
Splashy is a next generation bootsplash for linux systems. It needs not patches and it's installed like a normal package, make your boot process eye-candy with Splashy!
Splashy是基于Linux系统的下一代的Boot Splash。它不需要打补丁而且就象正常的包一样安装。用Splashy能使你的启动过程变得赏心悦目。
News
新闻
* 13/04 : Splashy 0.1 relased!
* 13/04 : Splashy 0.1 发布
* 12/04 : Team announce that Splashy-0.1 will be relased tomorrow.
* 12/04 : 项目组宣布Splashy-0.1将于明天发布
* 11/04 : Changed name to Splashy instead of Usplash because we don't match ubuntu specification about Usplash architetture.
* 11/04 : 将Usplash改名为Splashy,因为我们不能符合ubuntu对Usplash体系结构的说明
* 31/03 : wrote xml_parser for the xml configuration file
* 31/03 : 为xml配置文件编写xml_parser
* 26/03 : Fixed a little dependence bug with lib++dfb
* 26/03 : 修复关于lib++dfb依赖关系的小Bug
* 24/03 : Shutdown boot process available ( usplash bootup | usplash bootdown )
* 24/03 : 完成关闭引导进程( usplash bootup | usplash bootdown )
* 21/03 : Officially relased usplash-0.1preview package
* 21/03 : 官方usplash-0.1预览包发布
* 16/03 : Succesfully implemented F2 exit feature: just press F2 to exit and switch to verbose mode.
* 16/03 : 成功应用F2退出功能:按F2退出并切换到详细模式
* 13/03 : Done a test package using libdirectfb and lib++dfb. It should work on any graphic card.
* 13/03 : 完成使用libdirectfb和lib++dfb测试包,它能工作在任何显卡上。
* 8/03 : Developers feels themselves narrow inside the magick++ image library... looking for a library designed for framebuffers
* 8/03 : 开发者感觉自己使用magick++图形库过于狭隘,开始寻找为帧缓冲设计的库
* 8/03 : Usplash 0.1 alpha2 relased!
* 8/03 : Usplash 0.1 alpha2 发布
* 7/03 : Thanks for people at #ubuntu-devel a big hole was found and fixed, it will be included on alpha2 relase soon.
* 7/03 : 感谢 #ubuntu-devel的朋友找到并修复了一个大的漏洞,它将包含在alpha2版本中
* 5/03 : Usplash 0.1-alpha relased, tested successfully on ubuntu hoary 1024*768.
* 5/03 : Usplash 0.1-alpha 发布,在ubuntu hoary1024*768测试成功
* 28/02 : Implemented bars.
* 28/02 : 进度条被应用.
* 18/02 : New object oriented approach and first image draw.
* 18/02 : 新的面向对象研究并显示了第一张图片
[/Edit]
Download Splashy-0.1
下载Splashy-0.1
Splashy-01 have been relased! read the announce at this page
Splashy-01已经发布!请阅读本页公告
(http://kalatlug.nanofreesoft.org/Projects/splashy/relases/splashy-0.1-announce.txt)
NOTE: You must remove the bad packaged lib++dfb and libdirectfb, also usplash should be removed.
注意:您必须删除糟糕的lib++dfb和libdirectfb包, usplash也将被删除
You need to follow these steps to install Splashy:
您需要通过下列步骤安装Splashy:
For ubuntu hoary/warty or debian Sid:
对于ubuntu hoary/warty或debian Sid而言:
* download Splashy (http://kalatlug.nanofreesoft.org/Projects/splashy/relases/splashy_0.1-5_i386.deb), then download the libraries: libsirectfb-0.9-22 (http://kalatlug.nanofreesoft.org/Projects/splashy/libraries/libdirectfb/libdirectfb-0.9-22_0.9.22-1_i386.deb) and lib++dfb-0.9-22 (http://kalatlug.nanofreesoft.org/Projects/splashy/libraries/lib++dfb/lib++dfb-0.9-22_0.9.22-1_i386.deb). You have downloaded 3 packages now.
* 下载Splashy (http://kalatlug.nanofreesoft.org/Projects/splashy/relases/splashy_0.1-5_i386.deb), 然后下载libsirectfb-0.9-22库文件包(http: //kalatlug.nanofreesoft.org/Projects/splashy/libraries/libdirectfb/libdirectfb-0.9-22_0.9.22-1_i386.deb) 和lib++dfb-0.9-22库文件包
(http://kalatlug.nanofreesoft.org/Projects/splashy/libraries/lib++dfb/lib++dfb-0.9-22_0.9.22-1_i386.deb). 现在您已经下载了三个包了。
* put them in a directory and do: sudo dpkg -i *.deb
把它们放在一个目录下,并运行:sudo dpkg -i *.deb
Next time you will boot (or shutdow) the computer you will see a nice splash screen.
在您下一次启动或关闭计算机时,您就能看到非常漂亮的splash界面了
nb: in some cases Splashy will start to work after the second or third reboot, it's normal, don't worry.
nb:在一些情况下Splashy可能要到第二次或第三次重启时才开始工作,别担心,这是正常现象。
For debian sarge: To install splashy on sarge do this:
对于debian sarge而言:在Sarge上安装Splashy要进行如下操作:
add these lines to ypur sources.list
将下列源添加到您的sources.list文件中
deb http://www.kiskeyix.org/downloads/debian local main
deb-src http://www.kiskeyix.org/downloads/debian local main
And follow the mantra:
并运行下列指令:
apt-get update
apt-get install splashy
A forum is available here (http://kalatlug.nanofreesoft.org/index.php?name=PNphpBB2&file=viewforum&f=7), you can also go to irc.freenode.net at channel #splashy if you need help. Before ask in irc channel please read the faq on this page.
如果您需要帮助可以到论坛(http://kalatlug.nanofreesoft.org/index.php?name= PNphpBB2&file=viewforum&f=7)或到irc.freenode.net的#splashy频道。在IRC频道提问之前请先阅读本页的FAQ。
get the sources (http://kalatlug.nanofreesoft.org/Projects/splashy/) of Splashy-0.1
得到Splashy-0.1的源 (http://kalatlug.nanofreesoft.org/Projects/splashy/)
enjoy!
Please, if you install it and have time send a mail to me at vincenzo.ampolo(at)gmail.com with your informations: CPU, graphic card, kernel version and distribuion name, write also if your /usr partition is in the same partition where / is. It will be added in a white list of supported hardware. thanks
如果您安装了它,麻烦您在有空时发个邮件给我,邮件地址是vincenzo.ampolo(at)gmail.com,并附上您的信息:CPU,显卡,内核版本及发行版名称,也写上您的/usr分区是否与/分区是同一个分区。它将被添加到白皮列表(硬件支持列表)中。谢谢
[edit]
FAQ
[edit]
At about 70-80% of bootin process Splashy goes to verbose mode and shows:
在70-80%的引导进程中,Splashy会进入详细模式,并显示下列信息:
t_kernel_font: Invalid Argument
It's a bug related with the /etc/init.d/console-screen.sh file that does not set the font for framebuffer properly, this bug is unsolved but you can circumnavigate it editing the config.xml at set "autoverboseonerror" to "no"
这是一个Bug,它同/etc/init.d/console-screen.sh脚本文件没有为帧缓冲设置合适的字体有关,该Bug尚未解决,但您可以通过编辑Config.xml文件,将其中的 "autoverboseonerror"设置成"no"来绕过它。
[edit]
I don't see any image at boot time:
我在引导时,没有看到任何图片:
Be sure that you have instaleld libdirectfb-0.9-22 and lib++dfb-0.9-22 and your /usr partition is in / and not on its own. Be sure that your /boot/grub/menu.lst in #nonaltoptions has vga=792, value bigger than 792 is no tested and it could not work. We are working to make Splashy run without any /usr/lib support (compile it statically). This is an unsolved problem.
确认您已经安装了libdirectfb-0.9-22 和 lib++dfb-0.9-22库文件,并且您的/usr分区是在/分区中而非独立分区。确认您的/boot/grub/menu.lst中的 #nonaltoptions项中vga=792,超过792的值并经测试也无法正常运行。我们正在努力使Splashy在没有任何/usr/lib支持(静态编译)的情况下正常运行,该问题尚未解决。
[edit]
when booting i get this error:
当引导时,我得到了这样一个错误:
/lib/lsb/init-functions : file not found
Do
运行
sudo apt-get install lsb-core|lsb
[edit]
Road Map
Splashy-0.2
* Animations
* 动画支持
* initrd-initramfs support
* initrd-initramfs支持
* Handle Fsck running (show progress, surpassing bootsplash)
* Handle Fsck running (显示进度,surpassing bootsplash)
* Fade effect
* 淡入淡出效果
* fsck support
* fsck 支持
Splashy-0.1 ---> relase will exit on 13 April.
Splashy-0.1 ---> 四月十三号发布
* Configuration file in xml greenCheck.gif
* 配置文件使用XML格式 通过测试(greenCheck.gif可能是通过测试的图片文件)
* on i386/amd64, dump available VESA modes and grep for something matching xorg.conf greenCheck.gif
* 在i386/amd64机器上,完成VESA模式转移并能在xorg.conf中匹配搜索 通过测试(这句翻得别扭,主要是对这个不熟,有请高手)
* Verbose mode (with F2 keyword) greenCheck.gif
* 详细模式(通过F2快捷键) 通过测试
* Progressbar support greenCheck.gif
* 进度条支持 通过测试
* Require zero (0) kernel patches greenCheck.gif
* 不要求内核补丁 通过测试
* Fallback to a console in VITURALLY ALL failure cases greenCheck.gif
* VITURALLY ALL失败时回到控制台 通过测试
* Not add more than 10% to boot time (eg. 3 seconds on 30 second boot)greenCheck.gif
* 不超过10%的引导时间延迟(如30秒的引导不会延迟超过3秒) 通过测试
* Cope with 24, 16, 8 bit framebuffers (surpassing bootsplash) (++dfb should do that automatically)greenCheck.gif
*处理24,16,8比特的帧缓冲(surpassing bootsplash)(++dfb会自动进行处理) 通过测试
* Cope with any video-mode size (640x480 .... 1600x900 weird widescreen) (++dfb should do that automatically) greenCheck.gif
* 处理任何尺寸的视频模式(640x480 .... 1600x900超宽屏)(++dfb会自动进行处理) 通过测试
[edit]
How i think about bootsplash (debsplash group idea about usplash)
我是怎样考虑boot splash的(debsplash小组开发usplash的思路)
Second me, a bootsplash different from other should be a bootsplash that works in user mode so i try to develop something that doesn't need to change something in lilo or grub bootloaders and will be 100% init compatible (not touch rc or rcS files as Usplash specification on ubuntu wiki says) As my test confirm it is possible (the main idea, we need still change something to the bootloader). Let me explain how does it work:
boot splash与其他的不同在于它是工作在用户模式下的,我试着去开发一个不需要对lilo或grub引导器进行修改的软件,并且保持对init的100% 兼容(象ubuntu的wiki中对Usplash说明所说的那样不涉及rc或rcS文件)。我的测试验证了它是可行性(主要思路,我们仍然需要修改引导器),让我来说明它是怎样工作的:
* Bootloader starts as normal startup, it sets the framebuffer with the vga=value argument and calls init. Thanks to a smart postinst script the best value to set the framebuffer is done at install time and removed in the unistall sequence.
* 引导器开始正常引导,它设置帧缓冲(vga=值)并调用init。感谢智能postinst脚本能在安装时为帧缓冲自动设置最恰当的值并在卸载工序中删除它。
* Init is called as default (no inittab modification and/or /etc/init.d/rc patch!) the first script that is executed is the S01splashy, that script starts /sbin/splashy in background (that is mounted for first before init).
* init被缺省调用(这里没有修改inittab也没有打/或/etc/init.d/rc补丁)第一个被执行的脚本是S01 splashy,该脚本使得/sbin/splashy在后台运行(在init前被首先挂载)
* Splashy draw a image (that is set by the cml configuration file) fast as possible and read the terminal as a human eye does (Note that is one of the best issue of that approach).
* Splashy尽可能快的显示图片(该图片在cml配置文件中设置)并象人眼所做的那样阅读终端(注意研究显示这是一种最佳方式)(这里也觉得有点别扭,有请高手)
* Splashy upgrades the framebuffer progressbar and makes animations until gdm/xdm is called.
* Splashy 动态更新帧缓冲进度条,直到gdm/xdm被调用。
* When X is called the /dev/tty7 is initialized and the console is switched to it. Splashy, not linked to any console (you are switched to tty7) died 7 seconds after.
* 当X被调用,/dev/tty7初始完成并从控制台切换过来时,Splashy不再链接任何控制台(你已经切换到tty7了),七秒后关闭自身。
So the boot process is completed.
引导过程完成
At shutdown time the process is quite the same:
关闭过程也是一样:
* Splashy is called soon as possbile and it draws a image that replace the text based shutdown process
* Splashy被尽可能快的调用,然后显示图片以替代基于文本的关闭过程
[edit]
Considerations
论述
As You could say, this approach permits to be 100% init compatible and usermode (no ugly initrd/initramfs or patches) and mainly it works like an eye, that looks into the terminal (input) and elaborates these informations (output); this means:
如您所言,该程序允许工作在用户模式下且100%兼容init(没有讨厌的initrd/initramfs或补丁)同时运行起来就象一个注视着终端的眼睛(输入)并对这些信息进行详细说明(输出);这就意味着:
* We can implement everything (animations at certain service and fsck support) without the need to patch anything because we just read the screen!
* 我们能够实现任何东西(对某个服务的动画及fsck的支持)而无需对它们打补丁,因为我们仅仅只是在看屏幕!
* No awful little programs that work like servers and notifiers (that they are closed in their range of input), this means that we use less resources.
* 没有那些可怕的象服务器和通知(它们在它们的输入范围内被关闭)这样的小程序,这就意味着我们使用更少的资源。
* If something goes wrong your system is always bootable, we don't change initramfs or anything, Splashy is just a program.
* 如果有什么地方出错,您的系统也总是可以引导起来,我们并不修改initramfs或其它任何东西,Splashy只是一个程序。
[edit]
White list
白皮列表(硬件支持列表)
Here there is a list of supported video cards, please send me a feedback to vincenzo.ampolo(at)gmail.com or leave a message in the forum (http://kalatlug.nanofreesoft.org/index.php?name=PNphpBB2&file=viewforum&f=7):
下面是支持的显卡列表,请发送反馈到vincenzo.ampolo(at)gmail.com或在论坛(http: //kalatlug.nanofreesoft.org/index.php?name=PNphpBB2&file=viewforum& f=7)上留言
0000:00:02.0 VGA compatible controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
Ati readeon 9200 (but it shoudl work in any model)
0000:01:00.0 VGA compatible controller: VIA Technologies, Inc. VT8378 [S3 UniChrome] Integrated Video (rev 01)
0000:01:00.0 VGA compatible controller: nVidia Corporation NV34M [GeForce FX Go5200] (rev a1)
via KM400
[edit]
meet us
找到我们
The whole development team stay on #splashy channel of irc.freenode.net, you can go there and meet us.
所有的开发人员都在irc.freenode.net的#splashy频道,您可以在那儿找到我们
--Vincenzo Ampolo 14:27, 12 Apr 2005 (CEST)