FreeBSD で Xorg, Web ブラウザ のインストール

FreeBSD のインストーラ (bsdinstall) は,グラフィカル環境を自動ではインストールしない. このページでは,グラフィックスドライバXorg (X Window System, X11),日本語フォント,日本語入力,Web ブラウザのインストールと設定の手順を示す.

前準備

基本設定

  1. /etc/rc.conf, /etc/fstab, /etc/sysctl.conf などの設定

    「FreeBSD 基本設定」の Web ページなどを参考に行う.

  2. パッケージの更新

    FreeBSD のソフトウェア導入は,バイナリパッケージを扱う pkg コマンドで行うのが基本である. 次のコマンドを実行して,パッケージ情報の更新とインストール済みパッケージの更新を行う.

    pkg update
    pkg upgrade
    
  3. ports ツリー (Ports Collection) の取得と更新

    パッケージに無いソフトウェアをインストールする場合や,ビルドオプションを変更してインストールする場合は,ports ツリーを使う. ports ツリーは git で配布されている. 次のコマンドを実行して,git のインストールと ports ツリーの取得を行う.

    pkg install git
    git clone --depth 1 https://git.FreeBSD.org/ports.git /usr/ports
    

    ports ツリーの更新は,次のコマンドを実行して行う.

    git -C /usr/ports pull
    
  4. パッケージと ports の混在について

    現在の FreeBSD では,pkg でインストールしたソフトウェアと,ports ツリーで make install したソフトウェアは,同一のパッケージデータベースで管理される. どちらでインストールしたものも pkg info で一覧表示でき,pkg delete で削除できる. そのため,混在を理由にインストール済みソフトウェアを全削除する必要は無い.

    インストール済みソフトウェアの一覧表示は,次のコマンドを実行して行う.

    pkg info
    

    なお,旧来の pkg_info, pkg_delete, portupgrade, cvsup, fastest_cvsup, /stand/sysinstall は,現在の FreeBSD には存在しない.

ソフトウェアの検索

パッケージの検索は,次のコマンドを実行して行う(キーワードの部分は,検索したい語に置き換える).

pkg search キーワード

ports ツリーからの検索は,次のコマンドを実行して行う(キーワードの部分は,検索したい語に置き換える).

cd /usr/ports
make search name=キーワード

グラフィックスドライバのインストール

Xorg を動かす前に,GPU (グラフィックスプロセッサ) に対応したカーネルモジュールを組み込む必要がある. まず,次のコマンドを実行して,搭載されている GPU を確認する.

pciconf -lv | grep -B3 display

Intel, AMD の GPU の場合

graphics/drm-kmod パッケージをインストールする. 次のコマンドを実行する.

pkg install drm-kmod

起動時にモジュールが読み込まれるように設定する. Intel の GPU の場合は,次のコマンドを実行する.

sysrc kld_list+=i915kms

AMD の GPU の場合は,次のコマンドを実行する(HD7000/Tahiti より前の世代では amdgpu の代わりに radeonkms を指定する).

sysrc kld_list+=amdgpu

NVIDIA の GPU の場合

NVIDIA の GPU では,NVIDIA が提供するプロプライエタリドライバを使用する. 次のコマンドを実行する.

pkg install nvidia-drm-kmod
sysrc kld_list+=nvidia-drm

カーネルモードセッティング (KMS) を有効にするために,/boot/loader.conf に次の行を追加する.

hw.nvidiadrm.modeset="1"

上記のドライバが使用できない場合

Intel, AMD, NVIDIA のドライバが対応していない GPU では,フレームバッファのドライバを使う. どちらを使うかは,起動モードで決まる. 起動モードは,次のコマンドを実行して確認する.

sysctl machdep.bootmethod

UEFI で起動している場合は scfb を使う.次のコマンドを実行する.

pkg install xf86-video-scfb

BIOS で起動している場合は vesa を使う.次のコマンドを実行する.

pkg install xf86-video-vesa

設定後は,次のコマンドを実行して再起動する.

shutdown -r now

Xorg のインストール

パッケージでインストールする場合は,次のコマンドを実行する.

pkg install xorg

ports ツリーを使ってインストールする場合は,次のコマンドを実行する(ビルドに時間がかかる).

cd /usr/ports/x11/xorg
make install clean

グラフィカル環境を使用するユーザは,video グループに所属している必要がある. 次のコマンドを実行する(username の部分は,実際のユーザ名に置き換える).

pw groupmod video -m username

