FreeBSD でデスクトップ環境とプログラミング環境を整える(パッケージを活用)
◇ パッケージでインストールするもの
- X.Org X Window System,Wayland
- GNOME(他の選択肢として KDE Plasma, Xfce, MATE, Cinnamon, LXQt)
- 日本語入力: fcitx5, Mozc
- エディタ: emacs, vim, neovim, Visual Studio Code, yatex
- ビルドツール: gmake, cmake, ninja, meson, autoconf, automake, libtool, bison, gawk, pkgconf, ccache, binutils
- コンパイラ: 基本システムの Clang/LLVM,追加の GCC (lang/gcc)
- ライブラリ: readline, gmp, mpfr, mpc, suitesparse, metis, glpk, gsl, fltk
- 数値計算: OpenBLAS, LAPACK, LAPACKE, ARPACK
- 表示・変換: freetype2, xpdf, evince, ja-nkf, lv
- 日本語形態素解析: MeCab
- データベース: SQLite 3, SpatiaLite, MySQL クライアント
- グラフィックス: SDL2, ImageMagick 7, GraphicsMagick, libjpeg-turbo, libpng, libtiff, libwebp
- パノラマ画像: hugin, enblend-enfuse
- 動画: ffmpeg, mpv, vlc
- 可視化・画像処理・3D: VTK 9, OpenCV, Blender, OGRE
- GUI ツールキット: wxWidgets, Tcl/Tk
- 数値処理系: Octave, R
- プログラミング言語処理系: Python 3, Ruby, Java (OpenJDK)
- 仮想化: bhyve (基本システム), vm-bhyve, QEMU
- リモート接続: TigerVNC, FreeRDP, Remmina, FileZilla
◇ ソースコードからビルドするもの
- OpenBLAS(パッケージ版で足りない場合の任意手順)
* ポーツ (Ports Collection) を使う手順は別ページで説明
* Ubuntu については別ページで説明
* この Web ページで説明していない主要なソフトウェア
- Eclipse を FreeBSD にインストール(リンク先で説明)
- Octave-Forge を FreeBSD にインストール(リンク先で説明)
前準備
基本設定
- /etc/rc.conf, /etc/fstab, /etc/sysctl.conf の設定
「FreeBSD 基本設定」の Web ページなどを参考に行う.
- 基本システムの更新
リリース版 (RELEASE) を使っている場合は freebsd-update でセキュリティ更新とエラータ修正を適用する.root 権限で次のコマンドを実行する.
freebsd-update fetch freebsd-update install - パッケージ管理ツール pkg の準備
パッケージのカタログを取得し,インストール済みパッケージを最新にする.root 権限で次のコマンドを実行する.
pkg bootstrap pkg update pkg upgrade* pkg_add と portupgrade による運用は旧来の方式である.FreeBSD 10 以降は pkg(pkgng)が標準であり,本ページは pkg を用いる.
- パッケージのブランチの選択
FreeBSD の公式パッケージには,3 か月ごとに更新される quarterly と,随時更新される latest の 2 つのブランチがある.デスクトップ用途で新しいバージョンを使いたい場合は latest を選ぶ.設定は /usr/local/etc/pkg/repos/FreeBSD.conf に次の内容を記述する.
FreeBSD: { url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest" }設定を変更した後は,root 権限で次のコマンドを実行してカタログを取り直す.
pkg update -f pkg upgrade* 公式パッケージの配布は CDN 経由である.ミラーサイトを環境変数 PACKAGESITE で指定する旧来の設定は不要である.
- ポーツ・ツリーの取得(ソースからビルドする場合のみ)
FreeBSD 14 以降で portsnap は廃止された.ポーツ・ツリーは git で取得する.root 権限で次のコマンドを実行する.
pkg install git git clone --depth 1 https://git.FreeBSD.org/ports.git /usr/ports
GNOME 動作のための設定
GNOME は procfs と D-Bus を必要とする.
/etc/fstab に次の行を追加する.
proc /proc procfs rw 0 0
D-Bus とディスプレイマネージャ GDM をシステム起動時に開始する設定を行う.root 権限で次のコマンドを実行する.
sysrc dbus_enable="YES"
sysrc gdm_enable="YES"
日本語ロケールと日本語入力の設定
日本語入力は fcitx5 と Mozc の組み合わせを用いる.
◆ ~/.xprofile(GDM などのディスプレイマネージャからログインする場合)
export LANG=ja_JP.UTF-8
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
fcitx5 -d
◆ ~/.xinitrc(startx で起動する場合)
export LANG=ja_JP.UTF-8
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
fcitx5 -d
exec gnome-session
* 入力メソッドの追加とキーバインドの変更は fcitx5-configtool で行う.
emacs の日本語入力設定
~/.emacs(または ~/.emacs.d/init.el)に次の設定を記述する.
(set-language-environment "Japanese")
(prefer-coding-system 'utf-8)
(require 'mozc)
(setq default-input-method "japanese-mozc")
Java 開発環境 (OpenJDK) のインストール
FreeBSD Foundation 版 Java (diablo-jdk) は提供が終了している.現在は OpenJDK のパッケージを使う.root 権限で次のコマンドを実行する.
pkg install openjdk21
OpenJDK は /proc と fdescfs のマウントを必要とする./etc/fstab に次の行を追加する.
fdesc /dev/fd fdescfs rw 0 0
proc /proc procfs rw 0 0
インストールの確認は次のコマンドで行う.
java -version
X.Org と GNOME のインストール
【関連する外部ページ】 https://docs.freebsd.org/ja/books/handbook/desktop/
- X.Org と GNOME のインストール
root 権限で次のコマンドを実行する.
pkg install xorg pkg install gnome* 最小構成にしたい場合は gnome の代わりに gnome-lite を指定する.
- 日本語入力環境のインストール
root 権限で次のコマンドを実行する.
pkg install fcitx5 fcitx5-gtk fcitx5-qt fcitx5-configtool pkg install ja-fcitx5-mozc pkg install ja-font-std zh-wqy-fonts - システムの再起動と動作確認
root 権限で次のコマンドを実行し,GDM のログイン画面から GNOME セッションが起動することを確認する.
shutdown -r now
* GNOME 以外のデスクトップ環境を使う場合のパッケージ名は,KDE Plasma が kde,Xfce が xfce,MATE が mate,Cinnamon が cinnamon,LXQt が lxqt である.Xfce, MATE, Cinnamon ではディスプレイマネージャとして lightdm,KDE Plasma と LXQt では sddm を使う.
エディタのインストール
pkg install emacs
pkg install ja-mozc-el
pkg install ja-yatex
pkg install vim
pkg install neovim
pkg install vscode
開発ツールとライブラリのインストール
基本システムには Clang/LLVM,lld,lldb,make(BSD make)が含まれている.GNU 系のツールと追加のライブラリをパッケージで導入する.
# ビルドツール
pkg install gmake
pkg install cmake
pkg install ninja
pkg install meson
pkg install autoconf
pkg install automake
pkg install libtool
pkg install bison
pkg install gawk
pkg install pkgconf
pkg install ccache
pkg install binutils
pkg install gdb
pkg install git
pkg install tig
pkg install meld
# GNU コンパイラコレクション(Fortran を含む)
pkg install gcc
# ライブラリ類
pkg install readline
pkg install gmp
pkg install mpfr
pkg install mpc
pkg install metis
pkg install suitesparse
pkg install glpk
pkg install gsl
pkg install fltk
# 数値線形代数
pkg install openblas
pkg install lapack
pkg install lapacke
pkg install arpack-ng
# 表示,変換など
pkg install freetype2
pkg install xpdf
pkg install evince
pkg install ja-nkf
pkg install lv
# 日本語形態素解析
pkg install ja-mecab
pkg install ja-mecab-ipadic
# データベースクライアント
pkg install mysql84-client
# SDL
pkg install sdl2
# グラフィックス
pkg install ImageMagick7
pkg install GraphicsMagick
pkg install jpeg-turbo
pkg install png
pkg install tiff
pkg install webp
# パノラマ画像
pkg install hugin
pkg install enblend-enfuse
# 動画
pkg install ffmpeg
pkg install mpv
pkg install vlc
# 可視化 (VTK)
pkg install vtk9
# OpenCV
pkg install opencv
# wxWidgets
pkg install wx32-gtk3
# Tcl/Tk
pkg install tcl86
pkg install tk86
pkg install tcllib
# 3D
pkg install blender
pkg install ogre3d
# Octave
pkg install octave
# R
pkg install R
# オフィススイート
pkg install libreoffice
pkg install ja-libreoffice
# 仮想化ツール(bhyve は基本システムに含まれる)
pkg install vm-bhyve
pkg install qemu
# Windows アプリケーションの実行環境
pkg install wine
pkg install wine-gecko
pkg install wine-mono
# リモート接続とファイル転送
pkg install tigervnc-viewer
pkg install tigervnc-server
pkg install freerdp
pkg install remmina
pkg install remmina-plugin-rdp
pkg install remmina-plugin-vnc
pkg install filezilla
# ファイル管理,画像閲覧,スクリーンショット,作図,校正,印刷
pkg install gnome-commander
pkg install gwenview
pkg install scrot
pkg install dia
pkg install inkscape
pkg install gnuplot
pkg install aspell
pkg install en-aspell
pkg install a2ps
pkg install hexedit
* GNOME 環境で画面共有を行う場合は,デスクトップ環境に含まれる gnome-remote-desktop を GNOME の設定画面から有効にする.
Python 処理系のインストール
pkg install python3
pkg install py311-pip
pkg install py311-numpy
pkg install py311-scipy
pkg install py311-matplotlib
pkg install py311-pandas
pkg install py311-sqlite3
pkg install py311-opencv
* パッケージ名の「py311」の部分は,導入される Python のバージョンによって変わる.導入済みのバージョンは次のコマンドで確認する.
python3 --version
Ruby 処理系と SQLite 3 関係のインストール
# SQLite 3
pkg install sqlite3
pkg install spatialite
pkg install sqlitebrowser
# Ruby
pkg install ruby
pkg install ruby34-gems
pkg install rubygem-rails
pkg install rubygem-sqlite3
pkg install rubygem-mysql2
pkg install rubygem-rmagick
pkg install rubygem-nokogiri
* パッケージ名の「ruby34」の部分は,導入される Ruby のバージョンによって変わる.導入済みのバージョンは次のコマンドで確認する.
ruby --version
OpenBLAS のインストール (ソースコードからビルド)
OpenBLAS は GotoBLAS2 を基に開発が継続されている BLAS 実装であり,CBLAS インタフェースと LAPACK を同梱している.GotoBLAS2 と ATLAS はいずれも開発が終了しており,FreeBSD のポーツからも削除された.通常は次のコマンドでパッケージを導入すれば十分である.
pkg install openblas
実行環境の CPU に合わせて最適化した版が必要な場合は,ソースコードからビルドする.ライセンスは BSD 3-Clause である.
* 前準備
ソースコードの入手先 https://github.com/OpenMathLib/OpenBLAS
* インストール操作を記述したスクリプト
【特記事項】 FreeBSD では「make」の替わりに「gmake」を使う.Fortran コンパイラには lang/gcc が提供する gfortran14 を指定する.
pkg install git gmake gcc
cd /tmp
rm -rf /tmp/OpenBLAS
git clone --depth 1 https://github.com/OpenMathLib/OpenBLAS.git
cd /tmp/OpenBLAS
gmake CC=cc FC=gfortran14 USE_OPENMP=1 DYNAMIC_ARCH=1
gmake PREFIX=/usr/local install
インストールされたライブラリの確認は次のコマンドで行う.
ls /usr/local/lib/libopenblas*
ls /usr/local/include/cblas.h
* DYNAMIC_ARCH=1 を指定すると,実行時に CPU を判定して最適なカーネルを選択する版が生成される.ビルドしたマシンでのみ使用する場合は指定を省略してよい.