5月 202018
 

最近の ports-current を追いかけていると、統合デスクトップ環境 (懐かしい響きだ;-) に KDE4 を利用している人にとっては、関連性からインストールする packages が xxx-kde4 へと、名前が順次変わっていたので『むむむ。そろそろ KDE5 が降ってくるのか?』などと思っていたら、果たしてその通りで x11/kde5 と、いうのができました。

デスクトップが更新されたのはずいぶんと久しぶりだなぁ。以前のこのブログのエントリに「FreeBSD に KDE4.1 がやってきた。」と、いうのを書いているのですが、それが 2008 年 08 月ですね。約 10 年ほど KDE4 を使い続けた。と、いうことですが、このたび KDE5 に移行しました。今回のネタは FreeBSD で利用する KDE5 について、少々書いてみたいと思います。

 
それにしても 10 年も経つと色々なことが変わりつつあります。そもそも、今でもデスクトップ環境として FreeBSD+xorg を利用している人は何人くらいいるのでしょうか? このエントリを書いて、ちゃんと読んでくれて、設定を方法を見てくれる人がどれくらいいるのでしょうか? 不安です・・f(^^;;。

が、まぁ、しかし、初めてみましょう。

 
1). インストール
まぁ、簡単で ports の x11/kde5 を make install すれば良いだけです。make config で好きなモノを設定していけば良いでしょう。
ただし、KDE4 からのアップグレードの場合、KDE4 に関連する packages は全て削除しましょう。 KDE4 と KDE5 の ports/packages では confrict が発生し、 make install が途中で止まったりします。

インストールは qt5- ・ kf5- ・ plasma5- で始まるモノがドドドとインストールされます。 akonadi はまだ動かないようですね。なので korganizer やkmail などは動きませんし、インストールされません。 okular は QT4 ライブラリがくっ付いているのでインストールする気にもなれません。これらは 18.04.1 のバージョンで多分解決するのではないかな。と思われます。
オフィスアプリは calligra-3.1.0 よりも libreoffice のほうが良いでしょう。

あと、KDE5 や Qt5 では日本語言語パックがなくなりました。フツーにインストールすると i18n 対応です。一応、 devel/kf5-ki18n がインストールされているかだけ、確認しておきましょう。

ports から make すると PC の性能にもよりますが 40 時間程度でインストールされると思います;-)。

 
あと、ウィンドマネージャとしての kdm がなくなりました。変わりに sddm というのを利用します。 kde5 インストール時に関連性でインストールされないので、後から x11/sddm と deskutils/plasma5-sddm-kcm をインストールしましょう。

起動については kdm4 と一緒です。 /etc/rc.conf に以下のように記載すれば OK です。

sddm_enable="YES"
sddm_lang="ja_JP"

 
sddm は一回起動すると /usr/local/share/sddm/scripts/Xsession というログイン時のスクリプトを生成します。自分好みの起動にしたい場合はこのファイルを直接直しちゃいましょう;-)。

インストールについてはだいたいこんな感じでしょうかねぇ。

 
2). 環境構築。
sddm から左上の「セッション」から “plasma” を選択すると上記 sddm の Xsession から startkde が実行され、デスクトップが表示されます。
“User Session” を選択すると ${HOME}/.xsession が動き出します。

起動後についでてすが、 KDE4 を利用していた場合は ${HOME}/.kde4/ に設定ファイルが置かれていましたが、 KDE5 では ${HOME}/.config/ にバラけて入るようになりました。
僕の場合は、ややこすぃーのがイヤなので KDE4 の設定は引き継がず、新たに KDE5 の設定ファイルが新規に生成されるようにしました。しかし、KDE5 になっても ${HOME}/.kde/ に設定ファイルを置くプログラムが何個があるようですね。

KDE5 のデスクトップ環境は「KDE システム設定」 (systemsettings5) で様々な設定をします。

僕は「KDE システム設定」->「起動と終了」->「自動起動」から「スクリプトファイル」で以下を実行するようにしました。環境変数と X のキーボード周り、あと、言語設定などですね。

