有馬総一郎のブログ

(彼氏の事情)

2021年08月22日 11:13:45 JST - 6 minute read - Linux

今度はAlter Linux i3wm Editionを試す その1

Alter Linux Xfce Editionをインストールして遊んでみたけど、どうせならデスクトップ環境も使ったことのないものを使おうということで i3版を再インストールしてみた。1

Alter Linux i3wm Edition

正直、そこまで Alter Linuxだから、という情報よりも i3での自分なりの設定だったりするので、ご了承いただきたい。また Xfce版と重複するような内容は省く。

ユーザーガイド

詳細に書かれたユーザーズガイドがある。

i3ユーザーズガイド

アプケーションランチャー起動

$mod+dを入力すれば rofiというアプリケーションランチャーが起動する。

rofi

万が一、キーボードが繋がってない状態でも、左上ロケットのアイコンをクリックすれば起動できる。そして、アプリケーションを選択して、ダブルクリックすればアプリを起動できる。

よくよく調べると、ファイルマネージャー、メーラー、ブラウザー、BluetoothマネージャーなどGUIアプリはインストールされているので、何でもかんでもCLIでやる必要はない。

困ったときは、rofiから探せば設定するためのアプリが見付からるので安心して欲しい。

Wi-Fi 設定

いきなり面喰う。どこから開始すれば良いのやら…nmtuiで編集してsudo systemctl restart Network.serviceでネットワーク再起動。DNS設定の確認はcat /etc/resolv.confで出来る。

しかし、$mod+bと入力すれば

 ┌───────────────┐ 
 │ [System Menu] │
 ├───────────────┴──────────────────────────┐
 │  1 - Display         2 - Network         │
 │  3 - Sound           4 - Package manage  │
 │  5 - Time settings   6 - Taskmanager     │
 │                                          │
 │                      0 - Exit            │
 └──────────────────────────────────────────┘
 [select] > 

とシステムメニューが出るので、そこで2を入力すれば同じようにnmtuiが起動される。

nmtui

みたいな画面が表示される。

IPv4 設定 では

  • 無効
  • 自動
  • ローカルにリンク
  • 手作業
  • 共有

が選択できるが、自動にするとDNSサーバーもDHCPサーバーの設定に引き摺られるので手動で設定している。

nmcliコマンドの基礎 - えんでぃの技術ブログなどを参考にnmcliで設定した方が慣れると楽かも知れない。今度、こちらでの設定も試したみようと思う。

rofiから 高度なネットワーク設定 を起動すればいつものGUI設定画面が出る。

セカンドディスプレイに複製(ミラー)

xrandr - ArchWikiを参考にxrandr --output HDMI2 --mode 1920x1080 --same-as eDP1とやればできた。

もしくはシステムメニュー($mod+b)から 1 - Display を選択するか、rofiから ARandR: Another XRandR GUIを起動すれば、コマンドやらオプションなどで悩まなくて済む。

しかし、蓋を閉じてもサスペンドせずに、セカンドディスプレイに表示しつづけるといったことが出来ない。

xrandr --output HDMI2 --mode 1920x1080 --output eDP1 --offだとプライマリーディスプレイがオフになるだけ。

suspend on lid close : i3wmを見ると

/etc/systemd/logind.conf

HandleLidSwitch=ignore
IdleAction=ignore

とすれば良いとある。これは外付けモニターが接続されていない状態と、無操作状態での動作。

電源管理 - ArchWiki

外付けモニターが接続されている場合、フタが閉じられても HandleLidSwitch オプションはアクションを実行しません。

logind: Add HandleLidSwitch option for when device is connected to AC power · Issue #6122 · systemd/systemd · GitHub

HandleLidSwitchDockedが外付けモニターが接続された時の挙動なので、HandleLidSwitchDocked=ignoreにする

sudo systemctl restart systemd-logindで反映させる。

しかし、これでも駄目。

multiple monitors - How turn off External Display, on closing lid in Ubuntu 20.04 - Ask Ubuntuを見ると

/etc/UPower/UPower.conf

IgnoreLid=true

にしろとあるのでその通りに編集する。そして、sudo systemctl restart upowerで反映。今度こそ成功!

Bluetooth

ハード側の不調のせいか、bluetoothが起動してないことがある。そういう場合は

  1. マウスでrofiを起動して、bluetoothマネージャーを起動させる
  2. 有効にさせるか聞かれるので、「はい」と答える

これで有効になるので問題はない。一応、確認方法と、自動起動の設定、開始などのやりかた。

内容 コマンド
状態確認 sudo systemctl status bluetooth
自動起動有効化 sudo systemctl enable bluetooth
自動起動設定確認 sudo systemctl is-enabled bluetooth
起動 sudo systemctl start bluetooth

i3設定

そもそもキー操作を調べる意味でも見ておくべきか。

~/.config/i3/config

# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
 
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart

# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split

# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4

しかし、なんでbindsym $mod+j focus leftなんだろうか。vimのキーバインドからキーを右に一つズレらすことに違和感がある。垂直分割するbindsym $mod+h split hがあるからだけど、そこは別のに割り当ててでもvimと同じにすれば良かったんじゃないか?皆さんはどうしてるんだろう…

スタートアップアプリ

exec --no-startup-id yaskkserv2 --google-cache-filename=$HOME/.config/fcitx/skk/yaskkserv2.cache $HOME/.config/fcitx/skk/dictionary.yaskkserv2

てな感じで追加していけば良い。分かりやすくて良い。

デフォルトアプリを設定

以下のようにコマンド使うか。

xdg-mime query default x-scheme-handler/http
xdg-mime query default x-scheme-handler/https
xdg-mime default firefox.desktop x-scheme-handler/http
xdg-mime default firefox.desktop x-scheme-handler/https

もしくは、システム全体デフォルト設定ファイルが/usr/share/applications/mimeapps.listにある。そして、直接ユーザーデフォルト設定ファイルである$HOME/.config/mimeapps.listを編集してしまえばいい。

ただ、MIMEタイプの一覧みたいのが知りたいのだけど、あまりのボリュームに読む気を失う。

正直、細かいメディアタイプやらテキストタイプはどうでも良くて、ファイルマネージャーはinode/directoryで指定するってのはどうやって調べたら良いのか分からない。

ls /usr/share/mime/配下にあれこれフォルダ、XMLファイルが見つかるけど、これらが全部MIMEタイプなのかな。代表的なものだけ纏まった一覧みたいがのが欲しい。

例によって長くなったの一旦、区切る。 続き


追記 2021-09-11
Alter Linuxでデフォルトアプリケーションを変更するに記述したが、/usr/share/applications/mimeinfo.cacheを見ると、どんなMIMEタイプがあって、何のアプリケーションが関連付けられているか分かる。

追記ここまで


  1. いちいち再インストールする必要はなかったけど、何となく。 ↩︎