この記事はX.org 7.4の環境構築方法について説明しています。
X.org 7.5以降の環境構築方法については「GUI環境を構築する (X.org 7.x/xfce 4.x)」を参照してください。
X.org 7.3以前の環境構築方法については「GUI環境を構築する (X.org 7.3/xfce 4.x)」を参照してください。

はじめに

主にサーバ用途で利用されることの多いFreeBSDですが、Windowsと比較して遜色ないデスクトップ環境を構築することも可能です。

但し、先に言及しておきますが、正直なところFreeBSDはLinuxに比べ、マルチメディア関係のアプリケーションの対応があまりよくありません。
これはひとえに、Flash PlayerやRealPlayer等のマルチメディア系のプレイヤが、Linuxには対応しているがFreeBSDには対応していないことに起因しています。

もちろん、FreeBSDでも、Linuxエミュレータを利用してこれらのソフトウェアを動作させることはできますが、特にOSにこだわりがないのであれば、UbuntuFedoraあたりのLinuxをご利用になることをお勧めします。

それでも、という方のために、このページではX Window Systemである「X.org」と、軽量なデスクトップ環境である「xfce」を利用して、Windowsライクなデスクトップ環境のベースを構築する方法について説明します。

関係ソフトウェアのmakeおよびインストール

まず、デスクトップ環境を構築するために必要なソフトウェアのmakeおよびインストールを行います。

「X.org」本体のインストール

まず、デスクトップ環境の核となる「X.org」をインストールします。
以下の手順でX.orgをportsから導入してください。
portsの取得および展開方法については、「最新のportsを取得して展開する」を参照してください。

x.orgのビルドおよびインストール
$ cd /usr/ports/x11/xorg
$ make config-recursive
$ make install clean

make時にも注意喚起されますが、xorgの構築にはHDDに2GB程度の空き容量が必要になります。
また、構築には膨大な時間が掛かりますので(手元のPentium III 866MHzのマシンで丸二日程度)、ロースペックなマシンでportsからコンパイルする場合には、暫くの間放置する勇気と、それを許す周りの環境が必要です。

また、X.org 7.4からはX.orgの標準ディスプレイマネージャ「XDM」およびセッションマネージャ「XSM」がX.orgのportsに含まれなくなりましたので、これらもportsから導入しておきます。

「XDM」の導入
$ cd /usr/ports/x11/xdm/
$ make config-recursive
$ make install clean

「XSM」の導入
$ cd /usr/ports/x11/xsm/
$ make config-recursive
$ make install clean

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

X.orgのインストールが完了したら、次は日本語のフォントをインストールします。
デフォルトの状態でも日本語フォントはインストールされているのですが、等幅でビットマップなフォントで、お世辞にも綺麗といえない為、別途インストールしたほうがよいです。

以前は、フリーで綺麗なフォントというのはなかなかなかったのですが(「東風フォント」というのがあったのですが、ベースにしたフォントのライセンス問題で2003年10月に制作・配布終了となりました)、2004年 7月に情報処理推進機構(IPA)が「地理情報システム(GRASS)」の一部として、「IPAフォント」と呼ばれるライセンスの緩いフォントを公開したことにより、OSSではこのフォントが広く使われるようになりました。

今回構築する環境でも、このIPAフォントを導入することにします。

IPAフォントもportsからインストールします、以下の手順でインストールしてください。

IPAフォントのビルドおよびインストール
$ cd /usr/ports/japanese/font-std
$ make config-recursive
$ make install clean

$ cd /usr/ports/japanese/font-mplus-ipa
$ make config-recursive
$ make install clean

尚、日本語フォント関連のportsは、2009/06初旬に大規模な整理が行われ、portsの名称が大幅に整理されています。
詳しくは後藤大地さんのFreeBSD Daily Topicsの「FreeBSD Daily Topics:2009年6月1日 ≪注目≫日本語フォント関連一斉変更 - ipa-ttfontsからfont-stdへ (内容比較表あり)|gihyo.jp … 技術評論社」をご参照ください。