#!/bin/sh
# XmodMap Sesource Setup
Xkeybord=$HOME/.xmodmaprc
if [ -f $Xkeybord ]; then
        /usr/local/bin/xmodmap $Xkeybord > /dev/null
fi
UsrResource=$HOME/.Xresources
if [ -f $UsrResource ]; then
        /usr/local/bin/xrdb -load $UsrResource
fi

# Start some clients
xset s 300 300 &
xset s noblank &

export LC_TIME=C
export LANG=ja_JP.UTF-8
export LC_CTYPE=ja_JP.UTF-8

export TZ=JST-9

export TERM=xterm
export UNICODEMAP_JP=cp932

# Session Type Select
export KDE_UTF8_FILENAMES=true
export KDE_LANG=ja_JP.UTF-8
export QT_XFT=true
export GDK_USE_XFT=true

## IME Start
#export QT_IM_MODULE=xim        # Qt4 用設定
export QT_IM_MODULE=fcitx       # Qt5 用設定
export GTK_IM_MODULE=xim
export XMODIFIERS=@im=fcitx

exec /usr/local/bin/mozc start
exec /usr/local/bin/fcitx

# Other Wakeup Programs
# gkrellm
Gkrellm="/usr/local/bin/gkrellm"
if [ -f $Gkrellm ]; then
    exec $Gkrellm &
fi
# Emulate3Button
Xkb2mb2="/usr/local/bin/kb2mb2"
if [ -f $Xkb2mb2 ]; then
    exec $Xkb2mb2 -c 117 &
fi

 
日本語入力は fxitx+mozc を利用しています。 fcitx は Qt5 用に textproc/fcitx-qt5 をインストールする必要があります。そして、環境変数の設定方法も変わっています。

fcitx 自体は今でも GUI 部分に Qt4 ライブラリを利用しています。うーむ。早いところ Qt5 に移行してほしいなぁ。 fcitx5 というのがリリースされているので、早いところ FreeBSD の ports になってほしいモノです。
ちなみに japanese/mozc-tool は Qt5 に移行しています。

文字をベコベコ打っていると、キーボードが 101 形式であることがわかります。 106 キーボードに変更する人は「KDEシステム設定」->「入力デバイス」->「キーボード」から設定します。一番最初に表示される [ハードウェア] タブにのキーボードモデルには 106 キーボードが無いんですね。その横にある [レイアウト] タブの「レイアウトを設定」にチェックを入れて JP 日本語キーボードを新規に登録する必要があります。

以下、キャプチャです。

こんな感じでキーボードを登録すると KDE5 側でも 106 キーボードが利用可能です。 X の twm などでは 106 キーボードが使えるのに KDE5 を起動すると 101 キーボードになってしまうので困ってしまうですねぇ。

 
もっと困ったのがマウスでした。僕の場合 Apple が推奨する Natural Scroll 、それは俗にいうホイールの逆回転ですね。これが動かない。
「KDEシステム設定」->「入力デバイス」->「マウス」に『スクロール方向を逆にする』という項目があり、チェックを入れても逆になりません。あららぁ・・。

色々調べてみると KDE5 からは libinput というのがマウスを管理しているようです。ports 的には x11-drivers/xf86-input-libinput です。 xorg.conf の設定で以下のような感じで用意してあげれば動くようなのですが、 Linux のドキュメントはたくさんある。しかし、 FreeBSD のドキュメントは全く無いっ!!

FreeBSD のフツーの X の使い方では xf86-input-libinput は利用されません。

Section "InputClass"
        Identifier "libinput pointer catchall"
        MatchIsPointer "on"
#        MatchDevicePath "/dev/sysmouse"
        Driver "libinput"
        Option "NaturalScrolling" "true"
EndSection

 
詳細についてはインターネット上にある libinput のドキュメントを読んでください。Linux の場合は /dev/input/event* なるデバイスができるようですが、 FreeBSD の場合はそれができない。デバイスではなく MatchHoge でも装置を認識するようです。装置名などにマッチさせることもできるパラメータで何種類かのマッチ要素があるようです。装置を確認するには xinput list で特定するらしいです。

