martes, 10 de mayo de 2011

Cómo instalar correctamente un BootSplash .. I

Para todos aquellos que venimos de distros como Ubuntu, una de las cosas que echamos de menos es un BootSplash. 

En principio, esto solo sirve para "tapar" los errores al cargar daemons que podamos tener, pero mientras aprendemos y no esta lección... instalaremos uno.

A mi, personalmente, me gustó mas el funcionamiento de fbsplash, pero también disponemos de plymouth. Ambos están en AUR. Vamos a empezar con:

Plymouth:

Lo primero será instalar el paquete. En la wiki nos recomiendan instalar plymouth-git, pero yo, después de tener varios errores, recomiendo instalar plymout.

Una cosa, debemos tener KMS activado, así que si nuestra tarjeta (o el driver) no soporta KMS, no podremos instalar plymouth. El driver libre de ati (radeon) e Intel tienen activado el KMS por defecto desde el núcleo 2.6.32.

Para saber si tenemos KMS activado, ejecutar: lsmod | grep kms debería devolver algo así:

drm_kms_helper 26624 1 radeon
drm 173492 5 radeon,ttm,drm_kms_helper
i2c_core 18740 7 max6650,videodev,i2c_piix4,radeon,drm_kms_helper


En mi caso, tengo el arranque con  runlevel 5, es decir, el método de inittab para el login gráfico, en vez de ejecutar slim, gdm o kdm como daemos, sería conveniente establecer el arranque así.

Una de las cosas importantes una vez instalado, es añadir unos Hooks al fichero /etc/mkinitcpio.conf, para ello lo editaremos como administrador y añadiremos plymouth justo después "udev autodetect", debería quedar así:

HOOKS="base udev autodetect plymouth ..."

Una cosa que no viene en wiki es que, además, hay que añadir a la línea modules el driver de nuestra tarjeta, debiendo quedar, en el caso de ser radeon, así: 

MODULES="radeon" 

Lo normal es que no haya nada mas.

Ahora seleccionaremos el tema para plymouth, disponemos de 4:
 fade-in, glow, solar y spinfinty.

Como administrador, ejecutaremos: 

plymouth-set-default-theme nombre_tema 

Siendo nombre_tema uno de los cuatro anteriores. 

Regeneramos la imagen del kernel, como administrador: 

mkinitcpio -p kernel26

Ahora, si queremos probar el tema, nos vamos al tty2, y ejecutamos, como administrador: 

plymouthd 
plymouth --show-splash

Para salir de splash, en otra tty, ejecutamos como administrador: 

plymouth --quit

Cada vez que cambiemos el tema, con plymouth-set-default, debemos regenerar la imagen del kernel.


Una vez seleccionado el tema, solo nos queda añadir a la línea del kernel de la entrada del /boot/grub/menu.lst de grub quiet splash, debería quedar así:

kernel /vmlinuz26 root=/dev/disk/by-uuid/xxxx ro quiet splash

No debe aparecer ninguna configuración con VGA="XXX" en el kernel.

Al fichero /etc/rc.local hay que añadirle una línea con:

/bin/plymouth quit --retain-splash

Al reiniciar, deberemos tener nuestro BootSplash funcionando.

Diferencias con respecto al artículo de wiki :
  1. Se añade el driver a la línea modules del fichero /etc/mkinicpio.conf.
  2. Utilizar el paquete plymouth en lugar de plymouth-git.
  3. Probar el tema despues de crear la imagen del kernel y haber reiniciado. 


2 comentarios:

  1. Interesante artículo...

    Además veo que tienes al marica de Raist también como seguidor.

    XDDDDDDDD

    Saludos - Suerte.

    ResponderEliminar