デスクトップ環境「xfce 4.x」のインストール

続いて、軽量なデスクトップ環境である「xfce」をインストールします。
やはりxfceもportsとして提供されていますので、以下の手順でportsからインストールしてください。

xfceのビルドおよびインストール
$ cd /usr/ports/x11-wm/xfce4
$ make config-recursive
$ make install clean

「make config-recursive」を行うと、メニュー形式でいくつかの設定項目が表示されますが、「DBUS」および「FAM」(File Alternation Monitor)関連の項目については、必ず有効にするようにしてください。(ほとんどの場合、デフォルトでチェックが入っています)
前者はX.orgがデバイスを制御するのに必要な機能で、これを有効にしないと、xfce4自体が起動しません。
また、後者はファイルに対する変更(新規作成や削除を含む)をモニタする機能で、これを有効にしないと、ディスクトップに新規作成したファイルのアイコンが表示されなかったり、削除されたファイルのアイコンが表示されたままになったります。

尚、xfce4の構築もxorgの構築と同じぐらい時間が掛かりますので、ご注意ください。

インストール後の設定

必要なportsのインストールが完了したら、次にそれぞれのソフトウェアの設定を行います。

デバイスの自動検出

まずはじめに、X WINDOW SYSTEMが利用するデバイスの設定を行います。
下記のように入力して、X.orgの設定ファイルである「xorg.conf」を自動生成します。

「xorg.conf.new」の自動生成
$ Xorg -configure

上記のようにするとデバイスが自動検出され、その内容が「xorg.conf.new」として書き出されます。
生成された「xorg.conf.new」はユーザのホームディレクトリに保存されますので、これを「/etc/X11/xorg.conf」として保存してください。

HAL等の必須daemonの起動

X.org 7.4から、キーボードおよびマウスを含む殆どのデバイスがHAL経由で制御されるようになりました。
また、X.orgを正常に動作させるためには、dbusやPolicyKit等のdaemonも必要なので、システム起動時にこれらのdaemonが動作するよう、「/etc/rc.conf」に以下の記述を追加します。

「/etc/rc.conf」への追記
dbus_enable="YES"
hald_enable="YES"
polkitd_enable="YES"

設定完了後、システムを再起動することにより、これらのdaemonが動作するようになります。

システム再起動後、kernelを独自に構築している場合等に以下のメッセージが表示されることがあります。

passデバイスに関する警告
xptioctl: pass driver is not in the kernel
xptioctl: put "device pass" in your kernel config file

このままの状態ですと、HALが正常に動作しないため、メッセージの通りkernelコンフィグファイルに「device pass」の記述を追加し、kernelを再構築してください。

キーボード配列の設定

X WINDOW SYSTEMでのデフォルトのキーボード配列は英語になっているので、これをあらかじめ日本語に変更しておきます。

具体的には「/usr/local/etc/hal/fdi/policy/10-x11-kbd.fdi」というファイルを作成し、以下の内容を記述します。

「/usr/local/etc/hal/fdi/policy/10-x11-kbd.fdi」の作成
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keyboard">
      <match key="info.udi" string="/org/freedesktop/Hal/devices/atkbd_0">
	<merge key="input.x11_options.XkbRules" type="string">xorg</merge>
        <merge key="input.x11_options.XkbModel" type="string">jp106</merge>
        <merge key="input.x11_options.XkbLayout" type="string">jp</merge>
        <merge key="input.x11_options.XkbOptions" type="string">ctrl:nocaps</merge>
      </match>
    </match>
  </device>
</deviceinfo>

上記の通り、X.org 7.4からはキーボードの制御もHAL経由となっているため、「/etc/X11/xorg.conf」を編集する従来の設定方法とは違う点に注意してください。

設定後、下記の通り入力することにより、X WINDOW SYSTEMを起動することが出来ます。

