Sobre o projeto
grubForge é um aplicativo de interface de usuário de terminal (TUI) projetado para gerenciar e personalizar o bootloader GRUB em sistemas Linux. Ele visa resolver as complexidades e riscos associados à edição manual dos arquivos de configuração do GRUB, oferecendo uma alternativa mais segura, clara e acessível.
O aplicativo é construído em torno de quatro princípios fundamentais:
- Segurança: Garante que um backup seja criado antes de cada alteração, exige confirmação para ações e valida a entrada.
- Clareza: Explica cada configuração do GRUB em linguagem simples e distingue entre configurações obrigatórias e opcionais.
- Estética: Apresenta uma TUI moderna e bem projetada, em vez de uma tela de configuração básica.
- Acessibilidade: Projetado para ser controlado por teclado, rápido e utilizável por usuários sem profundo conhecimento de bootloader.
Os principais recursos incluem:
- Painel: Fornece uma visão geral da configuração atual do GRUB e indica quando o menu de inicialização está desatualizado.
- Editor de configuração: Permite editar configurações do GRUB com validação e explicações em tempo real.
- Navegador de temas: Permite navegar, visualizar e aplicar temas do GRUB instalados.
- Entradas de inicialização: Facilita reordenar, renomear e criar entradas de inicialização, incluindo a detecção de outros sistemas operacionais. Os usuários podem salvar ordens personalizadas e restaurar a original.
- Backup e restauração: Cria automaticamente backups com carimbo de data/hora antes de cada alteração, mantendo os 10 mais recentes, que podem ser restaurados dentro do aplicativo.
- Reconstrução do menu de inicialização: Oferece uma opção de uma tecla para reconstruir o menu de inicialização após qualquer modificação.
- Atalhos de teclado consistentes: Fornece teclas de ação universais (Editar, Salvar, Aplicar, Atualizar, Regenerar) que funcionam em todas as telas, juntamente com teclas específicas de cada tela.
- Operação em nível de usuário: Executa como um usuário normal, utilizando Polkit para operações privilegiadas, garantindo que o próprio aplicativo nunca lide com senhas de root.
A filosofia de segurança do grubForge prioriza evitar a quebra do bootloader. Cada alteração passa por validação, confirmação, backup automático e permissão autorizada pelo Polkit. Um pequeno script auxiliar com vocabulário fixo lida com tarefas de nível root, verificando novamente todas as entradas e garantindo gravações atômicas em arquivos de configuração críticos. O aplicativo avisa explicitamente os usuários sobre possíveis problemas, como atualizações de kernel não aparecerem no menu de inicialização quando uma ordem de inicialização personalizada está ativa, já que os geradores automáticos de entradas do GRUB são desativados nesse modo.
As instruções de instalação são fornecidas para Arch Linux (via AUR ou código-fonte), Debian/Ubuntu e outras distribuições, detalhando dependências necessárias como Python 3.10+, python-textual, python-rich e polkit. O uso enfatiza executar grubforge como um usuário normal, com sudo grubforge disponível para ambientes somente de console ou para usuários que preferirem.
O roteiro do projeto inclui a migração para a base compartilhada forgekit para melhorar a consistência da interface e aprimoramentos adicionais, como lidar com entradas de inicialização duplicadas, melhorar a legibilidade em consoles de texto simples e fornecer avisos quando as entradas de inicialização estiverem congeladas. O registro de alterações destaca atualizações recentes, incluindo a mudança para o tratamento de permissões baseado em Polkit e a leitura aprimorada do menu de inicialização para sistemas com permissões restritas em grub.cfg.
grubForge é um esforço colaborativo entre um humano e uma IA, com uma abordagem transparente em seu processo de desenvolvimento. É lançado sob a GNU General Public License v3.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.