免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 668 | 回复: 0
打印 上一主题 下一主题

Change boot logo [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-15 15:44 |只看该作者 |倒序浏览

                                                                How to change Linux boot logo
from http://gentoo-wiki.com/HOWTO_Linux_Logo_Hack
As far as I know, this is the least "hacky" way you can get a custom
logo. It preserves all the previous available logos, and lets you
choose between them in the Kernel config.
It requires you to edit three files in the /usr/src/linux/drivers/video/logo
directory, and (obviously) create the image(s) you want to appear. It
only covers 224-colour logos - if you want 16-colour or black&white
ones, you'll have to figure that out on your own. I did all this
yesterday, and the kernel booted fine this morning with my new logo. I
changed
Tux
to
Larry
,
so that's the example I'll be using throughout this tutorial. Of course
you can change this to whatever you want - just make sure you're
consistant with your names (eg. don't accidentally switch from "LARRY"
to "BARRY" for one file).
OK, let's get down to it.
  • Create your image, (I used the GIMP), and save it as a PNG
    (mine's called larry.png). It might be a good idea to convert it to
    indexed (223 colours) first - this is going to happen later anyway, so
    you may as well get it how you like it now (whether you want it
    dithered, any custom palettes, etc). I should also point out that the
    default images are all 80x80 pixels, but you don't have to abide by
    that. As far as I know, you can go as big as you want (within reason).

  • Change to root, and put yourself in the directory we're working in:

$su -
$cd /usr/src/linux/drivers/video/logo/
  • Convert the image with the netpbm tools (media-libs/netpbm):

$pngtopnm /path/to/larry.png | ppmquant -fs 223 | pnmtoplainpnm > logo_larry_clut224.ppm
Don't worry if the existing images seem to have more than one file
each - the *.c and *.o ones get created automatically when you compile
the kernel.
  • Open Kconfig in your favourite editor, and insert the following section (editing the first two lines as appropriate):

File: /usr/src/linux/drivers/video/logo/Kconfig
config LOGO_LARRY_CLUT224
        bool "Gentoo-ised 224-colour logo"
        depends on LOGO
        default y
I put it underneath the entry for LOGO_LINUX_CLUT224, so it'll appear below the default logos in the kernel setup.
  • Open logo.c in your favourite editor, and insert the
    following sections. Everything's a bit more cosily packed in this file,
    so make sure you get them in the right place. Again, change everything
    that says "larry" to your chosen name. The bit between /* these
    parentheses */ is a comment, and doesn't make any difference. I changed
    it anyway.

File: /usr/src/linux/drivers/video/logo/logo.c
Add this to the block of similar definitions at the top of the file:
extern const struct linux_logo logo_larry_clut224;
Add this to the section headed by "if (depth >= 8) {":
#ifdef CONFIG_LOGO_LARRY_CLUT224
                /* Gentoo-ised logo */
                logo = &logo_larry_clut224;
#endif
  • Open Makefile ...blahblahblah... and add the following line to that big block of definitions at the top.  You know the drill by now.

File: /usr/src/linux/drivers/video/logo/Makefile
obj-$(CONFIG_LOGO_LARRY_CLUT224)        += logo_larry_clut224.o
  • You should be able to repeat those steps however many times you like if you want to add more than one image.

  • Save all the files, cd down to /usr/src/linux, and follow your
    normal kernel-rolling procedure - making sure that you select your new
    image in the configuration:

Linux Kernel Configuration: Kernel 2.6
Device Drivers ->
    Graphics Support ->
        
  • Support for frame buffer devices
            
  • VESA VGA graphics support
                VESA driver type ->
            Console display driver support ->
                
  • Video mode selection support
                 Framebuffer Console support
            Logo configuration->
                
  • Bootup logo
                [ ]
                
  • Your Custom Logo
    ...and run make.  (There is no need to run make modules_install.)
    Finishing Up
    This section is common to both methods.
    • Stick your newly customised kernel in its usual place under /boot

    • Make sure you've got a decent framebuffer by adding vga=0x318 or
      similar
      to your kernel's command-line:

    NOTE: You can ignore this step if you selected vesafb-tng under "VESA driver type".
    File: /boot/grub/menu.lst or /boot/grub/grub.conf
    kernel (hd0,0)/vmlinuz root=/dev/sda3 vga=0x318
    • When you boot into the new kernel, you should see the fruit of your labours!

                   
                   
                   
                   
                   
                   
                   
                   
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/81377/showart_1302841.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP