GhostBSDの実機へのインストールと日本語環境のセットアップで躓いたところ。

[当方執筆の技術情報に関するライセンス、免責事項、禁止事項](https://qiita.com/EarthSimilarityIndex/items/6b9bb2ccacb38aae15b1)

****

#GhostBSDとは
![GhostBSD_18.10_MATE_screenshot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/f4f16140-6695-b9fe-ba53-dd5b8d222880.png)
TrueOSベースのデスクトップ向けFreeBSDディストリビューション。
画像出典:
https://upload.wikimedia.org/wikipedia/en/6/65/GhostBSD_18.10_MATE_screenshot.png

###公式サイト
https://www.ghostbsd.org/
![Screenshot_2019-05-05 GhostBSD Wiki.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/5257b80a-b4af-f89f-9ec6-202ae994b670.png)
*"A simple, elegant desktop BSD Operating System"*
※ ロゴ画像は公式サイトより
###公式フォーラム
https://forums.ghostbsd.org/
###公式Wiki
https://wiki.ghostbsd.org/index.php/Main_Page
###Wikipedia
https://en.wikipedia.org/wiki/GhostBSD

###YouTube上のレビュー
#####*GhostBSD 19.04 overview | A simple, elegant desktop BSD Operating System*
https://www.youtube.com/watch?v=jFfVp_zfk1c

#####*How to install GhostBSD 19.04*
https://www.youtube.com/watch?v=So907pLtdKA

#####*GhostBSD 'Mate' 19.04 Review - A real Review!*
https://www.youtube.com/watch?v=Qj_4EzjMqNk

#導入動機
デジタルスカルプトに使おうと買ったCiclop3Dスキャナ。
↓
これのスキャニングソフトウェアHorusを改修、ついでに対応OSを増やしたい。
（Python2系ベースなので書き換えないと先がないのデス）
↓
っしゃ、GhostBSD試すか。
↓
ウボァ

一度環境が整うと全体的に安定しており、かなり使い勝手が良いように思う。

#環境
- M/B
    - A68N-5600
- CPU
    - AMD A10-4655M APU 
- メモリ
    - DDR3 1333+ 16GB
- HDD
    - 120GB SSD
- グラフィック
    - NVIDIA GeForce GT 710
    - AMD Radeon HD 7620G
- OS
    - GhostBSD 19.04 64-bit Official Release（MATEデスクトップ環境）

#インストール時
###SATAの設定をAHCIにしておかなかったためか、インストールプロセスが始まらない
- UEFI で IDE → AHCI に変更。

###インストール開始、しかしWaiting for GhostBSD media to initializeの段階で次に進まない
- エラーと思い再起動 ← 間違い。
- 「待つ」と次に進む。
    - ジョニィが来たなら伝えてよ、2分待ってたと。
- CDをUEFI起動だとほとんど待たないで済む。

#ログイン及びアプリケーションのインストール
###MATE 端末が開かない
- Cool Retro Termをインストール、そちらは無事に起動。
- Cool Retro Termで端末起動後はMATE端末も開くように。

#####対策
グラフィカルログインの前にテキストログインを一回行っておくと良いかもしれない。

###Software Station でインストールログが見られない
端末やテキストログインで
`sudo pkg install fugahoge`
もしくは別のGUIフロントエンドである ~~octpkg~~ octopkg を使う。
※ タイプミス。×octpkg 〇octopkg
※ sudo では「自分のパスワード」を入力する。rootパスワードを入れるのは su 。忘れていて焦りマシタ。
※ octopkgはgksuと併用して運用するっぽい。でも筆者の環境では上手く動いてくれない :sob:
↓
rootパスワードを間違えていただけでした。gksuが入っていれば問題なく使えます。

#日本語環境の構築
###GUIが日本語で立ち上がらない
![ごーすとびーえすでぃー.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/9dcd3887-385b-81fa-91ad-5e00ab8e013e.jpeg)
ログイン画面（lightdm）の右上に言語選択がある。
そこでja_JP.UTF-8を選ぶ。
※ 画像は仮想マシン上のGhostBSD 19.04。
※ LightDMで日本語を選択しても日本語が表示されないという話もちらほら。その場合は.xprofileで環境変数を適宜指定すること。
#####参考
FreeBSD あれこれ: トップ > デスクトップ環境構築 > GhostBSD > 19.04 > 共通事項 > 日本語化
http://freebsd.sing.ne.jp/

FreeBSDで遊ぼう:GhostBSDのページの[補足説明]の節
http://silversack.my.coocan.jp/bsd/ghostbsd.htm

###.xinitrcに書いても、.xsessionに書いても反映されない
.xprofileに書く。たぶんlightdmが.xinitrcや.xsessionを読んでくれないんだと思う。

まとめるとこんな感じ。
startx → .xinitrc
XDM → .xsession
○○DM → .xprofile
（SDDMとかLightDMとか）

なお、pkgコマンドで日本語入力関連パッケージを入れると「環境変数にこれこれを指定してね」ってメッセージが出るが Software Station を使うと見逃すので注意。

#####参考
GhostBSD Forums
About conversion of Japanese
https://forums.ghostbsd.org/viewtopic.php?t=763

#####先行研究
FreeBSD あれこれ: トップ > デスクトップ環境構築 > 共通事項 > 日本語入力・フォント
http://freebsd.sing.ne.jp/

FreeBSDで遊ぼう:GhostBSD
http://silversack.my.coocan.jp/bsd/ghostbsd.htm

xprofileとxinitrcとの違い - テクニカルプア
https://nosada.hatenablog.com/entry/2014/03/11/232330

#####出典
5.7. デスクトップ環境 - FreeBSD
https://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/x11-wm.html

xprofile - ArchWiki
https://wiki.archlinux.jp/index.php/Xprofile

xinitrc - ArchWiki
https://wiki.archlinux.jp/index.php/Xinitrc

ディスプレイマネージャ - ArchWiki
https://wiki.archlinux.jp/index.php/%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4%E3%83%9E%E3%83%8D%E3%83%BC%E3%82%B8%E3%83%A3

※ LinuxとFreeBSDではsystemdやinit等のシステムの起動過程やデーモンの呼び出しに違いがあり、Linux向けの情報をそのままFreeBSDに適用出来ないことがある（逆もしかり）。

###MATEが二重起動してGUIが変になった
lightdmから呼び出すなら.xprofileにMATE（及び他のデスクトップ環境やウィンドウマネージャ）を起動させる行を入れないこと。
※ 2019年5月5日時点の情報である点に留意。今後変わることもあるかもしれない。

###fcitxがGUIで設定できない
zh-fcitx-configtoolを入れる。

#####出典
FreeBSD あれこれ: トップ > デスクトップ環境構築 > 共通事項 > 日本語入力・フォント > fcitx-mozc
http://freebsd.sing.ne.jp/

###qt5アプリで日本語入力出来ない
自分のマシンではfcitx-qt5が入っているのにqt5アプリ（luminaデスクトップ環境など）で日本語入力が出来ないという珍現象に遭遇。日本語入力環境に uim を採用して事なきを得た。
※ `export QT_IM_MODULE=fcitx`とすると日本語入力自体は可能になった。
※ pkgで導入するfcitx+mozcな日本語入力環境はやや不安定な印象。

#####導入例
`sudo pkg install uim uim-gtk uim-gtk3 uim-qt5 ja-uim-mozc ja-mozc-server ja-mozc-tool`

###uim でシステムトレイにアイコンが現れない
起動時に uim-toolbar-gtk-systray を呼び出す。
#####出典
UimToolbar · uim/uim-doc-ja Wiki - GitHub
https://github.com/uim/uim-doc-ja/wiki/UimToolbar

###CLIで日本語キーボードが有効になっていない
/etc/rc.conf で"jp.106"と記載されている箇所を"jp.kbd"と訂正する。

###おまけ、筆者の.xprofile

```
#!/bin/sh
setxkbmap -layout jp

export GTK_IM_MODULE=uim
export QT_IM_MODULE=uim
export XMODIFIERS=@im=uim
export XIM=uim

/usr/local/bin/mozc start

uim-xim &
uim-toolbar-gtk-systray &
```

#時計、変？
ハードウェアクロックをUTCで合わせてみる。

#他のデスクトップ向けBSDディストリビューション
###Project Trident
![Screenshot_2019-05-06 Home Project Trident.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/a7aaf9b9-94d6-9940-e2c7-c42702e31334.png)
https://project-trident.org/
※ ロゴ画像は公式サイトより
###MidnightBSD
![Screenshot_2019-05-06 MidnightBSD.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/2731ecfe-e9a6-0be6-75fb-c89cb1820913.png)
https://www.midnightbsd.org/
※ ロゴ画像は公式サイトより
###NomadBSD
![Screenshot_2019-05-06 NomadBSD.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/410379/1f088866-b3fb-5eef-2a05-76cec1509c4e.png)
http://nomadbsd.org/
※ ロゴ画像は公式サイトより
###参考
OSDisc.comのDesktop向けBSDのカテゴリ
https://www.osdisc.com/products/bsd/desktop

DistroWatchのDesktop向けBSDのカテゴリ
https://distrowatch.com/search.php?ostype=BSD&category=Desktop&status=Active#simple