1 pontos por GN⁺ 2025-05-05 | 1 comentários | Compartilhar no WhatsApp
  • Gorgeous-GRUB é uma coleção que reúne em um só lugar bons temas de GRUB feitos pela comunidade que estão espalhados por vários sites
  • O Pling é apresentado como o lugar que atualmente hospeda mais temas de GRUB, mas há o problema de que muitos temas são resultados de baixo esforço, o que dificulta encontrar temas bons
  • O README fornece em formato de tabela vários links de temas e imagens de prévia, incluindo Minegrub, SteamOS, Persona 5 Royal, Catppuccin, Cyberpunk 2077, Dark Matter, Elegant e outros
  • Também traz ferramentas e guias auxiliares como documentação de instalação, documentação de contribuição, GRUB-Tweaks, GRUB2 Theme Preview, Background Cycler e um Theme Installer feito pela comunidade
  • Em ambientes com Secure Boot, fontes personalizadas podem não ser aplicadas ou exibidas, e um post no fórum do Arch Linux sobre como assinar arquivos de fonte é ligado como material de referência

Objetivo do projeto

  • Gorgeous-GRUB é um repositório que reúne temas feitos pela comunidade para personalizar a tela do bootloader GRUB exibida antes da inicialização
  • Os temas de GRUB estão espalhados por vários sites, e como é difícil encontrar bons temas, o projeto foi organizado para permitir explorar tudo em uma única página
  • O Pling é apresentado como o lugar que atualmente hospeda mais temas de GRUB, mas muitos deles são monotônicos ou resultados de baixo esforço, o que pode tornar a navegação trabalhosa
  • O repositório foi criado para, ao longo do tempo, destacar bons temas encontrados pela internet

Ferramentas úteis e links de referência

  • GitZip: permite baixar pastas e arquivos individuais sem precisar baixar o repositório inteiro do GitHub
    • Ele pede um token, mas é apresentado como funcionando bem mesmo sem token
  • GRUB-Tweaks: oferece vários ajustes e guias de configuração adicional para personalizar ou recuperar instalações do GRUB
  • Theme Tutorial / Theme References: informações sobre criação de temas do GRUB2, descritas como complexas, mas ainda assim o melhor material encontrado até agora
    • Em vez de começar do zero, pode ser mais fácil pegar um tema existente e modificá-lo manualmente
  • GRUB2 Theme Preview: software que permite visualizar temas de GRUB sem reiniciar o sistema inteiro
    • Como ele sobe uma VM completa, há muitas dependências
    • Um comando simples para instalar as dependências necessárias está no repositório GRUB-Tweaks
  • Background Cycler: script que muda o plano de fundo do tema a cada reinicialização do sistema
  • Theme Installer (Community Made): script criado por FLEXIY0 que pode baixar e instalar automaticamente muitos temas
    • Alguns erros podem ocorrer em certos casos de borda

Instalação e contribuição

Como explorar os temas

  • A lista de temas é organizada em formato de tabela com imagens de prévia e links
  • Se você gostar de um tema, é recomendado deixar uma avaliação no Pling ou dar uma estrela no repositório do GitHub
    • No Pling, poucas pessoas deixam avaliações, e isso é apresentado como um dos motivos para ser difícil encontrar temas bons
    • Assim, o autor pode ver que as pessoas estão curtindo o resultado do que foi criado

Exemplos de temas incluídos

Avisos sobre Secure Boot

  • Em sistemas com Secure Boot ativado, fontes personalizadas podem não ser aplicadas ou até mesmo não aparecer
  • Post no fórum do Arch Linux mostra como assinar arquivos de fonte para fazê-los voltar a aparecer

