2 ポイント 投稿者 GN⁺ 2023-07-19 | 1件のコメント | WhatsAppで共有
  • Minegrubは、Minecraft風にGRUBブートメニューを装飾するGRUBテーマ
  • Minecraft Main Menuテーマであり、関連プロジェクトとして啎inecraft World Selection MenuUsing both themes togetherがリンクされている
  • 手動インストールの流れは、リポジトリのクローン、背景の選択、minegrubフォルダを/boot/grub/themes/へコピー、/etc/default/grubでのGRUB_THEME=/boot/grub/themes/minegrub/theme.txt設定、grub-mkconfigの実行で構成される
  • install_theme.shはテーマのインストール、systemdサービスのインストール、コンソール背景の有効化を支援し、背景をランダムに使わない場合は背景の選択にも対応する
  • update_theme.pyassets/splashes.txtからランダムな文言を選び、logo.pngを生成・置換し、インストール済みパッケージ数とbackgrounds/内のランダムな背景画像も更新する
    • 実行要件はfastfetchまたはneofetch、Python 3または同等の実行環境、Pillow Pythonパッケージ
    • 次回の特定ブート用の背景と文言は、python update_theme.py [BACKGROUND_FILE [SPLASH]]形式で指定できる
  • NixOS flakeモジュールを提供し、boot.loader.grub.minegrub-themeenablesplashbackgroundboot-options-countの設定例を提供する
  • ブートオプション数が4個より多い、または少ない場合、ボタンが下部バーと重なることがあり、/boot/grub/themes/minegrub/theme.txtの該当行を修正して位置調整できる
  • /boot/grub2フォルダを使う環境では、READMEのパスとminegrub-update.serviceファイルのパスを調整する必要がある
  • GRUBコンソール背景は/etc/defaults/grubGRUB_BACKGROUND=<path>で指定するが、テーマが設定されている場合は、まず/etc/grub.d/00_headerの1行を変更する必要がある

1件のコメント

 
GN⁺ 2023-07-19
Hacker Newsのコメント
  • grub-mkconfig が不必要に複雑な grub.cfg を生成することを思い出させてくれる
    自分で書けば、カスタムカーネル、initrd 付きの標準カーネル、Windows の起動まで含めても、defaulttimeout、いくつかの menuentryinsmodset rootlinuxinitrdchainloader くらいで、ずっとシンプルに構成できる

    • 昔の素晴らしい GRUB legacy が懐かしい
      ほとんどの項目は設定 4〜5 行で済んだし、見苦しいシェル構文や大量のオプション、条件分岐もなかった
      MBR と Linux のディスク/ブート管理はずっと単純だったのに、今では UUID、FAT32 パーティション、UEFI の過剰な機能のせいで、これを触ろうと思うだけでも大量のドキュメントを読まなければならない
      以前 Ubuntu 系のノート PC で DNS サーバーを変えようとして resolv.conf を編集したが何も起きず、結局あちこちにある DNS 設定ファイルを 4 つほど見つけ、そのうち 1 つだけが実際に変更すべきファイルだった
      いつかはマザーボードをレガシーモードに戻して、systemd のない最小構成のディストリビューションである Crux Linux や Slackware のようなものを入れることになるのかもしれない
    • 自動生成された設定ファイルが複雑だという点は別として、自分で維持することに何か利点があるのか気になる
      以前 Windows パーティションがあったとき、Debian の update-grub スクリプトが、カスタムカーネルを含むすべてのカーネルや他の OS まで見つけてくれた記憶がある
      何かを自分で維持するより、何も維持しないほうがずっといいと思う
  • Rocky Linux 8 では、GRUB_TERMINAL_OUTPUT"gfxterm" に変えないと GRUB_THEME の値を認識しなかった
    子どもが Minecraft Bedrock Edition を遊ぶために Grub から Windows に再起動することが多いので、このテーマを見たらかなり驚きそう

  • "I use Arch BTW" も素晴らしいが、スプラッシュ文句 が複数入っているのが気に入っている

  • 当然ながらこのプロジェクトでも、コードを別の Git ホストへ移せという バグ報告 は欠かせなかった
    https://github.com/Lxtharia/minegrub-theme/issues/18
    趣旨自体は理解できるが、ここでキャンペーンすることではない気がする
    作者が負担を感じずに「この issue の説明は自分のコードのバグには見えない」と丁寧に言って閉じられるとよいのだが

  • この人が Doom テーマ も作っていることは触れておく価値がある
    https://github.com/Lxtharia/doomgrub-theme

  • 少し話題から外れるが、LUKS パスワード入力 用のテーマや GUI を知っている人はいるだろうか
    モダンな GUI に慣れた家族にとっては、コマンドライン版の挙動はかなり直感的ではない

  • 最初はこれを「Microsoft Grub Theme」と読み間違えて、その皮肉さが面白かった
    それでも本当に楽しくて印象的で、Grub テーマでここまでできるとは思わなかった

  • 次は誰かが ワールド背景カメラ も回転させるレンダラーを書くべきだ

    • UEFI 上で動く CPU ソフトウェアラスタライザ を作るのはかなり面白いプロジェクトになりそう
      GPU はもちろん難しいだろうが、複数の CPU コアを使うことはできるかもしれない
    • Grub でそれが可能なのかは分からない
      最後に見たときは Burg というツールが GIF のように背景をアニメーション表示していたが、全体的にかなり粗く、良い体験ではなかった
  • このテーマも本当に良いが、自分はこの Fallout Grub テーマ を使い続けると思う
    https://github.com/shvchk/fallout-grub-theme/tree/master
    みんなのお気に入りのテーマが何か気になる

  • Grub が何なのか気になる
    適当に見た grub2 リポジトリ 3 つでは関連リンクが見つからなかった

    • GRUB は Linux システムでよく使われるブートローダー
      コンピューターの電源を入れたときに起動オプションのメニューを表示し、選択したインストール済み OS を起動してくれる
      このテーマを使うと、どの OS で起動するかを選ぶそのメニューが Minecraft のメニューのように見えるようになる