ブートマネージャーでマウスを使う話(rEFInd)
この記事は 朝活部 Advent Calendar 2024 7日目の記事です。
記事書くの初めてなのと言っていることに自信もないのでマサカリをお願いします。
はじめに
この間bluetoothキーボード(HHKB)を買いました。
ですがなんとbluetoothの機能はOSが提供しているのでBIOSやブートマネージャーの画面ではキーボードが動かないのです。
つまりHHKBを使っているとWindowsとLinuxを切り替えることができないのです。
解決策1(grub only)
私は今までブートマネージャーにはgrub2を使用していました。
構成はNixOSを使用しているので上からNixOS、NixOS - All configurations(submenu)、Windowsでした。なので
grub2-reboot 2
のように実行すると次の起動時に0-indexで上から2個目のentryをデフォルトで選択してくれます。
ですがこれだと毎回Linuxを起動しないといけなく流石に時間の無駄を感じます。
解決策2(rEFInd)
なのでブートマネージャーでマウスが使える必要がありました。
残念ながらgrubにはその機能はないようで別のものを探していたらrEFIndを見つけました。
rEFIndとはUEFIブートマネージャーでrEFItのフォークらしいです。
rEFIndならマウスが使えるという情報はどこで見つけたのかは忘れてしまいました...
インストール
お好きなパッケージマネージャでrefind
をインストールした後refind-install
というコマンドを使うか
手動でESPに実行可能ファイルをコピーすることでできます。
設定
esp/EFI/refind/refind.confに書きこみます。
たぶんrefind-install
を使っていたら自動で生成されていると思います。
enable_mouse
のコメントアウトを消すとマウスが使えるようになります。
設定しなくともentryが生成されたかは覚えていないのですが
私はこのように追記しました。適宜書き変えてください。
menuentry NixOS {
loader /efi/EFI/NixOS-boot-efi/grubx64.efi
}
menuentry Windows {
volume BAE31CF2-33A5-4D58-BF0F-7F5BA8EA3D65
loader \EFI\Microsoft\Boot\bootmgfw.efi
}
コメントで親切に注釈が書かれていているので読みながら好きに設定してください。
見た目をカスタマイズする
これで恐らく動きはすると思うのですが、デフォルトの少々見た目が好みではありません。
私はrefind-ambienceというテーマを使っています。
インストール方法はREADMEの通りです。
ですがNixOS用のアイコンが無かったので自作しました。
ここで公開することにします。
アイコンを設定します。
menuentry NixOS {
+ icon /efi/refind/themes/refind-ambience/icons/os_nixos.png
loader /efi/EFI/NixOS-boot-efi/grubx64.efi
}
menuentry Windows {
+ icon /efi/refind/themes/refind-ambience/icons/os_win8.png
volume BAE31CF2-33A5-4D58-BF0F-7F5BA8EA3D65
loader \EFI\Microsoft\Boot\bootmgfw.efi
}
中中オシャンティーになりました。
最後にコメントアウト以外の設定を全て貼っておきます。
refind.conf
include themes/refind-ambience/theme.conf
timeout 5
use_nvram false
resolution max
enable_mouse
scanfor manual
default_selection 1
menuentry NixOS {
loader /efi/EFI/NixOS-boot-efi/grubx64.efi
}
menuentry Windows {
volume BAE31CF2-33A5-4D58-BF0F-7F5BA8EA3D65
loader \EFI\Microsoft\Boot\bootmgfw.efi
}
まとめ
rEFIndを使ってブートマネージャー上でのマウス操作を可能にすることができました。
これで困ってる人見たことないんですが皆さんどうしてるんですかね...
おまけ
bluetoothってデュアルブートすると毎回接続切らないといけなくて不便じゃないですか?
解決策はあるので安心してください。
この記事を見ながらやりました。別にHHKBじゃなくてもできます。
本当はWindowsの登録情報をエクスポートを得るときに2デバイスで別々のエラーが出て一筋縄では行かなったのを忘備録にしたかったのですが完全忘却してしまったので、
各自頑張って欲しいです。
権限を与えまくったら行けた気がします。
Discussion