ここまでの時点で、システムインストールと「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 bspwm urxvt-font-size
最終行の、「bspwm」のインストールは、一瞬で終わります。
「FreeBSD 12.1 RELEASE」、2020年6月26日に「FreeBSD 12.1 RELEASE」へインストールしたときの「bspwm」のバージョンが「bspwm-0.9.9」でした。
下記へインストールしたときは、バージョン「bspwm-0.9.10」でした。
2020年11月16日「FreeBSD 12.2 RELEASE」へインストールしたとき
2021年 6月24日「FreeBSD 13.0 RELEASE」へインストールしたとき
2021年12月22日「FreeBSD 12.3 RELEASE」へインストールしたとき
2022年 5月26日「FreeBSD 13.1 RELEASE」へインストールしたとき
2022年12月22日の時点で「bspwm」のバージョンは、下記の通りで、変わっていません。
$ pkg info bspwm
bspwm-0.9.10
Name : bspwm
Version : 0.9.10
Installed on : Thu Dec 22 15:57:52 2022 JST
Origin : x11-wm/bspwm
Architecture : FreeBSD:12:amd64
Prefix : /usr/local
Categories : x11-wm
Licenses : BSD2CLAUSE
Maintainer : o.hushchenkov@gmail.com
WWW : https://github.com/baskerville/bspwm
Comment : Tiling window manager based on binary space partitioning
Options :
CONTRIB : off
DOCS : on
EXAMPLES : on
Shared Libs required:
libxcb.so.1
libxcb-xinerama.so.0
libxcb-util.so.1
libxcb-shape.so.0
libxcb-randr.so.0
libxcb-keysyms.so.1
libxcb-icccm.so.4
libxcb-ewmh.so.2
Annotations :
FreeBSD_version: 1203000
repo_type : binary
repository : FreeBSD
Flat size : 233KiB
Description :
bspwm is a tiling window manager that represents windows as the leaves
of a full binary tree. It is controlled and configured via bspc.
WWW: https://github.com/baskerville/bspwm
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 theme used in the greeter
CursorTheme=breeze_cursors
を下記へ変更します。
[Theme]
# Current theme name
Current=sddm-freebsd-black-theme
# Cursor theme used in the greeter
CursorTheme=Neutral++_White
4. .desktop ファイルの作成
ログイン時に有効となるよう、「.desktop」ファイルを作成します。
「root」ユーザ権限で。
mkdir -pv /usr/local/share/xsessions
sh
cat << 'EOF' >> /usr/local/share/xsessions/bspwm.desktop
[Desktop Entry]
Name=bspwm
Comment=A lightweight window manager for the X Windowing System
Exec=bspwm
Terminal=false
TryExec=bspwm
Type=Application
EOF
exit
5. ユーザ用初期化ファイルの作成
「root」ユーザ権限で。
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
exit
sh
cat << 'EOF' >> /usr/share/skel/dot.xsession
#!/bin/sh
#
setxkbmap -layout jp
numlockx on
EOF
exit
chmod +x /usr/share/skel/dot.xsession
mkdir -pv /usr/share/skel/dot.config/bspwm
cp /usr/local/share/examples/bspwm/bspwmrc /usr/share/skel/dot.config/bspwm/.
chmod +x /usr/share/skel/dot.config/bspwm/bspwmrc
mkdir -pv /usr/share/skel/dot.config/sxhkd
cp /usr/local/share/examples/bspwm/sxhkdrc /usr/share/skel/dot.config/sxhkd/.
既存のログインユーザで。
(新規ユーザがちゃんとこれらを作成できるのかは、試していません)
cp /usr/share/skel/dot.xsession ~/.xsession
mkdir -pv ~/.config
cp -R /usr/share/skel/dot.config/bspwm ~/.config/.
cp -R /usr/share/skel/dot.config/sxhkd ~/.config/.
6. /etc/rc.conf 編集
前項までインストール・設定したものを有効にします。
「root」ユーザ権限で。
sysrc dbus_enable=YES
sysrc sddm_enable=YES
7. ログインマネージャ起動
「root」ユーザ権限で。
service dbus start
service sddm start
うまく設定できていれば、ログイン画面が表示されます。
ユーザ名・パスワードを入力してログインします。