ユーザ作成までしたので、次はデスクトップ環境の設定を行っていく。
Git設定
-
git
インストール -
~/.gitconfig でgit設定
-
ssh
設定ファイル編集github接続の設定
Host github github.com HostName github.com IdentityFile ~/.ssh/id_rsa User git Port 22 IdentitiesOnly yes # IdentityFile で指定した秘密鍵でのみ認証を試みる Compression yes # Git でのファイル転送時に圧縮する
-
秘密鍵の権限をユーザ専用とする
-
githubへの接続テスト
$ sudo pacman -S git
$ sudo nvim ~/.gitconfig
$ nvim ~/.ssh/config
$ chmod 600 ~/.ssh/id_rsa
$ ssh -T github
ここら辺がちゃんと設定されていないとgit clone
するときでさえ、ユーザ名とパスワードを聞かれる(知らなかった…)。この場合、プロトコルがー、とか対処方法が色々あるが、兎にも角にも、ssh -T github
が成功すること。
yay
インストール
$ mkdir git
$ cd git
$ git clone https://aur.archlinux.org/yay.git
$ cd yay/
$ makepkg -si
Linuxコンソール
しかし、ここで重大な思い違いを知る。ディスプレイサーバーxorg
をインストールせず、素、生の端末、仮想コンソールのことを、Linuxコンソールというらしいが、これでは日本語を表示するのが難しいということを知った。
7.5. Linux コンソールの設定には、以下のように記述がある。
中国語、日本語、韓国語などを利用する場合 Linux コンソールにはそれらの文字を表示できません。 この言語を利用するユーザーは X ウィンドウシステムを使ってください。 そこで用いるフォントは、必要となるコード範囲の文字を有しており、入力メソッドも用意されています。 (例えば SCIM は数多くの言語入力をサポートしています。)
UNIX系 CUI環境のpackage/toolまとめ(X/Wayland無し環境) #Linux - Qiitaを見ると、いくつかCUIオンリーでも日本語を表示できるターミナルがあるが、ARM系だとkmscon
1もfbterm
2もインストールできなかった。
コンソールで日本語表示のためのLinux kernelの再構築とパッチ適用 | ペンギンの道しるべとかあるが、カーネルビルドとかやったことないし、そもそもARM系だしやっても成功するか分からない。
話はズレるが Slackwareと LFSをベースにした Plamo Linuxとう日本語Linuxディストリビューションがあることを知った。
技評の記事でも紹介された実績があり、更新も2023年も行われている。Slackwareは使ったことがないので、今度の機会に試してみたい。
ともあれ、日本語表示できるコンソールが入れれば、日本語が表示でき、uim-fep
がインストールできれば入力も可能になるらしい…
Xorg、Twmをインストール
Linuxコンソール(仮想コンソール)での日本語表示、入力は諦め、xorg
をインストールすることにした。
$ sudo pacman -S xorg xorg-xinit
$ sudo pacman -S xterm xorg-twm xorg-xclock xorg-fonts-misc
$ cp /etc/X11/xinit/xinitrc ~/.xinitrc
$ nvim ~/.xinitrc
~/.xinitrc
conky -d -c ~/.config/conky/conky.conf &
alacritty &
twm
最初は /etc/X11/xinit/xinitrc のままで問題なく、ともあれtwm
を起動すればOKのはず。
twm
の設定などは以下のように行う。
cp /usr/share/X11/twm/system.twmrc ~/.twmrc
nvim ~/.twmrc
~/.twmrc
RandomPlacement
RightTitleButton ":delete" = f.delete
"F11" = : all : f.fullzoom
"Tab" = m : all : f.raiselower
"Tab" = m | s : all : f.raise
"Tab" = m4 : all : f.warping "next"
"Tab" = m4 | s : all : f.warping "prev"
"s" = m4 : all : f.twmrc
"r" = m4 : all : f.refresh
"t" = m4 : all : f.exec "exec alacritty &"
"q" = m4 : all : f.delete
"q" = m4 | s : all : f.destroy
"Left" = m4 : all : f.leftzoom
"Right" = m4 : all : f.rightzoom
Notitle { "Alacritty" }
Style "Alacritty" Background ""
WindowRing { "Alacritty" }
軽量ウィンドウマネージャーtwmを使う #Linux - Qiitaなど参考にした。あとは、 man twm (1): X ウィンドウシステム用のタブウィンドウマネージャ(Tab Window Manager)など。
最初、アプリ起動のたびにウィンドウサイズを指定するのがウザかったが、RandomPlacement
を追記すれば勝手に開いてくれる。本当は最大化とかフルスクリーンでやりたいのだが、まあよし。
ウィンドウをアクティブ、フォーカスするのに癖?があるらしく、他のデスクトップ環境みたいにALT+Tab
やSuper+Tab
でやりたかったので、上記のようにしたが、たまにアクティブにならないときがある。m4
はSuper
キー。
startx
を実行すればtwm
が実行される。毎回、startx
するのは面倒なので
~/.bash_profile
export LANG=ja_JP.UTF-8
if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ]; then
exec startx
fi
と追記すればログインとともに言語設定とstartx
が実行される。
長くなったので次回に続く。
-
GitHub - dvdhrm/kmscon: Linux KMS/DRM based virtual Console Emulator。Intel系とかなら KMSCON を Arch Linux 環境で設定する手順です · GitHubなどにあるとおり、少なくともAURにパッケージがありインストールが容易な感じ。 ↩︎
-
GUIなしのLinuxのコンソールで文字化け・・・「LANG=C」ではなく「fbterm」で解決 - 電子タンクと、こちらも簡単にインストールできるっぽい。Ubuntu 22.04サーバーでも
fbterm/jammy 1.7-5 amd64
が見つかった。 ↩︎