ここまでの時点で、システムインストールと「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」のインストールは、一瞬で終わります。
2021年6月24日の時点で「bspwm」のバージョンは、下記の通りでした。
$ pkg info bspwm
bspwm-0.9.10
Name : bspwm
Version : 0.9.10
Installed on : Thu Jun 24 16:31:25 2021 JST
Origin : x11-wm/bspwm
Architecture : FreeBSD:13: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-util.so.1
libxcb-xinerama.so.0
libxcb-shape.so.0
libxcb-icccm.so.4
libxcb-ewmh.so.2
libxcb-randr.so.0
libxcb.so.1
libxcb-keysyms.so.1
Annotations :
FreeBSD_version: 1300139
repo_type : binary
repository : FreeBSD
Flat size : 232KiB
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
「FreeBSD 12.1 RELEASE」、2020年6月26日に「FreeBSD 12.1 RELEASE」へインストールしたときの「bspwm」のバージョンが「bspwm-0.9.9」でした。
今回は、2020年11月16日に「FreeBSD 12.2 RELEASE」へインストールしたときと同じバージョンです。
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' >> /usr/share/skel/dot.xsession
#!/bin/sh
# set locale
export LC_ALL=ja_JP.UTF-8
export LANGUAGE=ja_JP.UTF-8
export LANG=ja_JP.UTF-8
#
setxkbmap -layout jp
numlockx &
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 polkitd_enable=YES
sysrc dbus_enable=YES
sysrc sddm_enable=YES
7. ログインマネージャ起動
「root」ユーザ権限で。
service dbus start
service sddm start
うまく設定できていれば、ログイン画面が表示されます。
ユーザ名・パスワードを入力してログインします。