Bootsplash com uPower

Publicado por Alice Woodstock em 14/06/2006

[ Hits: 11.343 ]

 


Bootsplash com uPower



Comecei a ter problemas com o uSplash no Ubuntu Linux depois de compilar um kernel diferente do que vem na distribuição (custom kernel). O uSplash deixou de funcionar. Depois de ver algumas dicas, descobri que funcionaria se eu fizesse o .deb. O problema é que ao fazer isso eu perderia as otimizações para minha máquina, já que o método consistia em pegar a .config padrão do sistema. Então, decidi analizar outras soluções.

O Bootsplash funciona em espaço do kernel, mas como estou estudando sobre criação de módulos, não seria bom colocar um patch estranho no kernel oficial. Duas outras me pareceram interessantes:
  • Splashy: Funciona razoavelmente bem, tem um pacote com vários temas. O problema é que na distribuição Ubuntu/Kubuntu ele coloca duas entradas no init, fazendo com que o Splashy rode duas vezes. Tirando uma delas ele não roda até o final, ficando uma boa parte ainda mostrando textos na tela.
  • uPower: Foi a solução que melhor se adaptou ao Ubuntu, já que foi desenvolvida pra ele. Apesar de ter poucos temas, pode-se facilmente converter o tema do Splashy para uPower, como explicarei mais adiante.

Instalando e configurando o uPower


Várias coisas já estão explicadas no site, mas reproduzirei aqui algumas poucas linhas para quem tem dificuldade em inglês:

Configure o apt-get (ou synaptic) para usar o repositório deb:

http://repo.nanofreesoft.org/ breezy main

Embora o site fale para usar o repositório "http://repo.nanofreesoft.org/ubuntu breezy main",

A versão mais nova está no primeiro. De qualquer forma, o segundo é interessante para puxar o tema ubuntu-theme-shadow, um ótimo tema para uPower. O site aconselha remover o pacote uSplash e a imagem do kernel. Como eu estava usando um custom kernel, após remover o uSplash e logo após tudo instalado, com o comando:

$ sudo update-initramfs -u

E refiz a imagem do kernel.

Depois de instalado, deve-se editar a linha do gerenciador de boot (LiLo ou GRUB) para o padrão VGA (vga=791 para 1024x768). Preste atenção se seu kernel suporta framebuffer, não aparecendo nenhum texto na tela após o boot, é preciso esperar o sistema entrar em modo gráfico e refazer o initramfs colocando o módulo fbcon para rodar na inicialização, fazendo o seguinte:

Como root, edite o arquivo /etc/mkinitramfs/modules acrescentando "fbcon" na última linha do arquivo. Dê o comando "sudo update-initramfs -u" para atualizar o initrd. O módulo fbcon carrega o terminal no framebuffer. Já que usei um kernel diferente do sistema, ele não era carregado automaticamente. Não se esqueça de dar o comando lilo (ou grub-install) cada vez que fizer uma alteração no lilo.conf (ou menu.lst no caso do GRUB) ou no initrd.

Depois de tudo isso, ao reiniciar o sistema, você deve ver na tela o bootsplash do uPower assim que o sistema carregar o init.

Traduzindo os temas do splashy para o uPower


Pode ser interessante instalar os pacotes splashy e splashy-themes de "deb http://splashy.alioth.debian.org/debian unstable main". Ele automaticamente elimina os pacotes do uSplash facilitando a instalação e instala o Splashy. Depois basta remover o Splashy da inicialização: "sudo update-rc.d -f splashy-init remove".

Depois de tudo instalado, os temas do Splashy estarão em /etc/splashy. Encontre o tema que deseja converter e edite o arquivo config.xml substituindo a palavra por e por . Apague todas as linhas entre (inicial minúscula) e . Se quiser preservar os dados, coloque em um arquivo texto (Readme) e deixe junto com o tema. Coloque as iniciais de e para maiúsculo, ficando e . Faça a mesma coisa nas descrições de imagem, e , trocando para e . O resto que estiver escrito embaixo de (com excessão do ) você pode apagar. Depois, é so transferir o diretório para o caminho /etc/upower:

$ sudo cp -R [nome do tema] /etc/upower

E editar o arquivo global-config.xml, substituindo default pelo nome do tema editado. A tela de shutdown (encerramento) pode não ficar idêntica à do Splashy, já que o uPower não suporta barra de progresso no encerramento.

Para testar o tema num dos terminais em modo texto (Ctrl+Alt+F1), digite:

$ sudo upower boot && /etc/init.d/upower10 start

Aparecendo o tema e preenchendo a barra em 10 porcento, quer dizer que tudo deu certo. Senão, é melhor conferir se não há erros em nenhum dos arquivos XML editados.

Links


Outras dicas deste autor

Transformando o CentOS numa distro desktop

Leitura recomendada

