Об этом проекте
grubForge — приложение с терминальным пользовательским интерфейсом (TUI), предназначенное для управления и настройки загрузчика GRUB в системах Linux. Оно направлено на устранение сложностей и рисков, связанных с ручным редактированием файлов конфигурации GRUB, предлагая более безопасную, понятную и удобную альтернативу.
Приложение построено вокруг четырёх ключевых принципов:
* **Безопасность**: перед каждым изменением создаётся резервная копия, требуется подтверждение действий, выполняется проверка вводимых данных.
* **Понятность**: каждое значение GRUB объясняется простым языком, различаются обязательные и опциональные настройки.
* **Эстетика**: современный качественно оформлённый TUI вместо базового экрана конфигурации.
* **Доступность**: клавиатурно-управляемое, быстрое приложение, подходящее пользователям без глубоких знаний о загрузчиках.
Ключевые возможности:
* **Панель управления**: обзор текущей конфигурации GRUB с индикатором актуальности меню загрузки.
* **Редактор конфигурации**: редактирование настроек GRUB с проверкой в реальном времени и пояснениями.
* **Браузер тем**: просмотр, предпросмотр и применение установленных тем GRUB.
* **Записи загрузки**: изменение порядка, переименование и создание записей, включая обнаружение других операционных систем. Возможность сохранять пользовательский порядок и восстанавливать исходный.
* **Резервное копирование и восстановление**: автоматическое создание резервных копий с временной меткой перед каждым изменением; сохраняется 10 последних копий, которые можно восстановить непосредственно в приложении.
* **Пересборка меню загрузки**: однокнопочная перезагрузка меню после любых изменений.
* **Единые сочетания клавиш**: универсальные кнопки действий (Редактировать, Сохранить, Применить, Обновить, Перегенерировать), доступные на всех экранах, плюс специфичные для каждого экрана.
* **Работа на уровне пользователя**: приложение запускается как обычный пользователь, используя Polkit для привилегированных операций, что исключает необходимость ввода root-пароля.
Философия безопасности grubForge направлена на предотвращение поломки загрузчика. Каждое изменение проходит валидацию, подтверждение, автоматическое резервное копирование и авторизацию через Polkit. Небольшой вспомогательный скрипт со строго определённым набором команд выполняет задачи на уровне root, повторно проверяя все входные данные и обеспечивая атомарную запись в критические конфигурационные файлы. Приложение явно предупреждает пользователей о потенциальных проблемах, например о том, что обновления ядра могут не появляться в меню загрузки при активном пользовательском порядке, поскольку в этом режиме автоматически генерируемые записи GRUB отключены.
Инструкции по установке приведены для Arch Linux (через AUR или из исходного кода), Debian/Ubuntu и других дистрибутивов, с указанием необходимых зависимостей: Python 3.10+, `python-textual`, `python-rich` и `polkit`. Рекомендуется запускать `grubforge` как обычного пользователя; `sudo grubforge` доступен для сред только с консолью или для предпочитающих такой способ пользователей.
В дорожной карте проекта — миграция на общую основу `forgekit` для улучшения согласованности пользовательского интерфейса и дальнейшие улучшения, такие как решение проблемы дублирующихся записей загрузки, повышение читаемости на простых текстовых консолях и предупреждения при заблокированных записях загрузки. В журнале изменений отмечены переход на обработку разрешений на базе Polkit и улучшенное чтение меню загрузки для систем со стеснёнными правами на `grub.cfg`.
grubForge — это совместный проект человека и искусственного интеллекта с прозрачным подходом к разработке. Распространяется под лицензией GNU General Public License v3.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.