が、そもそも、現在の FreeBSD (少なくとも僕の環境) では libinput は Xorg で利用されないため必要ないようです。なので、この設定自体は無視してかまいません。

では、どうやってマウスのホイールを逆回転するか? いやはや。古典的な設定で実現しました。

 
o.回避策そのいち (xorg.conf)

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/sysmouse"
#   Option         "ZAxisMapping" "4 5 6 7"
    Option         "ZAxisMapping" "5 4 6 7"
EndSection

 
o.回避策そのに (${HOME}/.xmodmaprc)

pointer = 1 2 3 5 4 6 7 8 9 10 11 12

 
マウスのスクロールボタンは 4,5 なので、その値をひっくり返すことにより対応しました。 KDE5 の設定でなんとかしようとせずに X の設定で対応した。と、いう感じでしょうか。これで、マウスの設定も完了です。ふぅ。

 
僕的にはこれで KDE5 を楽しむことができるようになりました。

 
3). 使ってみる。
KDE4 から KDE Plasma5 になり、画面の雰囲気がガラっと変わり、全体的に明るくなりました。ベースのワークスペースのテーマは Breeze というのになりました。そのおかげでちょっと明るめの気配かな。使用感は KDE4 と遜色ないです。

 
気がついた問題点を少々。

 
o.ディスク IO 負荷が高い
ログインしてしばらくすると /usr/local/bin/baloo_file_extractor が動き出します。これはデスクトップのフル検索のための情報収集プログラムだと思われます。 macOS で言うところの mdworker のようなモノですね。こいつが動いていると KDE5 がやたらと重いのでプロセスを kill してかつ、「KDEシステム設定」->「検索」から「Enable File Search」のチェックをはずすとフツーの速さに戻ります。

 
o.今まであったアプリがない
上にも書いた通り、FreeBSD だけかもしれませんが、まだ akonadi が無いためにオフィス系アプリはほとんどありません。別途インストールする必要があります。もしくは 05/19 移行の ports-current を利用するのが良いかと思われます。

あと、このエントリ書くためにスクリーンキャプチャ (スクリーンショット) を撮ろうとしたんだけど、グラフィックスのメニューの中もずいぶん静かで、ありませんでした。
で、調べてみると、なんとっ!! PrtScr ボタンを押すと起動するんですね。 Windows みたいだ。で、実態はというと /usr/local/bin/spectacle が起動するので、メニューに登録してあげると良いでしょう。 (よくよくメニューを眺めてみると「ユーティリティ」の中にありました)

 
o.konqueror は相変わらずか?
レンダリングエンジンが KHTML から Webengine に変わっていますが、firefox に比べて軽いブラウザなので嬉しいです。が、SSL なサイトは相変わらず閲覧できないのは KDE の証明書ライブラリが相変わらずぶっ壊れているからか?

 
とまぁ、ダラダラと書いてみましたが、一番最初にも書いた通り、約 10 年ぶりのデスクトップ環境のアップデートです。嬉しいですねぇ。途中 KDE4 が重くて xfce4 をインストールしたこともありましたが、やはり KDE は良いですねぇ。

Gtk2/3 の角ばった雰囲気よりも Qt4/5 の丸っこいアウトラインが好きだし、そー考えると GNOME はもう 8 年くらい触ってないし。

などと、書いていますが、皆さんも是非 KDE Plasma5 をお試しください;-)。

4月 302018
 

ゴールデンウィークの前半に秋葉原に NVIDIA GeForce GT 720 と 1TB の 3.5 インチの HDD を買いに行きました。古い PC (Athlon64 X2) で FreeBSD を動作させるためですね。
FreeBSD の場合 AMD (ATI) のビデオカードより ports の x11/nvidia-driver-340/ で動作する NVIDIA の NIC のほうが安心して 3D グリグリできるんですね。

で、お買い物終了後、アキバ散策していたら、新しくジャンク屋さんがオープンしていたのでちょっと覗いてみました。そしたらなんとっ!! PCI のグラフィックスカードの新品が 200yen で売っていたので購入してしまいました。当然ジャンク扱いですが。