1 comentários

 
GN⁺ 2025-05-05
Opiniões do Hacker News
  • Eu adoro personalização, mas, pessoalmente, quanto menos eu tiver que ver ou pensar no GRUB, melhor

    • Exato. Normalmente vejo por alguns segundos por ano. Se você está vendo com frequência suficiente para se importar com temas, talvez seja melhor gastar esse tempo corrigindo o motivo de ele aparecer tão frequentemente
  • "Grand Theft Gentoo": https://raw.githubusercontent.com/Jacksaur/Gorgeous-GRUB/ref...

    • Meu Deus, isso é uma verdadeira joia. O Linus bravo no canto superior direito, o Ballmer triunfante e ao mesmo tempo confuso embaixo, e ainda a ficha policial do Gates — perfeito
  • O que eu realmente queria era algo que imitasse a antiga tela de inicialização da SGI. Incluindo o som de boot e uma microdistribuição para configuração do sistema operacional
    Hoje em dia, com filesystems com snapshots, não deveria ser tão difícil. Algumas vezes na vida precisei fazer chroot para consertar um sistema, e é difícil acreditar que isso seja tão complicado de automatizar

    • Essas peças já existem de alguma forma, então seria bom ver mais esforço para polir o conjunto como um todo. O problema parece ser que todo mundo faz de um jeito um pouco diferente
      O NixOS permite inicializar gerações anteriores, mas faz isso praticamente virando o filesystem do avesso; o OpenSUSE dá suporte a snapshots, mas é baseado em BTRFS, então é difícil outras distros usarem a mesma implementação; o ZFS é excelente, mas no Linux a licença sempre gera atrito. O Ubuntu deixou o boot muito suave com o Plymouth, mas é algo bem ao estilo Ubuntu
      De qualquer forma, se você está em um ambiente onde pode usar ZFS no Linux, eu recomendaria o zfsbootmenu

      ZFSBootMenu leverages the features of modern OpenZFS to allow users to choose among multiple "boot environments" (which may represent different versions of a Linux distribution, earlier snapshots of a common root, or entirely different distributions), manipulate snapshots in a pre-boot environment and, for the adventurous user, even bootstrap a system installation via zfs recv.

    • No NixOS, cada “deploy”, seja para outro host ou local, cria uma nova entrada no menu do GRUB. Em ambos os casos, você ganha uma nova entrada no GRUB
      Claro que ainda dá para dar um tiro no próprio pé quebrando a configuração de SSH de um jeito que impeça o acesso remoto. Há uma solução chamada deploy-rs para isso, com um recurso de magic rollback que reverte o sistema se ele não conseguir se reconectar ao computador que iniciou o deploy https://github.com/serokell/deploy-rs?tab=readme-ov-file#mag...
      Uso esses recursos há anos e posso recomendá-los com confiança
      Não é exatamente relacionado à pergunta original, mas também estou rodando builds do sistema em CI e tornando os testes com Playwright cada vez mais abrangentes. Isso me dá bastante confiança de que vou encontrar problemas cedo ou conseguir reverter
    • No Arch, acho que daria para instalar um segundo Arch Linux “backup” em uma partição de recuperação que o firmware da placa-mãe consiga inicializar diretamente, e usar arch-chroot para recuperar o sistema operacional principal. Deve haver abordagens parecidas em outras distros
    • O macOS tem mais ou menos os dois recursos
      O som de inicialização das máquinas SGI variava conforme o modelo. Ou seja, Indy e Onyx eram diferentes. Meu primeiro PC, um 80286, também fazia um som icônico ao ligar, e nunca vou esquecer
      A microdistribuição corresponde ao sistema operacional de recuperação. Todos os três principais sistemas operacionais de desktop têm algo assim, ou uma combinação de teclas para ativá-lo. Pelo que sei, o Android tem duas partições de recuperação, e a redundância é o ponto central
      Se você gosta do poder dos snapshots, filesystems copy-on-write (CoW) como o ZFS podem exibir uma lista durante o boot. Sistemas operacionais como o NixOS nem precisam desse tipo de filesystem. Mesmo em Ext4FS, menus de boot com snapshots, rollback etc. funcionam bem
    • Acho que um bootloader baseado em kexec seria o melhor para esse propósito. Assim ele seria um ambiente Linux “de verdade”, onde você pode colocar as ferramentas que quiser, em vez de um ambiente especial
      Ex.: https://github.com/kexecboot/kexecboot
  • É por coisas assim que eu amo Linux. Há uma criatividade incrível aqui. Dá até vontade de fazer dual boot com alguma coisa só para ter uma desculpa para ver o GRUB

    • Isso, janelas tremendo, efeitos de chuva e coisas do tipo. Hoje eu não usaria essas coisas, mas, na época em que personalizar o Windows ficava mais trabalhoso a cada versão, eu fiquei realmente fascinado
  • É legal, mas, sinceramente, eu preferia que o GRUB só aparecesse quando eu estivesse segurando uma tecla durante o boot. Esperar 5 segundos até ele desaparecer para então inicializar o sistema operacional padrão é totalmente desnecessário

    • Acho que basta definir GRUB_TIMEOUT_STYLE=hidden e GRUB_TIMEOUT=0. Assim, o menu do GRUB só aparece quando você segura Shift; caso contrário, ele inicializa imediatamente a entrada padrão
    • Por que você realmente quer isso? Para mim é algo tão insignificante que acho bem estranho querer esconder
    • Com certeza deve haver uma opção para isso. Se você segurar Shift, o menu aparece
    • E se você não lembrar qual tecla precisa apertar?
  • Todo mundo que reclama do GRUB esqueceu o lilo

    • Antigamente eu pensava: “Como assim? O GRUB era o sucessor do LiLo e era muito melhor!”. Não sei o que aconteceu com o tempo
      Naquela época eu tinha um tema incrível de Ghost in the Shell feito por mim, e lembro de converter um jpeg que encontrei online para um formato de imagem extremamente obscuro. Passei tempo demais personalizando meu ambiente Linux. O computador parecia um bichinho de estimação muito bem cuidado, com um desktop em cubo com peixes dentro e efeitos de reflexo
    • Ah, me mandou direto de volta para 2003
    • Um brinde ao loader do Linux
  • Como essas imagens de fundo são redimensionadas em monitores e resoluções diferentes?
    Aliás, como o GRUB sabe em que resolução desenhar a interface?

    • Olhando alguns repositórios, a resposta parece ser algo mais perto de “não sabe”. Pelo visto você precisa escolher manualmente imagens na resolução correta
    • Dá para definir a resolução explicitamente; caso contrário, ele renderiza na resolução em que o UEFI iniciou o boot
  • Finalmente vou poder deixar meu computador com cara de computador do filme Hackers. Legal

    • Assim que vi os temas, meu primeiro pensamento foi “uau, está igual ao filme”
      Tenho ouvido a trilha sonora enquanto trabalho ultimamente, então talvez eu assista de novo em breve
  • O GRUB é como um troço na privada que não desce. Há anos ele é totalmente desnecessário, complexo demais, quase inutilizável com um shell cheio de idiomatismos de 1995, e existem alternativas muito mais leves e úteis como o extlinux
    Hoje em dia também dá para inicializar o kernel diretamente com EFI stub, mas mesmo assim ele continua sendo instalado e tentando justificar a própria existência

    • Quando o UEFI apareceu, achei que o GRUB finalmente fosse sumir
      Pior ainda: em dual boot, se cada sistema operacional instala seu próprio GRUB, pode surgir uma situação estranha em que um GRUB faz chainloading para outro GRUB e só então inicializa o sistema operacional
      Parece que bastaria apertar uma tecla como F12 e ver o menu com todas as opções de boot oferecidas pelo UEFI. Antes dos instaladores entrarem e estragarem tudo, elas ficam ali de forma organizada. O Windows sempre parece se intrometer, quebrar o que já existe e colocar a si mesmo no topo
    • shim + grub também não é lá grande coisa, mas, em geral, EFI puro é muito pior. Os fornecedores que criam plataformas EFI de consumo muitas vezes parecem completamente sem juízo
      Mesmo quando a placa-mãe tem porta serial, eles não oferecem redirecionamento do console UEFI, nem expõem ao usuário as configurações de Secure Boot ou o gerenciamento das opções de boot. Por isso, bootloaders baseados em EFI puro, como systemd-boot ou rEFInd, ainda parecem ser a opção menos irritante
    • Não entendo por que tanto ódio. Para mim, ele sempre simplesmente funcionou. Também uso dual boot, inclusive com criptografia. No panorama geral, é uma parte realmente pequena
      É só comparar com fazer boot em ARM
    • Tenho aqui um notebook com Windows, Haiku e Linux. A configuração do GRUB 2 que de fato faz o Haiku iniciar era esquisita. Se eu quiser substituir o GRUB, qual seria exatamente a melhor coisa para instalar?
      Ou então tenho um PC só com Void Linux. O modo UEFI não funciona, então estou inicializando em modo de compatibilidade, e não sei por quê. Talvez seja problema de Secure Boot, ou modo MBR versus GPT; também não há partição EFI. Nesse caso, o que poderia substituir o GRUB?
    • O que eu não entendo é por que é preciso regenerar o GRUB toda vez que adiciono um kernel ou sistema operacional
      O bootloader deveria ser inteligente o bastante para ler o filesystem abaixo e encontrar o kernel. O rEFInd faz isso. Se você pluga um USB inicializável ou instala o Windows em um segundo SSD, ele simplesmente aparece no menu, sem você pedir explicitamente
      Talvez seja necessária uma restrição do tipo “/boot precisa estar em um dos n tipos de filesystem bem suportados”, mas um método que funcione para a maioria já seria suficiente. Só quem usa algo como um conjunto de 128 drives de disquete USB em cima de RAID6 em cima de ZFS precisaria depender de algo como o GRUB
  • Ainda estou esperando um bootloader que apareça logo de início em um monitor externo, como acontecia com desktops e monitores CRT 20 anos atrás
    O systemd-boot incluído no Pop!_OS não faz isso, então, para mudar as opções de boot, preciso tirar meu notebook ThinkPad X1 Extreme do suporte e abri-lo. Fico curioso para saber como é a experiência de outras pessoas com o GRUB nesse ponto

    • Dê uma olhada na configuração de tela principal no BIOS. Se você consegue mostrar a tela do BIOS no display externo, é bem provável que o bootloader que vem depois também use esse display
      No meu conjunto ThinkPad+Dock, funciona bem
    • Nas configurações de firmware do ThinkPad, você precisa verificar se o monitor externo ou a GPU do dock está definido como tela principal válida durante o boot
      Só que, em alguns PCs, ao configurar assim, a própria tela do notebook pode não mostrar nada durante o boot, e às vezes isso acontece até quando o notebook está sem dock. Se o Initial Graphics Device estiver em "Auto" em vez de um dispositivo específico, talvez fique tudo bem, mas talvez não mude nada em relação ao que você tem agora
      O monitor externo também pode ter várias entradas, como VGA, DVI e HDMI, e, se estiver configurado para fazer varredura "Auto" em busca da entrada ativa, às vezes o tempo de detecção é maior que o tempo de boot. Nesse caso, se você definir a entrada preferida como única ou padrão nas opções de entrada do monitor, talvez consiga ver algo durante o intervalo que hoje parece uma tela em branco
    • Isso claramente é um problema do lado do usuário. Funciona bem em monitores conectados por meio de dock. Já usei Pop!_OS antes e tenho certeza de que funcionava
    • Acho que isso pode depender do monitor, não do bootloader. Alguns monitores demoram mais para ligar
      Meu monitor 4K conectado via DisplayPort não tem problema, mas o monitor VGA/DVI antigo que uso para recuperação no homelab não consegue ligar rápido o suficiente