Plymouth (Português)
Plymouth é um projeto da Fedora e agora listado entre os recursos oficiais do freedesktop.org que fornece um processo de inicialização gráfico sem cintilação. Baseia-se no modo de configuração do kernel (KMS) para definir uma resolução nativa da tela assim que possível, fornecendo então uma tela de boas vindas atrativa, até chegar no gerenciador de login.
Preparação
Plymouth usa principalmente KMS (Kernel Mode Setting) para exibir imagens. Em sistemas EFI/UEFI, plymouth pode utilizar o framebuffer EFI. Se você não puder usar KMS (p.ex., porque está usando um driver proprietário) ou se você não quiser usar um framebuffer EFI, considere usar Uvesafb, pois ele funciona com resoluções widescreen.
Caso não tenha KMS nem framebuffer, plymouth entrará recorrerá ao modo de texto.
Instalação
Plymouth está disponível através do AUR: o pacote estável é plymouth e a versão de desenvolvimento é plymouth-gitAUR.
Se também usa o GDM, você deve também instalar o gdm-plymouthAUR[link quebrado: package not found], que compila gdm juntamente com o suporte a plymouth.
O hook do plymouth
Adicione plymouth
ao vetor HOOKS
em mkinitcpio.conf. Tem que ser adicionado após base
e udev
para funcionar:
/etc/mkinitcpio.conf
HOOKS=(base udev plymouth [...])
- Se usa criptografia no disco rígido com o hook
encrypt
, você deve substituir o hookencrypt
complymouth-encrypt
e adicioná-lo após o hookplymouth
para conseguir inserir senhas quando solicitado pelo TTY. - O uso dos parâmetros
PARTUUID
ouPARTLABEL
emcryptdevice=
não funciona com o hookplymouth-encrypt
. - Para uma raiz ZFS criptografada, você deve instalar plymouth-zfsAUR e substituir o hook
zfs
complymouth-zfs
Após adicionar o hook plymouth-encrypt
, se a entrada for para plano de fundo em modo de texto em vez de ir para a solicitação de senha, é necessário adicionar o driver gráfico (kernel) ao seu initramfs. Por exemplo, se estiver usando intel:
/etc/mkinitcpio.conf
MODULES=(i915 [...])
Hook alternativo Plymouth (systemd)
Se o seu mkinitcpio.conf inclui o hook systemd
, então substitua plymouth
por sd-plymouth
. Além disso, se utilizar criptografia nos discos rígidos, utilize sd-encrypt
em vez de encrypt
ou de plymouth-encrypt
/etc/mkinitcpio.conf
HOOKS=(base systemd sd-plymouth [...] sd-encrypt [...])
Neste caso poderá ser necessário utilizar plymouth-gitAUR em vez de plymouth.
Linha de comando do kernel
Neste momento precisa de adicionar os parâmetros do kernel quiet splash loglevel=3 rd.udev.log_priority=3 vt.global_cursor_default=0
. Veja Inicialização silenciosa para outros parâmetros para limitar a saída para o console.
Recompile a sua imagem initrd (veja o artigo mkinitcpio para mais detalhes), por exemplo:
# mkinitcpio -p linux
Configuração
Transição suave
Para ativar a "transição suave" (em inglês, smooth transition), se houver suporte a ela, basta:
- Desabilitar seu gerenciador de exibição (p.ex., gdm.service)
- Habilitar a respectiva unit de plymouth-DM (units GDM, LXDM, SLiM, LightDM, SDDM incluídos) (p.ex., gdm-plymouth.service)
Atraso na apresentação
Plymouth tem uma opção de configuração para atrasar a tela de apresentação:
/etc/plymouth/plymouthd.conf
[Daemon] Theme=spinner ShowDelay=5
Em sistemas que iniciem muito rápido, pode apenas ser possível ver uma tremulação de seu tema de apresentação antes do seu gerenciador de exibição ou seu prompt de login estar pronto. Pode-se definir ShowDelay
para um intervalo (em segundos) maior que seu tempo de inicialização para evitar essa tremulação e apresentar uma tela branca.
Por padrão é 5 segundos, mas pode definir para um valor mais baixo para poder ver a sua tela de apresentação durante a inicialização.
Mudar o tema
Plymouth vem com uma vasta seleção de temas:
- Fade-in: "Tema simples com uma transição gradual com estrelas brilhantes"
- Glow: "Tema corporativo com um gráfico que apresenta o progresso da inicialização, seguido de um brilhante logo"
- Script: "Plugin com um script de exemplo" (Apesar da descrição, parece ser um bom tema com o logo do Arch)
- Solar: "Tema do espaço com uma estrela azul rodeada de efeitos"
- Spinner: "Temas simples com uma roda de progresso"
- Spinfinity: "Tema simples que apresenta um símbolo rodando infinitamente no centro da tela"
- (Text: "Tema com uma barra tricolor apresentando o progresso através de texto")
- (Details: "Tema em modo texto reserva")
A versão de desenvolvimento do Plymouth (plymouth-gitAUR) também vem com o tema BGRT, que é uma variação do Spinner que mantém o logo OEM se disponível.
Adicionalmente, pode-se instalar outros temas do AUR, bastando olhar no vetor "Necessário para" em plymouth
Todos os temas atualmente instalados podem ser vistos através do comando:
$ plymouth-set-default-theme -l
ou:
$ ls /usr/share/plymouth/themes
details glow solar spinner tribar fade-in script spinfinity text
Por padrão, o tema spinner está selecionado. Este tema pode ser mudado editando /etc/plymouth/plymouthd.conf
, por exemplo:
/etc/plymouth/plymouthd.conf
[Daemon] Theme=spinner ShowDelay=5
Os temas podem ser pré-visualizados sem recompilação, pressione Ctrl+Alt+F2
para alterar para o console, faça login como root e escreva:
# plymouthd # plymouth --show-splash
Para sair da tela de pré-visualização, pressione Ctrl+Alt+F2
e digite:
# plymouth --quit
Cada vez que um tema é alterado, a imagem do kernel terá de ser recompilada:
# plymouth-set-default-theme -R <tema>
Reinicie para aplicar as alterações.
Truques e dicas
Mostrar mensagens do kernel
Durante a inicialização, é possível alterar para as mensagens do kernel pressionando a tecla "Home" (ou "Escape").
Adicionar o Arch Logo para temas BGRT e spinner
Para adicionar o Arch Logo aos temas spinner e BGRT copie o logo Arch o diretório de tema do spinner com nome watermark.png
:
# cp /usr/share/plymouth/arch-logo.png /usr/share/plymouth/themes/spinner/watermark.png
Substituir o logo Arch e criar temas próprios
Os seguintes temas usam o logo Arch Linux fornecido por Plymouth em /usr/share/plymouth/arch-logo.png
: fade-in, script, solar, spinfinity. Se quiser usar outro logo, pode usar um deles ou um dos outros temas em AUR, editar o arquivo *.plymouth
(talvez *.script
, também) e substituir esta imagem com uma da sua escolha. Deverá criar um pacote do seu tema criado, porque alterações em /usr/share/plymouth
poderão não ser persistentes através de atualizações de pacotes.
Depois de instalado e selecionado o seu tema, deverá faze rebuild à imagem initrd e usar o novo splash.