ここまでの時点で、システムインストールと「VirtualBox Guest Additions」の設定は終わっているものとします。
ぞれぞれのインストール・設定に関しては
「FreeBSD - デスクトップ環境構築 - 共通事項 - システムインストール」
「FreeBSD - デスクトップ環境構築 - 共通事項 - VirtualBox Guest Additions」
をご参照ください。
2. インストール
pkg install -y xorg numlockx ja-font-migmix
pkg install -y sddm sddm-freebsd-black-theme cursor-neutral-white-theme
pkg install -y herbstluftwm bash
バージョンの推移です。
・2020年 9月 4日 「FreeBSD 11.4 RELEASE」 「0.8.3」
・2020年11月17日 「FreeBSD 12.2 RELEASE」 「0.8.3」
・2021年 6月29日 「FreeBSD 13.0 RELEASE」 「0.9.2」
・2021年12月24日 「FreeBSD 12.3 RELEASE」 「0.9.2」
・2022年12月26日 「FreeBSD 12.4 RELEASE」 「0.9.4」
・2023年 5月19日 「FreeBSD 13.2 RELEASE」 「0.9.5」
・2024年 1月29日 「FreeBSD 14.0 RELEASE」 「0.9.5」
・2024年 3月25日 「FreeBSD 13.3 RELEASE」 「0.9.5」
2024年6月14日の時点で、下記のバージョンでした。
$ herbstluftwm -v
herbstluftwm 0.9.5
Copyright (c) 2011-2021 Thorsten Wismann
Released under the Simplified BSD License
xrandr support: on
xinerama support: on
3. SDDM カスタマイズ
ログイン画面の解像度を「1366x768」とし、キーボードレイアウトを「jp.106」にします。
「root」ユーザで
cat << EOF >> /usr/local/share/sddm/scripts/Xsetup
xrandr --output VGA-0 --mode 1366x768 --rate 60
setxkbmap -layout jp
EOF
ログイン画面のテーマとカーソルを変更します。
「root」ユーザのまま
sddm --example-config > /usr/local/etc/sddm.conf
vi /usr/local/etc/sddm.conf
[Theme]
# Current theme name
Current=breeze
# Cursor size used in the greeter
CursorSize=
# Cursor theme used in the greeter
CursorTheme=breeze_cursors
を下記へ変更します。
[Theme]
# Current theme name
Current=sddm-freebsd-black-theme
# Cursor size used in the greeter
CursorSize=
# Cursor theme used in the greeter
CursorTheme=Neutral++_White
4. .desktop ファイルの作成
他のタイル型デスクトップと異なり、「herbstluftwm」は、インストール時点で
/usr/local/share/xsessions/herbstluftwm.desktop
が作成されていますので、「.desktop」を作成する必要はありません。
ただし、「FreeBSD 13.3 RELEASE」から、デフォルトのままでは、ログインに失敗します。
「root」ユーザ権限で。
vi /usr/local/share/xsessions/herbstluftwm.desktop
[Desktop Entry]
Encoding=UTF-8
Name=herbstluftwm
Comment=Manual tiling window manager
Exec=herbstluftwm --locked
Type=Application
5行目を下記へ変更します。
Exec=herbstluftwm
5. ユーザ用初期化ファイルの作成
「root」ユーザ権限で。
日本語環境を設定し、キーボードレイアウト、Num Lock キー有効化、「VirtualBox Guest Additions」の起動を設定。
sh
cat << 'EOF' >> /etc/profile
export LC_ALL="ja_JP.UTF-8"
export LANGUAGE="ja_JP.UTF-8"
export LANG="ja_JP.UTF-8"
EOF
cat << 'EOF' >> /etc/csh.cshrc
setenv LC_ALL "ja_JP.UTF-8"
setenv LANGUAGE "ja_JP.UTF-8"
setenv LANG "ja_JP.UTF-8"
EOF
cat << 'EOF' >> /usr/share/skel/dot.xsession
#!/bin/sh
#
setxkbmap -layout jp
numlockx &
/usr/local/bin/VBoxClient-all
EOF
exit
chmod +x /usr/share/skel/dot.xsession
「EOF」の前の行は、「VirtualBox」の「Client」でのみの設定です。
既存のログインユーザで、まず、セッション開始の手順をスケルトンよりコピー。
cp /usr/share/skel/dot.xsession ~/.xsession
ログインユーザ用の起動時のスクリプトをシステムファイルからコピーします。
ログインユーザで。
mkdir -pv ~/.config/herbstluftwm/
cp /usr/local/etc/xdg/herbstluftwm/* ~/.config/herbstluftwm/.
6. ログインマネージャ起動
前項までインストール・設定したものを有効にします。
「root」ユーザ権限で。
sysrc dbus_enable=YES
sysrc sddm_enable=YES
起動します。
service dbus start
service sddm start
うまく設定できていれば、ログイン画面が表示されます。
ユーザ名・パスワードを入力してログインします。