このプロジェクトについて
grubForgeはLinuxシステムでGRUBブートローダーの管理とカスタマイズを行うためのターミナルユーザーインターフェース(TUI)アプリケーションだ。GRUB設定ファイルを直接編集する際の複雑さやリスクを解決し、より安全で明確、手頃な代替手段を提供することを目指している。
このアプリケーションは4つの基本理念に基づいて構築されている:
* **安全性**:変更ごとにバックアップを作成し、アクションには確認を求め、入力を検証する。
* **明確さ**:すべてのGRUB設定を平易な言葉で説明し、必須項目と任意項目を区別する。
* **美観**:基本的な設定画面ではなく、モダンでよくデザインされたTUIを提供する。
* **親和性**:キーボード駆動で高速、かつブートローダーの深い知識を持たないユーザーでも使いやすいよう設計されている。
主な機能は以下の通り:
* **ダッシュボード**:現在のGRUB構成の概要を表示し、/boot/menuが更新されていない場合に警告する。
* **設定エディター**:リアルタイム検証と解説付きでGRUB設定を編集できる。
* **テーマブラウザ**:インストール済みのGRUBテーマを閲覧、プレビュー、適用可能。
* **起動エントリー**:起動順序の変更、名前の変更、起動エントリーの作成をサポートし、他のOSも検出する。ユーザーはカスタム順序を保存し、元に戻すこともできる。
* **バックアップと復元**:変更前にタイムスタンプ付きのバックアップを自動作成し、直近10件を保持。アプリ内で復元可能。
* **ブートメニュー再構築**:変更後ワンクリックでブートメニューを再構築できる。
* **一貫したキーバインディング**:Edit、Save、Apply、Refresh、Regenerateなどの汎用アクションキーが全画面で共通し、画面固有のキーも用意されている。
* **ユーザーレベルでの動作**:一般ユーザーとして実行し、権限が必要な操作にはPolkitを利用する。アプリケーション自体がrootパスワードを扱うことはない。
grubForgeの安全哲学はブートローダーの破損を防ぐことを最優先する。すべての変更は検証、確認、自動バックアップ、Polkitによる権限承認を受ける。ルートレベルのタスクを処理する小型の固定語彙ヘルパースクリプトがすべての入力を再チェックし、重要な設定ファイルへのアトミック書き込みを保証する。また、カスタム起動順序が有効な場合、カーネルアップデートがブートメニューに表示されない可能性があるなど、潜在的な問題についても明示的に警告する。
インストール手順はArch Linux(AURまたはソース)、Debian/Ubuntu、その他のディストリビューション向けに提供されており、Python 3.10以上、python-textual、python-rich、polkitなどの必要な依存関係についても記載されている。使用方法では通常ユーザーとしてgrubforgeを実行することが推奨され、コンソール専用環境やそれを好むユーザーにはsudo grubforgeも利用可能だ。
ロードマップにはUIの一貫性向上を目的としたforgekit共有基盤への移行、重複起動エントリーの問題対応、プレーンテキストコンソールでの読みやすさ向上、フリーズされた起動エントリー時の警告提供などが含まれる。チェンジログにはPolkitベースの権限処理への移行や、制限されたgrub.cfg権限を持つシステムでのブートメニュー読み取り改善といった最近の更新が記載されている。
grubForgeは人間とAIのコラボレーションによる開発プロジェクトで、その開発プロセスは透明性を持って公開されている。GNU一般公衆利用許諾契約書 v3.0の下でリリースされている。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.