Home About Contact
Android , Color

Android 16 Linux Terminal を Solarized Light で使いたい

Android 自体のテーマを Light にしていたが、そのテーマで Terminal を使うのはきつい。 仕方なく Android 自体を Dark テーマにしてその配色で Terminal を使っているのだが、 これも気に入らない。

Gemini に聞いたら /etc/systemd/system/ttyd.service の内容を書きかえればできるよ、ということなのでやってみた。

その結果:

Android 16 Linux Terminal Solarized

なんとなくできたっぽい。

ただし、この設定変更が原因なのか定かではないが、ときどき エラーでターミナル全体が落ちる 。 今のところ何が問題か不明。画面にはJava関連のエラーが出ている。なんだろう。

Gemini によれば /etc/systemd/system/ttyd.service のファイルの該当部分を次のように書きかえるべしとのこと:

ExecStart=/usr/bin/ttyd \
	-t 'theme={"background": "#fdf6e3", "foreground": "#657b83", "cursor": "#657b83", "black": "#073642", "red": "#dc322f", "green": "#859900", "yellow": "#b58900", "blue": "#268bd2", "magenta": "#d33682", "cyan": "#2aa198", "white": "#eee8d5"}' bash

ただ、もともとの設定は そもそも実行コマンドからして異なるパス /usr/local/bin/ttyd ... になっていた。 このように:

ExecStart=/usr/local/bin/ttyd --ssl \
	--ssl-cert /etc/ttyd/server.crt \
	--ssl-key /etc/ttyd/server.key \
	--ssl-ca /mnt/internal/ca.crt \
	-t disableLeaveAlert=true -W login -f droid

そこで、-t オプションでの theme 指定だけを既存のものに追加してみた:

ExecStart=/usr/local/bin/ttyd --ssl \
	--ssl-cert /etc/ttyd/server.crt \
	--ssl-key /etc/ttyd/server.key \
	--ssl-ca /mnt/internal/ca.crt \
	-t 'theme={"background": "#fdf6e3", "foreground": "#657b83", "cursor": "#657b83", "black": "#073642", "red": "#dc322f", "green": "#859900", "yellow": "#b58900", "blue": "#268bd2", "magenta": "#d33682", "cyan": "#2aa198", "white": "#eee8d5"}' bash
	-t disableLeaveAlert=true -W login -f droid

これで Android ごと再起動して再度 Android 16 Linux Terminal を起動すると Solarized Light の色が反映されていました。