i3wm - FreeBSD 12.1 RELEASE - 環境構築

 
1. 概要
2. パッケージインストール
3. シャットダウンユーザの設定
4. /etc/rc.conf 編集
5. ユーザ用初期化ファイルの作成
6. ログインマネージャ起動

1. 概要

 下記のデスクトップ環境を構築する手順を記述します。
システム ホスト(Windows 10 1903 amd64)・VirtualBox 6.0.14 上のゲストとして FreeBSD 12.1 RELEASE
ログインマネージャ Slim
日本語入力 fcitx-mozc

 インストーラ入手やオペレーティングシステムのインストールあたりまでは「FreeBSD のOSインストール」を参照してください。

 「VirtualBox Guest Additions」は、「FreeBSD - デスクトップ環境構築 - 共通事項」の手順であらかじめインストールしておきます。

2. パッケージインストール


pkg install -y xorg ja-font-migmix ja-fcitx-mozc zh-fcitx-configtool
pkg install -y slim slim-themes
pkg install -y x11-wm/i3 i3status

3. シャットダウンユーザの設定

 一般ユーザからもシャットダウンできるようにします。  逆に、一般ユーザからシャットダウンさせないようにするにはこの手順を行わないでください。  何故か、今までの設定では動作しなかったので、変更しました(2019年11月8日)。  下記のファイルを編集して、例えば、「wheel」グループへ、再起動・シャットダウンを許可するものとして、末尾に以下を追加します。  (スクリプトでいきなり編集しようとしたら、うまくいきませんでした)

vi /usr/local/etc/polkit-1/rules.d/50-default.rules

polkit.addRule(function (action, subject)
{
    if ((action.id == "org.freedesktop.consolekit.system.restart" ||
         action.id == "org.freedesktop.consolekit.system.stop")   &&
         subject.isInGroup("wheel"))
    {
        return polkit.Result.YES;
    }
});
 「wheel」の箇所に、再起動・シャットダウンを許可したいユーザの所属する、グループ名を記述します。  わたしは、サスペンドを使いませんので、省略していますが、サスペンドを許可するには、17行の「)」の前に続けて、「|| action.id == "org.freedesktop.consolekit.system.suspend"」を追加します。

4. /etc/rc.conf 編集

 前項までインストール・設定したものを有効にします。

cat - << EOF >> /etc/rc.conf

polkitd_enable="YES"
dbus_enable="YES"
slim_enable="YES"
EOF

5. ユーザ用初期化ファイルの作成

 ユーザ用初期化ファイルを作成します。

cat - << EOF >> /usr/share/skel/dot.xinitrc
#!/bin/sh
# set locale
export LC_ALL=ja_JP.UTF-8
export LANGUAGE=ja_JP.UTF-8
export LANG=ja_JP.UTF-8
#
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=xim
export XMODIFIERS=@im=fcitx
/usr/local/bin/mozc start
fcitx -r -d
#
setxkbmap -layout jp
xrandr -s 1366x768
/usr/local/bin/VBoxClient-all
#
exec \$1
EOF
 解像度を指定している個所がありますが、特にデフォルトの解像度を変更する必要がなければコメントアウトします。  既設ユーザは、下記のコマンドを実行してコピーしますが、以降、作成する新規ユーザは、デフォルトで「$HOME/.xinitrc」が作成されます。

cp /usr/share/skel/dot.xinitrc $HOME/.xinitrc

6. ログインマネージャ起動

 上記までの設定が終わったら、デーモン群を起動します。

service dbus start
service slim start
 うまく設定できていれば、ログイン画面が表示されます。  ユーザ名・パスワードを入力してログインします。
i3wm - FreeBSD 12.0 - ログイン画面

 2019年11月25日の時点で、下記のバージョンでした。


> pkg info i3
i3-4.17.1
Name           : i3
Version        : 4.17.1
Installed on   : Mon Nov 25 16:45:42 2019 JST
Origin         : x11-wm/i3
Architecture   : FreeBSD:12:amd64
Prefix         : /usr/local
Categories     : x11-wm
Licenses       : BSD3CLAUSE
Maintainer     : bapt@FreeBSD.org
WWW            : https://i3wm.org
Comment        : Improved dynamic tiling window manager
Shared Libs required:
        libev.so.4
        libpcre.so.1
        libglib-2.0.so.0
        libgobject-2.0.so.0
        libxcb-shape.so.0
        libxcb-xinerama.so.0
        libstartup-notification-1.so.0
        libpango-1.0.so.0
        libcairo.so.2
        libxkbcommon-x11.so.0
        libxcb-util.so.1
        libintl.so.8
        libxcb-xrm.so.0
        libxkbcommon.so.0
        libxcb-icccm.so.4
        libxcb-xkb.so.1
        libxcb-randr.so.0
        libxcb.so.1
        libxcb-cursor.so.0
        libxcb-keysyms.so.1
        libpangocairo-1.0.so.0
        libyajl.so.2
Annotations    :
        FreeBSD_version: 1200086
        repo_type      : binary
        repository     : FreeBSD
Flat size      : 813KiB
Description    :
i3 is an improved dynamic, tiling window manager.
Inspired by wmii that supported Xinerama.

WWW: https://i3wm.org
 
 
カウンタバックグラウンド