購入したのはこんな感じ。もう一度繰り返しますが 200yen で、新品です;-)。

グラフィックスチップは往年の ATI の Rage XL です。メモリ 8Mbyte だそうです。うひひ。

今回再利用しようとしている古い PC には PCI スロットがあるので、この 200yen のグラフィックカードで X が表示できると嬉しいなぁ。などと思い、早速試してみました。

# X -configure
...

 
あらら・・。残念ながら、Xorg の -configure では自動的に xorg.conf を生成してくれないようです。挙句のはてには vesa ドライバが選択されました。
古いビデオカードは X -configure で xorg.conf が生成されないのかななぁ・・。

あと、サイズ的にはフル HD の 1920×1080 サイズで表示して欲しいんですけど・・。

やっぱりメモリ 8MB のグラフィックカードでは無理かなぁ?

あまり、格闘せずにさっさと NVIDIA GeForce GT 720 にしてしまったけど、あきらめがちと早いかな。まぁ 200yen だしなぁ・・。

 
話は突然変わりますが、今回購入した NVIDIA GeForce GT 720 を PRIMERGY MX130 S2 の PCI-e BUS にさして電源投入してみましたが、一回 BIOS 画面が出ただけで、まともに表示してくれませんでした。
今まで NVIDIA GeForce GT 210 を利用していたときは無事に起動してくれていたのですけどねぇ。多分電力量の不足が原因なのでしょうなぁ。 AMD FX-6100 な 6Core の CPU 載っているしなぁ。

と、いうことで古い PC の再利用は NVIDIA GeForce GT 720 で決定です。

4月 222018
 

奥さんが利用している PC は Athlon64 X2 で 10 年くらい前の自作。最近電源が怪しくなって来たのか、突然凍りついたりする機会が多くなってきたので、そろそろ寿命かなぁ。などと思っていたのであります。

で、何かほど良い大きさの PC は無いものか探していたら、 Lenovo V525 が手頃な値段で売っていたので飛びつついてしまいました。

ウェブサイトでクーポン使えて TBO でカスタマイズして一番安い構成にしたらなんとっ!! 28,000yen でした。

大きさは Micro ATX で奥行きがなく短く、そして軽い。筐体的にはこんな感じ。

TBO で選択した構成は以下のような感じ。

  • CPU は一番貧弱な AMD A6-9500 だけど SocketAM4 なので将来性あり
  • メモリ 4GB (届いた PC は PC4-2666V DDR4 だった)
  • CD-ROM なし
  • メモリリータ無し
  • キーボード・マウス無し

ホームページではメモリは PC4-19200 DDR4 SDRAM とか書かれていたけど、中を開けて、実際に確認してみるともっと良いメモリだったので驚きました。

中を開けた写真。

自分で 4GB なメモリを別途購入し、計 8GB にしようかと目論んでいたんだけど、いやぁ・・。 PC4-2666 DDR4 SDRAM で 4GB x1 のメモリってのは中々売ってなくて、 4GB x2 を買うとなるとかえって割高になるのでどうしようか、悩み中・・。

困ったのはこれくらいかな。 OS 込みで 28,000yen なのでむちゃくちゃ安い。今回購入した PC は当面は FreeBSD のインストール予定はないのでこのまま Windows10 を使い続ける予定なのであります。

 
ところで AMD は Intel と違って着替え目で、 CPU inside のシールは前面ではなく、側面の下のほうにテロっと貼ってある状態だったのであります;-)。

よしよし。継続して Intel の CPU は使っていないぞ;-)。

3月 292018
 

以前のエントリで「FreeBSD で if_urtwm を使ってみる。」と、いうエントリを書いているのですが、今回はそれの続編です。と、いうか、僕は USB の Wi-Fi ドングルが好きなようで、今までにもこのブログでは何回か書きました。