X WINDOW SYSTEMの起動
$ startx

システム起動時にGUIのログイン画面を表示するようにする

X WINDOW SYSTEMを起動させるのに、ログイン後「startx」と入力するのは、あまりスマートではないため、FreeBSDの起動完了後に、GUIのログイン画面を出すように設定変更します。

先ほどportsから導入したディスプレイマネージャ「XDM」がシステム起動時に自動的に呼び出されるよう、コンソール関係の設定ファイル「/etc/ttys」を下記の通り編集してください。

「ttys」の設定(編集前)
ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

「ttys」の設定(編集後)
ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   on  secure

編集後、システムを再起動させると、XDMのログイン画面が表示されるようになります。
ログインスクリプトの不備等で、コンソール画面での作業が必要な場合には、[Ctrl]+[Alt]+[F1]を同時に押してコンソール画面に切り替えてください。

ユーザごとのX起動用スクリプトの作成

次に、各ユーザがXDMでログインした際に、xfce4のウインドウマネージャが起動するように、各ユーザごとに「.xsession」を以下のように作成します。

「$HOME/.xsession」の作成
#!/bin/sh

export LANG=ja_JP.eucJP

sleep 3

exec startxfce4

作成した「.xsession」は、各ユーザのルートフォルダにおいてください。

一般ユーザがマシンをreboot/shutdown出来るように設定

続いて、各ユーザがxfce4の画面上からマシンをrebootまたはshutdownできるように、PolicyKitの設定を行います。

デフォルトの状態では、rootのみに全アクションが許可されていますので、特定のユーザに対して再起動/シャットダウンを許可する場合には、「/usr/local/etc/PolicyKit/PolicyKit.conf」の「<match user="root"></match>」の後に、下記の記述を追記してください。

「/usr/local/etc/PolicyKit/PolicyKit.conf」への追記
<match user="アクションを許可するユーザ名">
<return result="yes"/>
</match>

分かり辛いかもしれませんが、「/usr/local/etc/PolicyKit/PolicyKit.conf」はXMLで記述されています。
上記記述は、必ず「<match user="root"></match>」と同じ階層に記述するようにしてください。

パフォーマンス向上の為の設定

X.orgについては、以下の設定を行うことにより、パフォーマンスを向上させることが出来ます。
「/etc/sysctl.conf」に以下の記述を追記してください。

「/etc/sysctl.conf」への追記
kern.ipc.shmmax=67108864
kern.ipc.shmall=32768

より良いデスクトップ環境を構築するために

X.orgおよびxfce4本体に関する設定は以上ですが、より良いデスクトップ環境を構築するには、日本語入力環境やブラウザ、メーラ、メディアプレイヤー等の整備が必要になります。

これらの設定方法についても説明していますので、以下の各ページをご参照ください。

・ 日本語入力環境を構築する(scim/anthy)
・ ウェブブラウザ「Firefox」を導入する
・ ウェブブラウザ「Firefox」でFlashが再生できるようにする
・ インターネットメーラー「Thunderbird」を導入する
・ メディアプレイヤー「VLC」を導入する
・ メディアプレイヤー「RealPlayer」を導入する
・ PDFリーダー「Acrobat Reader」を導入する

変更履歴

2010/07/05

・メディアプレイヤー「VLC」の利用方法の説明ページへのリンクを追加。

2010/05/14

・フォント全般のportsが変更されたため、それにあわせて構築するports名を修正。

2009/10/02

・キーボードの設定で、編集対象をファイルが「/usr/local/etc/hal/fdi/policy/10-x11-kbd.fdi」なのに誤って「/etc/rc.conf」と記述していた誤記を修正。(ご指摘頂いた方、ありがとうございます!)


あなたの探し物は見つかりましたか?
まさにこれだ
参考になった
ちょっと違う
これじゃない

何かメッセージがあればお願いします

このメッセージを非公開にする

ご注意

・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。


まだ評価がありません

表示できるメッセージはありません。