河豚板の日本語デスクトップ環境設定ツール
今回は過去のEBUG勉強会ではあまり触れられてこなかったXのデスクトップ環境についての話題です。
背景
0. 河豚板のリリースのたびに環境作ってテストするの面倒くさい。
1. FuguIta BBSでの質問
- Installing IceWM in FuguIta 6.6
Hi, Kaw!
How can I install IceWM in FuguIta as my main window manager?
How many MB or GB of space should I use for the swap partition for
the installation of FuguIta?
2. 河豚板でキオスク端末的なやつを作ってみた
- https://twitter.com/yoshi_kaw/status/1206620780697505792
A turnkey browser system that runs on #FuguIta. I made it for my mother.
Press the power button, click any icon of the configured URL,
and finally press the power button again to shut down #OpenBSD automatically.
That's all.
概要
各BSDでのXの導入状況
| FreeBSD 12.1 | NetBSD 8.1 | OpenBSD 6.6 |
OSデフォルト | Xなし(Portsから要導入) (XOrg 1.18.4) | XOrg 1.18.4 | xenocara (*1) (XOrg 1.20.5) |
初期環境 | twm | twm, ctwm | twm, fvwm, cwm |
フットプリント | 2.5GB | 1.5GB | 1.3GB (*2) |
| | | |
備考 | デスクトップ用途に特化したフォークあり。 TrueOS GhostBSDなど | | *1 xenocara ... OpenBSDのXOrgサーバ実装。特権放棄と権限分離が組込まれている。 *2 河豚板では KARL(Kernel Adress Randomized Link)が入っていないため、約940MB |
OpenBSDでのXデスクトップ導入
参考資料
- 30分でできる OpenBSD 日本語デスクトップ環境
「デスクトップ環境として OpenBSD を用いることは、実はとても簡単です...」
- OpenBSD 6.0 で Xfce4 日本語デスクトップ環境の構築
「この文書では OpenBSD 6.0 で簡単に日本語デスクトップ環境を構築する方法を説明しています...」
どちらの資料でも、以下のような手順により導入を行っている:
- Xのログインマネージャ(xenodm, slimなど)をセットアップ
- pkg_addでデスクトップ環境と日本語環境関連のソフトウェアをインストール
- $HOME/.xsessionをセットアップ
- dbus等message busの設定
- 言語関連の環境変数
- 入力メソッドの起動
- ウィンドウマネージャ and/or デスクトップ環境の起動
- その他アプリケーション(ウェブブラウザなど)のインストールと設定
インストーラの実装
dtjsetup - DeskTop (plus optionally Japanese) SetUp Tool
実装方針
- 前項の導入手順のうち、pkg_addと.xsessionのセットアップをスクリプト化する。
- ログインマネージャのセットアップは河豚板本体で実行済み
- アプリケーションのインストールと設定は各自お好みで。
- 最終的にはLiveシステムへの永続化が必要 → 河豚板ではusbfadmユティリティで実施
- straightforward(直截的)な実行
- リトライ等なし ... エラーが発生したら、原因を表示して終了
- シンプルなU/I
- ユーザに入力を必要とさせない ... y/nあるいは複数項目からの選択のみ
実際の動作の様子
- デスクトップ環境 - WMのみ, ROX-Filer+WM, Xfce, MATE, Lumina, LXQt
- ウィンドウマネージャ - cwm, FVWM, Twm, icewm, fluxbox, jwm, $DTJ_WMSで設定したウィンドウマネージャ
- 入力メソッド - SCIM-Anthy, UIM-GTK, Fcitx-Anthy, ibus-SKK
シェル(ksh)スクリプトで記述
Future Work
- root権限 / ネットワークアクセスが不要な場合への対応
- デスクトップ環境のextra packageに対応させる
- メジャーなアプリケーション(ウェブブラウザなど)のインストールに対応させる
その他の話題
BitTorrentによる配布
LinuxTracker.orgにてBitTorrentによる配布を開始