最近は REALTEK の USB Wi-Fi ドングルは 802.11a の 5GHz 帯に対応しているものが多いので FreeBSD でもその恩恵にさずかりたいものだ。などと思っているのですけども。

 
前回の USB 接続機器はずいぶんと大きかったのですが、今回は手頃なサイズの USB 機器です。まずは写真を。

でもってこっちがパッケージ。僕の場合 Windows10 で動作確認する前にまずは FreeBSD に接続して確認するのですが、ご多分にもれず、今回も素直に ugen に落ちました(^^;;。

パッケージやドライバ DC の印刷を見てみると REALTEK の RTL8811AU というチップが使われているようです。

で、以前掲載した GitHub を見に行くと・・。おやまぁ。カーネルモジュールのは FreeBSD 12-CURRENT に対応した patch になっているようです。で、ちょっと違ったところを見に行くと、おぉ。 FreeBSD 本体に commit されたのかしら? 新しく rtwn_usb というカーネルモジュールになるようですねぇ。
もう少し待てば、自分でコンパイルせずとも、 OS 標準で利用できるようになるのかもしれません。

 
さてと。今回購入した USB Wi-Fi ドングルですが、仕様としては REALTEK RTL8811AU ですが、 if_urtwm.ko は RTL8821AU 対応です。大丈夫か? などと思い試しましたが、すんなりと動きました。

まぁ、当然の作業として if_urtwm.c にはエントリを記述して、 usbdevs にも product ID を登録する必要があるんですが。

o. if_urtwm.c に記述する行

        URTWM_DEV(REALTEK,      RTL8811AU),

 
o. usbdevs に記述する行

product REALTEK RTL8811AU       0xa811  RTL8811AU

 
これで利用可能になりました。

 
以前のエントリで試した AUKEY の AC1200 というのは USB3.0 接続でチップセットが RTL8812AU でしたが、今回のは USB2.0 で RTL8811AU なので、もしかしたら一個古いチップで USB2.0 対応なのかもしれません。

 
電波が外にもれない(と思われる)部屋で動作確認をしたところ、200MB のファイルを転送してみると 50Mbps 程度でいたので、ずいぶんと速度が速い USB WiFi で、それが FreeBSD で体験できることにある意味感動を覚えました;-)。

 
あ。FreeBSD で 802.11a を利用する場合 /etc/rc.conf のネットワークの設定のところにおまじないを書かないと動作しないようです。

o. /etc/rc.conf の記述例

wlans_urtwm0="wlan0"
ifconfig_wlan0="WPA DHCP ssid AP802-5 mode 11a country J5 inet"
#ifconfig_wlan0="WPA inet 192.168.1.100 netmask 255.255.255.0 ssid AP802-5 mode 11a country J5 inet"

 
上記の設定は SSID: AP802-5 という 802/11a (もしくは 802.11ac) の AP に接続するときの設定ですが、どこの国で接続するか指定してあげないと正しく動作しないようです。おかげでサクサクと動作しているー;-)。

今後は安定的に動作していることを確認して行きたいとは思うのですが、こってりと利用するのはちょっとはばかれるので、動作確認のみ。と、したいと思います。

3月 172018
 

このサイト(https://running-dog.net/)はもう長いことさくらのバーチャルサーバで契約していて、もう 10 年になるかなぁ。ずっと運用しているわけですが、去年辺りにさくらインターネットが無料の Let’s Encrypt を提供し始めていて、簡単に、そして安くサイトの SSL 対応が可能になっていたのですが、今回、ようやくこのサイトも SSL 化しました。

このサイトは CMS に WordPress を利用しているのですが、さくらインターネットでは WordPress 用にプラグインを用意しているんだけど、これは自分でインストールしている WordPress には多分対応していないんでしょうね。僕のサイトではまともに動作しませんでした。

なので『どうしたモンかいのぉ・・。』などと悩んでいたのですが、 WordPress のプラグインに Really Simple SSL というのがあったので、それを利用したら簡単に SSL 化できました。

多少外部リンクなどを変更する部分があったのでその辺りを直して、今に至る。と、いう状態で、このサイトの SSL 化が完了です。

 
それにしても、ブラウザ側、特に Firefox はうるさいですねぇ。 Let’s Encrypt の証明書があてにナラン(本当か?)とか、コンテンツ中に https:// と http:// が混在している。など言って中々正常にカギをかけてくれません。

Firefox ではモンク言われますが、このサイトは SSL 証明書に Let’s Encrypt を利用しているのでどうぞ、安心してご利用頂ければと思います;-)。