"Propriedade intelectual" e interesse público

BASIC LINUX: Suporte a outras linguagens

Debian - Descobrindo a que pacote determinado arquivo pertence

Problema de ruído na placa de som on-board (VIA 8235)

Um painel Tint2 mais completo

  

Comentários
[1] Comentário enviado por nick em 15/06/2006 - 16:56h

Cade os Screenshotz?

Fazer no escuro nao dá....

[2] Comentário enviado por tenchi em 15/06/2006 - 23:11h

Ae kra, vc por acaso sabe como ativar o bootsplash do ubuntu no lilo?
Eh o seguinte:
Eu uso o slackware (com o lilo), mas instalei o ubuntu (5.10) num espaço livre do hd. Mas ele (ubuntu) instala o grub como boot manager. Mas eu gosto de usar o lilo, mas quando vou iniciar o ubuntu a partir do lilo, não posso usar o initrd q vem com o tema do bootsplash, q ele não carrega o sistema. O ubuntu só carrega corretamente sem o splash...
Vc sabe como resolver isso? valew.

[3] Comentário enviado por zazeri em 19/06/2006 - 17:37h

Oi pessoal !
Como muitos usuários Debian e derivados, no meu caso Ubuntu Breezy Badger(5.10) kernel 2.6.12-9-686, também quis instalar bootsplash, e assim me livrar do usplash, que apesar de menos feio que ver as mensagens e numeros, é muito pobrezinho! :P Segui o artigo do Morimoto, que dizia:
baixar patch em www.bootsplash.de/files (baixei bootsplash-3.1.6-2.6.12.diff);
recompilar kernel (make mrproper, make dep, make clean, make xconfig, make bzImage, make modules, make modules install);
instalar binários do bootsplash, etc...
Só que logo na recompilação, em make bzImage, tive problemas. Ele dizia que um arquivo XXXX chamava outro que não existia. (Não me lembro o nome deles!)
Com isso desisti de habilitar o módulo para bootsplash, pois acho que o patch pode estar bugado!
Mas decidi compilá-lo para otimizar o processador de PENTIUM PRO para PENTIUM IV, já que meu proc é P IV 2.8GHz, e habilitar write para partição NTFS. Para isso, o processo de recompilação ocorreu normalmente, a menos de vários Warnings que apareceram, mas ao fim de "make modules install" apareceu:
Root device is (8,6)
Boot sector is 512 bytes
Setup is 1023 bytes
System is 1225 bytes
kernel: arch/i386/boot/bzImage is ready,
e em /boot, foram criados vmlinuz-2.6.12, System-map-2.6.12 e config-2.6.12.
Após conferir isso, fui no lilo.config e editei:
image=/boot/vmlinuz-2.6.12
root=/dev/sda6
read-only
Ao reiniciar para testar o sistema com o novo kernel, a máquina acusou:
VFS: Cannot open root device "806" or unknown (8,6)
Please append a correct "root=" boot option
kernel panic-not spycing:VFS:Unable to mount root fs on unknown-block (8,6).
Ai reiniciei com o kernel antigo, que a partir dai começou a enroscar em "Mounting root file system", ficava ficava, mas no fim desenroscava e inicializava com sucesso. Com todas essas decepções resolvi deletar esse novo kernel. Fui em /boot e deletei os arquivos criados com a recompilação, tomando cuidado pra não apagar os já existentes e fui em /usr/src/linux-source-2.6.12/ e fiz make mrproper, make dep, make clean e voltei o lilo-config para o estado anterior.
Reiniciei a máquina novamente, e novamente enroscava em "Mounting root file system". Após o fim do reboot, tive a "genial" idéia de reconfigurar a imagem, ou seja, dei dpkg-reconfigure linux-image-2.6.12-9-686 e depois lilo.
Depois disso, reiniciei pela milionésima vez, e agora a merda estava feita, a máquina não carregava mais o Ubuntu e acusava:
Kernel panic-not syncing : Attempted to kill init!

Gente, como faço para salvar meu Ubuntuzinho!!! Nele tenho programas que não tenho mais como obter o código novamente!
Alguém pode me ajudar a recuperá-lo??? O que tenho que fazer?
Obrigado !!!!!

[4] Comentário enviado por derthunter em 09/07/2006 - 03:03h

Hum, tenchi você usou a versão certa da lilo? Eu já a usei e nunca tive problemas. Tenta dar o comando sudo update-initramfs -a e tentar de novo usar o arquivo initrd no lilo. Quanto ao zazeri já o respondi por e-mail, qualquer dúvida estou a disposição.

[5] Comentário enviado por removido em 18/03/2008 - 13:51h

Olá,
Estou com o mesmo problema do zazeri;
Será que poderia me enviar a resposta também, ou então postar aqui para que todos possam ver?

Obrigada (:



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts