ArchLinuxでCLI開発環境を整える
作成日|更新日
|閲覧数:
CLI環境を作る
起動時にCLIが立ち上がるための設定
1
| sudo vim /etc/default/grub
|
GRUB_CMDLINE_LINUX_DEFAULT=""にtextを追加。
起動時に、スプラッシュスクリーン(通常はディストリビューションのロゴなど)を表示したい人は、splashを追加できる。
/etc/default/grubファイルの変更をGRUBブートローダーに反映
1
| sudo grub-mkconfig -o /boot/grub/grub.cfg
|
- 現状、システム起動のデフォルトターゲットに何が指定されているのかを知る
1
| sudo systemctl get-default
|
通常、GUI環境を使用している場合は、graphical.targetと表示され、そしてそれは、multi-user.targetを包含している。しかし、CLI環境オンリーで十分だという人にとっては、システム起動時間の短縮やリソース効率の向上の観点から、デフォルトターゲットをmulti-user.targetに切り替えることをおすすめできる。
1
| sudo systemctl set-default multi-user.target
|
1
| sudo systemctl set-default graphical.target
|
- 日本語の表示、入力にすぐれたターミナルエミュレータをインストールする
以下、fbtermでの実装で失敗した。まず、多くのデスクトップ環境で使われているibusとfbtermを連携させるのに必要なibus-mozcをAURパッケージからyayコマンドでインストールするはずが、ビルドに失敗する。また、kmsconでの日本語表示には、成功しているため、以降、土台をkmsconに置く。
kmscon
kmsconはUnicode/UTF-8 互換で動くので日本語表示ができる。
kmsconのインストール
日本語フォントをインストール
1
| sudo pacman -S ttf-dejavu otf-ipafont
|
フォントを適用
/etc/fonts/conf.d/99-kmscon.conf
私は、フォントにNerdFontのAgaveを使っているので、以下のようになる。
1 2 3 4 5 6 7 8 9 10 11 12
| <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <match> <test name="family"><string>monospace</string></test> <edit name="family" mode="prepend" binding="strong"> <string>Agave Nerd Font Mono</string> <string>DejaVu Sans Mono</string> <string>IPAGothic</string> </edit> </match> </fontconfig>
|
キーボードレイアウトを設定
/etc/kmscon/kmscon.conf
tty2以降をkmsconに設定
あとで、kmsconvt@tty3.serviceを作るため、スキップしてもよい。
1
| sudo ln -s /usr/lib/systemd/system/kmsconvt\@.service /etc/systemd/system/autovt\@.service
|
kmsconvt@.serviceを有効化
autovt@tty3.service は kmsconvt@.service へのシンボリックリンクなため、元のサービスを有効化することで、autovt@tty3.service も間接的に有効になる。
1
| sudo systemctl enable kmsconvt@tty3.service
|
kmsconをtty3にセットする
1 2
| sudo cp /usr/lib/systemd/system/kmsconvt@.service /etc/systemd/system/kmsconvt@tty3.service
|
kmscon(tty)上で日本語入力を可能にする
以下、uimでmozcを使用する設定
~/.uim
1 2 3
| (define default-im-name 'mozc) (define-key generic-on-key? '("<Control> ")) (define-key generic-off-key? '("<Control> "))
|
あとは、以下を~/.bashrcなどに書けばOK
これにより、Ctrl+Spaceキーで日本語入力の切り替えが可能になる。
CLI環境で使えるツール一覧
discordoをCLI環境で使えるようにする
何度か試行したが、できなかった。
まず、discordトークンは、機密情報なので、libsecretかgnome-keyringかkwalletを使用したい。
GUIではアンロックは容易だが、CLIでのキーリングのアンロックがサポートされていないシークレットサービスも少なくない。
ということで、まずは、CLI上でキーリングをアンロックし、discordoでログインできるかどうかを確認する必要がある。openscパッケージに同封されているpkcs11-toolよりCLIでのアンロックを試したが、あれは、gnome-keyringで使えるようなものだった。CLIではgnome-keyring-daemonが起動できないため、失敗に終わった。