1月 122018
 

ちょっと前のエントリで「iPhone8 買ったぁ。Qi 充電 Ready.」なエントリを書いているのですが、一回 Qi 充電に慣れてしまうと中々手放せない。と、いうことで、奥さんに譲った iPhone6 と、僕がハイレゾを聞くために持っている Xperia Z5 Compact を Qi 充電対応にしました。

ここでは Xperia Z5 Compact を Qi 充電対応にしたときのお話をちょっと書きます。

まずは本体の写真。 Android は一足先に Qi 充電に対応しているのでサードパーティのパーツもあり、比較的簡単に対応可能でした。
Xperia Z5 Compact に Qi 充電パットを MicroUSB 経由で接続し、ちょっと柔らかめのカバーを付けたら対応完了。あとは iPhone8 を充電している Qi 充電器の上に乗せれば OK。

ただし、ここで問題が発生。僕の場合 macOS と Xperia Z5 Compact を USB で接続してハイレゾ楽曲などを転送しているのですが、その作業が発生する場合、ケースを外して、Qi 充電パッドを外して、MicroUSB ケーブルを接続する。と、いう手間がかかり、そんなんやってらんねー。状態で悩むのであります。

iPhone6 の場合も同様ですが、iOS の場合は Wi-Fi 同期ができるので USB ケーブル必須ではないんですね。では Android7.1 て Wi-Fi 同期の機能があるんかいな?と思い調べてみるとどうやら、以前の Andoid のバージョンにはあったようですが、最近のバージョンではこの機能が削除されたようです。あらら。

 
で、更に調べ進んだんですが、 Xperia Z5 Compact に標準で搭載されているファイルマネージャーである File Commander というアプリが HTTP で本体及び SD カード内のファイルの操作が可能だというので早速試してみました。

標準でインストールされている File Commander は広告が表示されるのであまり使いたくはないのですが、標準で搭載されているファイルマネージャだけあって SD カードにもアクセスできるので中々捨てがたいのであります・・。

 
準備としては、まず Xperia Z5 Compact で Wi-Fi をオンにして、自宅の Wi-Fi に接続します。そして File Commander を起動します。表示されるメニューの中に [PCファイル転送]というのがあるのでこれをタップし、下のほうにある[サービスを開始する]ボタンを押すと URL が表示されます。

あとは楽曲データをドドドと持っている PC からブラウザでアクセスすると Xperia Z5 Compact の本体と SD カードの両方にアクセスできるようになります。

ブラウザから、僕の場合は楽曲を DnD でアップロードしています。機能的には

  • ファイルのアップロード
  • ファイルの削除
  • ファイルの名前変更
  • フォルダの作成・削除

などが行え、十分に利用価値が高いです。ただ、一点できないのはフォルダごとのアップロードですかね。まず最初にフォルダを作成してから、そのフォルダ内に移動し、手元のフォルダ内の全てのファイルをアップロード。って動作になります。ネストが深いフォルダの場合は大変だぁ・・。

しかし、標準でインストールされているアプリで、アプリを追加でインストールする必要がなく、そして SD カードにまでアクセスできる。と、いうのは非常に嬉しいことです。

こちらのキャプチャは iPhone8 からアクセスした図。使い方がイマイチ解らないので Mac や PC のブラウザからアクセスしたほうが良いです。

 
充電環境を Qi に移行したので自宅や職場での充電は非常に楽になりました。そして、データの移動もこうして簡単に行うことができて嬉しいかぎりです。

しかし、ただ一点。移動中はモバイルバッテリーを持ち歩いてイザというときに充電しているのですが、このイザというときのために Qi 充電器も持ち歩く必要が出てきたのはちょっと困りモノ・・。