最小構成の Xorg を使いたい場合は,x11/xorg-minimal をインストールする. ただし,付属のライブラリやアプリケーションがインストールされないため,動作しないアプリケーションがある.

Xorg の起動

一般ユーザでログインし,次のコマンドを実行して Xorg を起動する.

startx

起動時にグラフィカルなログイン画面を出したい場合は,ディスプレイマネージャを使う. 「FreeBSD で xdm を起動」の Web ページを参照する.

Xorg の設定

現在の Xorg は,GPU,モニタ (EDID による解像度・リフレッシュレートの取得),キーボード,マウス,タッチパッドを自動認識する. まず設定ファイルを作らずに動作を確認し,自動認識で不都合がある場合にだけ設定ファイルを作成する. 入力デバイスは libinput により扱われるので,マウスやホイールの設定を手作業で書く必要は無い.

設定ファイルは,/usr/local/etc/X11/xorg.conf.d/ ディレクトリに,設定項目ごとに分けて置く. 単一の xorg.conf を作成する方法や Xorg -configure の実行は,自動認識と競合するため,自動設定が失敗した場合以外は行わない.

ドライバを明示的に指定する場合

複数のドライバが競合する場合は,使用するドライバを指定する. Intel の GPU の場合,/usr/local/etc/X11/xorg.conf.d/20-intel.conf を作成し,次の内容を書く.

Section "Device"
	Identifier "Card0"
	Driver     "intel"
EndSection

NVIDIA の GPU の場合,/usr/local/etc/X11/xorg.conf.d/20-nvidia.conf を作成し,次の内容を書く.

Section "Device"
	Identifier "Card0"
	Driver     "nvidia"
EndSection

解像度の指定

Xorg の動作中に解像度を変更するときは,xrandr を使う. 接続されている出力と利用可能なモードの一覧表示は,次のコマンドを実行して行う.

xrandr

解像度とリフレッシュレートの変更は,次のコマンドを実行して行う(出力名,解像度,リフレッシュレートは,実際の環境に合わせる).

xrandr --output HDMI-1 --mode 1920x1080 --rate 60

設定ファイルで指定する場合は,/usr/local/etc/X11/xorg.conf.d/10-monitor.conf を作成し,次の内容を書く.

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	SubSection "Display"
	Modes      "1920x1080"
	EndSubSection
EndSection

日本語キーボードの設定

キーボードの配列を指定する場合は,/usr/local/etc/X11/xorg.conf.d/00-keyboard.conf を作成し,次の内容を書く.

Section "InputClass"
	Identifier "Keyboard0"
	MatchIsKeyboard "on"
	Option "XkbLayout" "jp"
	Option "XkbModel" "jp106"
EndSection

日本語フォントのインストール

日本語フォントは,次のコマンドを実行してインストールする.

pkg install noto-jp

システム全体で使うフォントは /usr/local/share/fonts/ に,ユーザ個人で使うフォントは ~/.local/share/fonts/ に置く. フォントを追加したあとは,次のコマンドを実行してフォントキャッシュを更新する.

fc-cache -f

日本語入力の設定

インプットメソッドフレームワークとして fcitx5 を使う. 次のコマンドを実行して,fcitx5,設定ツール,かな漢字変換エンジン (Anthy) をインストールする.

pkg install fcitx5 fcitx5-configtool ja-fcitx5-anthy

~/.xinitrc に,次の内容を書く(最終行の exec には,実際に使用するウィンドウマネージャまたはデスクトップ環境の起動コマンドを書く).

export LANG=ja_JP.UTF-8
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
fcitx5 -d
exec ctwm

入力メソッドの追加や切り替えキーの設定は,Xorg の動作中に次のコマンドを実行して行う.

fcitx5-configtool

Emacs の設定

~/.emacs あるいは ~/.emacs.d/init.el に,次の内容を書く.

(set-language-environment "Japanese")
(prefer-coding-system 'utf-8)

GUI 版の Emacs では,上記の ~/.xinitrc の設定 (XMODIFIERS=@im=fcitx) により,XIM 経由で fcitx5 による日本語入力ができる.

Web ブラウザのインストール

Firefox のインストール

pkg install firefox

長期サポート版を使う場合は,次のコマンドを実行する.

pkg install firefox-esr

Chromium のインストール

pkg install chromium

ブラウザは規模の大きいソフトウェアであり,ビルドに失敗したパッケージが一時的に配布されないことがある. その場合は,ports ツリーからインストールする. Firefox の場合は,次のコマンドを実行する.

cd /usr/ports/www/firefox
make install clean