FreeBSD 15.0-RELEASE で色々試す Wi-Fi。

FreeBSD の 15.0-RELEASE がリリースされました。ここのところ新しいバージョンがリリースされるごとに試すのが ThinxPad X13 に搭載されている Intel AX200 で 802.11ac に接続できるか試験。

このブログでも過去に何回か書いています。直近ですと 13.0-STABLE で if_iwlwifi を試していますね。が、その後も 802.11ac はダメで、結局 14.3-RELEASE になっても 802.11a 止まり、かつ suspend/resume に対応していなくて全然実用に耐えられないので、bhyve で ubuntu に PCI パススルーして ubuntsu 側で 802.11ac を利用などしていたのですけども。

では、今回新しく出た 15.0-RELEASE はどうか?

15.0-RELEASE の リリースノートを見ると・・。

https://www.freebsd.org/releases/15.0R/relnotes/#wireless-networking

 
ワイアレスネットワークでは LinuxKPI 由来の if_iwlwifi.ko と、新しく OpenBSD から持ってきた if_iwx.ko の二つが利用利用可能になったようですっ!! どちらも 802.11ac に対応したようです。

また RealTeK の RTL8821CE も利用可能になったようです。こちらは既に 14.3-RELEASE から 802.11n であれば if_rtw88.ko でフツーに使えるようになっていたのでまぁ、大丈夫でしょう。今回は if_rtw88.ko の話は無しです。

 
さてと。最初から結論を書いてしまいましょう。僕の持っている ThinkPad X13 (多分) Gen1 の Intel Wi-Fi 6 AX200 は iwlwifi0 でも iwx0 でも 802.11ac では動作しませんでした・・。orz。

pciconf -lv の結果は以下です。AX200 は 802.11ac で利用可能だと書いてあっただけど、型番とか違うのかな?

iwx0@pci0:3:0:0:        class=0x028000 rev=0x1a hdr=0x00 vendor=0x8086 device=0x2723 subvendor=0x8086 subdevice=0x0080
    vendor     = 'Intel Corporation'
    device     = 'Wi-Fi 6 AX200'
    class      = network

 
残念なのですが、一応利用するための手順を書いておきます。

 

1.if_iwlwifi.ko を利用する

/etc/rc.conf に利用するカーネルモジュールを記載します。そして、ifconfig でデバイスを指定する。

kld_list="amdgpu.ko if_iwlwifi.ko"

wlans_iwlwifi0="wlan0"
ifconfig_wlan0="WPA DHCP ssid WiFi-AP"

 
pciconf -lv にもデバイスが iwlwifi0@pci0:3:0:0 になります。

if_iwlwifi.ko をロードすると起動時に以下のように認識するようになります。

wanchan kernel: iwlwifi0:  mem 0xfd600000-0xfd603fff at device 0.0 on pci3
wanchan kernel: iwlwifi0: Detected crf-id 0x3617, cnv-id 0x100530 wfpm id 0x80000000
wanchan kernel: iwlwifi0: PCI dev 2723/0080, rev=0x340, rfid=0x10a100
wanchan kernel: iwlwifi0: Detected Intel(R) Wi-Fi 6 AX200 160MHz
wanchan kernel: iwlwifi0: successfully loaded firmware image 'iwlwifi-cc-a0-77.ucode'
wanchan kernel: iwlwifi0: loaded firmware version 77.0b4c06ad.0 cc-a0-77.ucode op_mode iwlmvm
wanchan kernel: iwlwifi0: Detected RF HR B3, rfid=0x10a100
wanchan kernel: iwlwifi0: base HW address: a8:7e:ea:aa:bb:cc

 
あとは /etc/rc.conf 内の設定や /etc/wpa_supplicant.conf の設定をしていれば利用可能になります。
ifconfig wlan0 scan とかコマンド打って AP を探して表示できれば使えています。

そもそも自分が使っている Wi-Fi 機器が 802.11ac や ax に対応しているか、確認するには以下のコマンドを打てば良いです。

$ ifconfig -v wlan0
wlan0: flags=8843 metric 0 mtu 1500
        options=0
        ether a8:7e:ea:aa:bb:cc
        inet 192.168.1.38 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::aa7e:eaff:feaa:bbcc%wlan0 prefixlen 64 scopeid 0x3
        groups: wlan
        ssid WiFi-AP channel 48 (5240 MHz 11a) bssid 28:23:54:92:O3:a3
        regdomain JAPAN country JP anywhere -ecm authmode WPA2/802.11i -wps
        -tsn privacy ON deftxkey UNDEF
        AES-CCM 2:128-bit
        AES-CCM ucast:128-bit
        powersavemode OFF powersavesleep 100 txpower 23 txpowmax 50.0 -dotd
        rtsthreshold 2346 fragthreshold 2346 bmiss 7
        11a     ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        11b     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
        11g     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
        11na    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        11ac    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        scanvalid 60 -bgscan bgscanintvl 300 bgscanidle 250
        roam:11a     rssi    7dBm rate 12 Mb/s
        roam:11b     rssi    7dBm rate  1 Mb/s
        roam:11g     rssi    7dBm rate  5 Mb/s
        roam:11na    rssi    7dBm  MCS  1    
        roam:11ac    rssi    7dBm  MCS  1    
        -pureg protmode CTS -ht -htcompat -ampdu ampdulimit 64k
        ampdudensity NA -amsdu -shortgi htprotmode RTSCTS -puren -smps -rifs
        -stbc -ldpc -uapsd vht vht40 vht80 vht160 -vht80p80 wme -burst -dwds
        roaming MANUAL bintval 100
        AC_BE cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm ack
              cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
        AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
              cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
        AC_VI cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm ack
              cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
        AC_VO cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm ack
              cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
        parent interface: iwlwifi0
        media: IEEE 802.11 Wireless Ethernet OFDM/54Mbps mode 11a
        status: associated
        nd6 options=21
        drivername: wlan0

 
802.11ac に対応していそうな雰囲気ですが AP には 802.11a で接続していて、下のほうの media も OFDM/54Mbps mode 11a になっちゃっています・・。orz

parent interface: は 正しく iwlwifi0 になってます。

なんでなのだろう・・。残念。

しかし、802.11a でも AX200 は 20Mbps程度でるので、USB 接続の rtwn0 よりは 2,3Mbps 程度早い雰囲気でしょうか・・。

あ。追加で一点。iwlwifi0 は sysctl 設定があります。以下、ピックアップしましたが、 /boot/loader.conf に記載することができます。

compat.linuxkpi.80211.hw_crypto="1"
compat.linuxkpi.iwlwifi_11n_disable=1
compat.linuxkpi.iwlwifi_disable_11ac=0
compat.linuxkpi.iwlwifi_disable_11ax=0

 
ただし、この設定に準じて動作しているのかは良くわかりません・・。

 

2.if_iwx.ko を利用する

次に 15.0-RELEASE で、 OpenBSD から移植されたという if_iwx.ko を利用してみます。こちらも /etc/rc.conf に設定が必要です。

kld_list="amdgpu.ko if_iwx.ko"

devmatch_blocklist="if_iwlwifi.ko"
wlans_iwx0="wlan0"
ifconfig_wlan0="WPA DHCP ssid WiFi-AP"

 
まぁ、一番上の kld_list への if_iwx.ko の記載は不要です。
devmatch_blocklist=”if_iwlwifi.ko” は必要です。 この行を入れないと、たとえ kldload if_iwx.ko を指定していても if_iwlwifi.ko がデバイスを持っていってしまうのでブロックリストに記載します。これで pciconf -lv しても iwx0@pci0:3:0:0: となります。

これは Intel Wireless-AC 9260 を使っている場合にも効果的で devmatch_blocklist=”if_iwm.ko” などと書いておくと if_iwlwifi.ko を利用するようになります。ただ、どちらのカーネルモジュールを利用しても 802.11a での通信になりますが・・。

話をもとに戻してと。起動時はこんな感じで認識します。

wanchan kernel: iwx0:  mem 0xfd600000-0xfd603fff at device 0.0 on pci3
wanchan kernel: iwlwifi-cc-a0-77.ucode: could not load firmware image, error 8
wanchan kernel: uhub5: 4 ports with 4 removable, self powered
wanchan kernel: iwx0: hw rev 0x340, fw 77.0b4c06ad.0, address a8:7e:ea:be:3a:fc
wanchan kernel: iwx0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wanchan kernel: iwx0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wanchan kernel: iwx0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wanchan kernel: iwx0: 2T2R
wanchan kernel: iwx0: 11na MCS 20MHz
wanchan kernel: iwx0: MCS 0-7: 6.5Mbps - 65Mbps
wanchan kernel: iwx0: MCS 8-15: 13Mbps - 130Mbps
wanchan kernel: iwx0: 11na MCS 20MHz SGI
wanchan kernel: iwx0: MCS 0-7: 7Mbps - 72Mbps
wanchan kernel: iwx0: MCS 8-15: 14.5Mbps - 144.5Mbps
wanchan kernel: iwx0: 11na MCS 40MHz:
wanchan kernel: iwx0: MCS 0-7: 13.5Mbps - 135Mbps
wanchan kernel: iwx0: MCS 8-15: 27Mbps - 270Mbps
wanchan kernel: iwx0: 11na MCS 40MHz SGI:
wanchan kernel: iwx0: MCS 0-7: 15Mbps - 150Mbps
wanchan kernel: iwx0: MCS 8-15: 30Mbps - 300Mbps
wanchan kernel: iwx0: 11ng MCS 20MHz
wanchan kernel: iwx0: MCS 0-7: 6.5Mbps - 65Mbps
wanchan kernel: iwx0: MCS 8-15: 13Mbps - 130Mbps
wanchan kernel: iwx0: 11ng MCS 20MHz SGI
wanchan kernel: iwx0: MCS 0-7: 7Mbps - 72Mbps
wanchan kernel: iwx0: MCS 8-15: 14.5Mbps - 144.5Mbps
wanchan kernel: iwx0: 11ng MCS 40MHz:
wanchan kernel: iwx0: MCS 0-7: 13.5Mbps - 135Mbps
wanchan kernel: iwx0: MCS 8-15: 27Mbps - 270Mbps
wanchan kernel: iwx0: 11ng MCS 40MHz SGI:
wanchan kernel: iwx0: MCS 0-7: 15Mbps - 150Mbps
wanchan kernel: iwx0: MCS 8-15: 30Mbps - 300Mbps
wanchan kernel: iwx0: [VHT] Channel Widths: 20MHz, 40MHz, 80MHz
wanchan kernel: iwx0: [VHT] Features: 31800020
wanchan kernel: iwx0: [VHT] NSS 1: TX MCS 0..9, RX MCS 0..9
wanchan kernel: iwx0: [VHT] NSS 2: TX MCS 0..9, RX MCS 0..9

 
ちょっといっぱい出力されますね。それにしも、ファームウェアの iwlwifi-cc-a0-77.ucode のロードに失敗しているのが気になりますが・・。

こちらも ifconfig -v wlan0 の出力結果を掲載しておきます。

$ ifconfig -v wlan0
wlan0: flags=8843 metric 0 mtu 1500
        options=0
        ether a8:7e:ea:aa:bb:cc
        inet 192.168.1.38 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::aa7e:eaff:feaa:bbcc%wlan0 prefixlen 64 scopeid 0x3
        groups: wlan
        ssid WiFi-AP channel 48 (5240 MHz 11a) bssid 28:23:54:92:O3:a3
        regdomain JAPAN country JP anywhere -ecm authmode WPA2/802.11i -wps
        -tsn privacy ON deftxkey UNDEF
        AES-CCM 2:128-bit
        AES-CCM ucast:128-bit
        powersavemode OFF powersavesleep 100 txpower 23 txpowmax 50.0 -dotd
        rtsthreshold 2346 fragthreshold 2346 bmiss 10
        11a     ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        11b     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
        11g     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
        11na    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        11ng    ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
        11ac    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
        scanvalid 60 bgscan bgscanintvl 300 bgscanidle 250
        roam:11a     rssi    7dBm rate 12 Mb/s
        roam:11b     rssi    7dBm rate  1 Mb/s
        roam:11g     rssi    7dBm rate  5 Mb/s
        roam:11na    rssi    7dBm  MCS  1    
        roam:11ng    rssi    7dBm  MCS  1    
        roam:11ac    rssi    7dBm  MCS  1    
        -pureg protmode CTS ht htcompat ampdu ampdulimit 64k ampdudensity NA
        -amsdutx amsdurx shortgi htprotmode RTSCTS -puren -smps -rifs -stbc
        -ldpc -uapsd vht vht40 vht80 -vht160 -vht80p80 wme -burst -dwds
        roaming MANUAL bintval 100
        AC_BE cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm ack
              cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
        AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
              cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
        AC_VI cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm ack
              cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
        AC_VO cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm ack
              cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
        parent interface: iwx0
        media: IEEE 802.11 Wireless Ethernet autoselect mode 11na
        status: associated
        nd6 options=21
        drivername: wlan0

 
こちらも 802.11ac に対応していそうな気配はあるのですが、実際には 802.11a での接続でした。ファームウェアのロードに失敗しているのがちょっと気になりますが・・。

 
iwlwifi0 と iwx0 で 802.11a への接続時、どちらが速いか?と、言われれば iwlwifi0 のほうか、2,3Mbps くらい速いかなぁ。と、いう気はしますが、どちらも 802.11a での接続であることには変わりません。

あと、今回試してないのは AP がステスル機能を有効化している場合の接続状況についてです。 AP のステルス機能有効化については Apple も推奨してないので、僕の家のステルス機能は無効化しました。以前検証したときも iwlwifi0 はステルス有効時には接続できなかったので、今回は検証していません。

 
最後に suspend/retsume の対応について書いて終わりにします。iwlwifi0 と iwx0 の両方とも suspend/resume には対応していません。これは明示的に FreeBSD の forums にも記載がありました。ただ、 resume 後に service netif restart wlan0 を実行すると復活します。なので NotePC でも特に問題無く resume 後に利用できます。
rtwn0 などは suspend/resume に対応しているのですが、まぁ、使い方を解っていれば、こういう仕様でも良いのかな。と、思いました。

 
と、いうことで FreeBSD 15.0-RELEASE の個人的な目玉機能である Wi-Fi については以上になります。 AX201 とか持っている人は多分 802.11ac で通信できているのでしょうなぁ・・。
僕も AX201 とか、メルカリで探してみようかなぁ・・。

WordPress のテーマを変えました。

ども。タイトルの通りです。
WordPressの古いテーマを利用していると chrome エンジン系ブラウザを利用していた場合、三枚以降の写真・イメージファイルなどの表示が縦長になってしまう。と、いうバグというか、仕様があったみたいです。

そして、今まで、このブログでもその影響を思いっきり受けていたわけでありますっ!!

Firefox のレンダリングエンジンでは問題なかったのですけども・・。

そんなこんなでいよいよいテーマを変更しましたが、それにしても過去の記事の HTML などとの互換性に関する CSS の影響もあり、まだ全体のデザインがいまいち納得いってないのですが、コツコツと直していきたいと思います。

今後とも宜しくお願いします。

IIJmio から ahamo へ MNP してみました。

先月、10/26 に IIJmio から ahamo に MNP してみました。『5G SA を利用してみたい。』と、いうのが主な根拠です。

 
僕の主回線は Y!mobile なのですが Softbank のほうは 5G SA に対応していても Y!mobile は対応していない。なので 5G SA 対応のスマートフォンを持っていてもイマイチ意味がない(もったいない)のですな。
例えば Libero Flip なんかは実は 5G SA に対応しているらしいし AQUOS sense9 なんかも 5G SA に対応しているけど Y!mobile では本領発揮できない。

Y!mobile でこの状態なので MVNO である IIJmio はもっと厳しいだろうな。と・・。しかし、まぁ、 MVNO の中でも 5G 自体に対応していないところもあるので、その点 IIJmio は 5G には対応していた。

 
さてと。 5G SA に対応しているとはいえ、どうして ahamo に MNP したのかと言うと、一言『安いから。』になってしまいます。5G SA 対応の安いブランドは UQ mobile と ahamo の二択でした。
UQ mobile は au Starlink Direct も +550yen で利用できるので結構こころが揺れたのですが、やはり安いほうに行ってしまいましたf(^^;;。

さてと、ここからは ahamo の 5G SA について、一ヶ月間使ってみた感想をちょっと書いていきます。

 
スマートフォンの対応状況は?
今回は iPhone15 に ahamo の SIM を入れました。 iPhone15 以降(それ以前からかもしれないが)は 5G SA に対応しているので、設定します。
設定アプリから「モバイル通信」->「モバイルデータ通信のオプション」->「音声通話とデータ」で [5G オート] を選択するとその下に [5G スタンドアローン] と表示されるのでオンすれば良いです。



 
AQUOS sense9 に ahamo の SIM を入れて試してみましたが Android の 5G SA はいまいちよくわかりませんでした。と、いうのも、僕が持っている AQUOS sense9 は SH-M29A で SIM フリー版です。これが素直に docomo の SH-53E だと、多分キャリアアップデートが降ってきて 5G SA に接続できるようになるのかもしれません。
そー考えると、スマートフォンも素直にキャリア版を買うのが良いのかなぁ?と、思いました。

 
Lebero Frip にも docomo の SIM を入れてみましたが、やっぱり無理だろう。と、いうことで。まぁ LTE の周波数や 5G の n79 に対応してないので諦めるのは早かったですf(^^;;。

AQUOS sense9 については機会があれば、またトライしたいと思っています。

 
docomo の電波状態ねぇ・・。
まぁ、「改善されるのかなぁ?」この一言に尽きますね。 5G で接続していても google スピード計測(以降、スピート計測の結果は全て google のスピードテストでの結果です)ではひどいときで 1Mbps 出ていません・・。

僕の自宅は、集合住宅の 6F に住んでいますが窓は真南に向いています。家の中では 4G になり、大体 10-40Mbps 程度の速度、もう少し出ても良いんでない? SoftBank や au は 100Mbps とかでる場合あるし・・。
とか、思ったのですが、ベランダに出て速度計測すると 100Mbps 出ていたりします。 docomo のサイトの「サービスエリアマップ」で確認してみると、家の東側には 5G のアンテナが無く 4G エリアでした。しかし、西側は 5G エリアでした。と、いうことで西側をメインで考えたほうが良さそうなロケーションです。

しかし、docomo 回線の場合 5G でも速度が出ないときは 4G に落としたほうが速い場合がある。と、言われていますが、まさしくそのようなシチュエーションに何回も出くわします。

世の中には、設定アプリからの変更ではなく、ショートカットアプリでショートカットを作成してそこから実行する。と、いうのが流行っているようで、僕も参考にさせて頂きました。

【iPhone】ホーム画面から5G・4Gを切り替えるショートカット(iOS 17仕様)

ここからダウンロードさせていただいてちょっと手直ししたら無事に動作しました。

このあと、コントロールセンターに登録して、直ちに呼び出せるようにする方法もあります。
僕の場合は「アシスティブタッチ」を利用しているので、ここのメニューに登録しています。僕の場合はコントロールセンターでさえ「アシスティブタッチ」から呼び出すことにしているので、素直にここに登録したほうが早かった。



 
一回だけ 5G SA に接続しました。
ahamo に MNP したあと、一回だけ、多分 5G SA に接続できました。まぁ、乗り換えた時

「見せてもおうか。 docomo の 5G SA の性能とやらを。」

とか思っていたのですが、実に大したことがない・・。orz

5G SA 対応エリア確認のためには「5G SA(Standalone)」の [地域別サービス提供状況] からプルダウンで場所を確認・特定することができます。

この間立ち寄った『道の駅こもち』でスピードテストをトライしたら 400Mbps オーバーとなりました。すげっ!!
場所はと言うと、上記のサイトで確認しました。「群馬県」「渋川市」を選択して、現在いるところはというと「白井周辺」です。

「えぇぃっ!! docomo の 5G SA は化け物かっ!!」

とか

「これが docomo の 5G SA の威力なのか!?」

など思いましたね。はやりアンテナがあるところ、あと、失礼ですが、田舎のほうは利用者が少ないというのもあるのかな?
この辺りは一応 R17 通っていて、観光地でもありますしね。docomo からすると重要ポイントでもあるのでしょう。

 
とまぁ、こんなことダラダラ書いていてもしょーがない。
このへんで終了にしますが、ahamo の 30 ギガは多分一ヶ月で使い切れないのではないかと思っています。なので、今のところ繰越は不要かな。
Y!mobile と ahamo と、あと、時々 povo2.0 で過ごしていきたいと思います。

 
あ。本当に最後の最後にですが 5G SA の電波の質について。 iPhone15 を充電するときは PC に接続されているスピーカーの横に置いて充電する機会が多いのだけど、 5G SA をオンにした状態だと、結構頻繁にスピーカーにノイズが走ります。これは フツーの 5G と 5G SA 有効時に出る電波が違うのかな?

同様に 802.11ax な電波を出す Wi-Fi AP もスピーカーの近所に合ったりして、スピーカーはノイズ拾います。 Wi-Fi AP の場合、中間に CD を置くとノイズが無くなるので、CD が Wi-Fi AP からの電波をブロックしているのだろうなぁ。と、は感じます。

何かしら普段とは違う電波が出ているのだろう。みたいな感じでしょうか? 僕はその手の話には疎いので良く解りませんが・・。

KDE6+Plasma6 で体験する Wayland。

KDE6 が FreeBSD で正式に ports になったと、書いたのは 2025/02 ですか。約九ヶ月ほど前ですね。

KDE6+Palsma6 で Wayland 使ってみたいと思いバージョンアップするたびに sddm で「Deskrop Session: Plasma(Wayland)」を指定してもすぐに sddm の画面に戻っきてしまうので「Deskrop Session: Plasma(X11)」を選んでいたのですが、今回、FreeBSD の ports において kde-6.5.2.25.08.3 のバージョンが降ってきたのでインストールし、sddm のセッションを Wayland にしてみると、なんとっ!! 無事に動作し、ログインすることができました。

やったーっ!!

と、いうことで KDE6+Plasma6+Wayland についてちょっと書いてみます。この構成、 ubuntu ではもう既に常識なのかな? FreeBSD では kde-6.5.2.25.08.3 の前から、もしかしたら動作していたのかもしれません。

Wayland を使いたいけど一番のボトルネックはグラフィックカードかもしれないですね。
例えば VirtualBox 上の FreeBSD などは sddm の Session メニューに Wayland は現れません。また、 xf86-video-scfb などでは Wayland は利用できません。

僕の PC の環境は AMD Ryzen 7 PRO 4750G with Radeon Graphics で vgapci0 は Renoir [Radeon Vega Series / Radeon Vega Mobile Series] で認識されています。 amdgpu.ko を kldload しているからですね。

なので Wayland が根本的に動作しない場合はグラフィックカードを確認してみるのが良いかも。あ。Intel CPU な比較的新しい PC は持ってないので、知りません;-P。

 
と、いうことで、ここから下は KDE6+Plasma6 で Wayland の設定をしてみます。とは、言いつつ、本当にやることなく、簡単に Wayland 対応できます。

  • fcix5 を起動する準備
  • キーボードの Caps – Ctrl 入れ替え
  • マウスホイールの逆回転

 
僕的にはこれくらいでした。まず上から確認してみると、fcitx5 を起動する場所を変更し、環境変数2つを消すこと。

マウスとキーボードは X を利用しなくなるので xmodmap とか xinput が使えなくなります。今まで xorg.conf や ~/.xmodmaprc で設定していたものが使えなくなることになります。

KDE6+Plasma6 の場合、これら fcitx5 の起動も、キーボードの Caps – Ctrl 入れ替え、マウスホイールの逆回転の設定はすべて「システム設定」で変更可能です。

ちょー簡単。

 
fcix5 の起動
僕はログイン時に「自動起動」でログインスクリプトを設定し、その中で mozc と fcitx5 を起動していたのですが fcitx5 の起動部分はコメントアウトし mozc のみを起動するようにしました。

KDE5 のときにそのようにして、KDE6+Plasma6 のときにちょっと書き換えて利用していますが、内容的には一緒です。「FreeBSD に KDE5 が降ってきた。」のところでその起動スクリプトを記載していますね。これを多少修正して利用していました。

fcitx5 の起動はどこでするのか? と、言われれば「システム設定」アプリから[仮想キーボード] で [FcitX5 Wayland ランチャー]を指定すればよいです。

ちなみにこのメニューは Session: X11 でログインすると表示されません。 Session: Wayland でログインしたときのみ [仮想キーボード] メニューが現れると、いう・・。なんとも手が込んでおります;-)。

あと、QT_IM_MODULE と GTK_IM_MODULE の環境設定は不要とのことなので、それを削除します。一応、注意書きのダイアログもキャプチャしておきました;-)。

 
キーボードの Caps – Ctrl 入れ替え
「システム設定」アプリから[キーボード]と来て、右上の「キーバインディング」をクリックし、[Ctrl position]で『扱う』か『入れ替え』を選択すれば OK。

 
マウスホイールの逆回転
「システム設定」アプリから[マウスとタッチパッド]ときて「マウス」を選択すると「スクロール:スクロール方向を反転」にチェックを入れれば OK。マウスがたくさん接続されている場合には使うマウスを選択してから、チェックをつける必要があります。

 
とまぁ、比較的簡単に自分のやりたいことができました。そして、KDE6-Plasma6 は Wayland 対応が完了したので気分はルンルン♪ (既に死語か・・)

 
といことだったのですが、しばらく使い込んでいて驚いたっ!!??

 
Wayland って suspend/resume に対応してないじゃんっ!! orz

と、いうことで上でせっかく設定したものは残すものは残しつつ ~/.xmodmaprc の設定を復活させ fcitx5 の環境変数を復活させ・・。 orz

最近の FreeBSD は UEFI な PC の場合は NotePC でもデスクトップ PC でも zzz して寝て、電源ボタン押して復活する、 suspend/resume が効果的に動作するのだけど、それは Session:X11 の場合のみで、 Session:Wayland ではまだまだダメだ・・。と、いうことがわかりました・・。orz

WiFi チップの AX200 が if_iwlwifi.ko で使えるようになった。だけど 802.11a 止まりだよ。かつ suspend/resume に対応してないよ。とか、色々動作確認しても、最後にはまだまだだめだぁ・・。感があったりして・・。まぁ、それはそれで良いのですが、今回 Wayland はもう少し先送り。と、いうことで・・。

ubuntu 方面とか KDE6+Plasma6+Wayland でちゃんと suspend/resume するのかなぁ?

戻ってきた Libero Flip。再度現役;-)。

ちょっと前のエントリで「予想より速く壊れた Libero Flip orz。」と、いうのを書きました。Y!mobile (Softbank) ショップに修理依頼を出したのですよ。

で、約 8 日程で修理が完了し、Softbank ショップから電話があり、久しぶりに我が手に戻ってきました。
電話を受けたときに無償修理であることを聞きました。『おぉっ!!無償修理だったのかっ!!』と半分驚きつつ小躍りしたのは言うまでもありません;-)。

ネット上では『有償修理で 34,000yen かかると言われた。』とか『壊れ方によっては保証期間内であっても有償修理。』などと、いうのがありましたが、僕のは無償修理だったのであります。大体 10 ヶ月くらいで壊れたので、まぁ、保証期間内だったのでしょうね。

 
まず、修理に出すために Softbank ショップに行ったのですが、事前予約していったためスルっと、ことが進みました。事前予約制というのはなかなか良いですね。

で、担当の方と色々話をし、

「有償修理となった場合はいくらくらいまで出せますか?」

と、聞かれました。まぁ、もとが 9,800yen だったので、僕の回答としては

「お金がかかるようでしたら、とりあえず修理無しで結構です。」

と、伝えました。それで、引き渡し。つまりは修理依頼しました。

 
引き渡し時にはその場で初期化することになります。あと、Android 機はおサイフケータイの情報などは本体や SIM ではなく NFC チップに記載するので NFC チップの初期化も必要になるそうです。

iPhone と、いうか Apple 製品と、いうか iOS の場合は OS 上でおサイフケータイやウォレットの情報を持っていて、OS 初期化すると全て消えるのですが、Android OS の場合のほとんどの機種は NFC チップ上にウォレットの情報を持っているので、初期化する必要があるそうです。

中古で売りに出すときも Android 機は OS の初期化だけでなく NFC チップの情報も初期化しないとダメだそうです。

 
eSIM は事前に別機種に移しておきました。 僕は povo2.0 の eSIM を利用しているのですが、機種変更時、免許証の写真撮ったり本人確認が必要になるのですが、無料な点が良いですね。
一旦、修理前に別のスマートフォンに eSIM を移して、今回修理から戻ってきたら再度 Libero Flip に eSIM を入れました。

あ。話はうんと飛ぶのですが、 Libero Flip で povo2.0 それは俗に言うと au 回線になるのですが、都内ではほぼほぼ Band 1 を利用するので、比較的電波を拾ってくれます。ところが、郊外だとか海沿いに行くと au のプラチナバンドである Band 18 が使えない Libero Flip では au SIM を入れていると圏外になるケースが多かったですね。やはり Libero Flip は Softbank のスマートフォンなのだ。と、実感します。

 
と、いうことで話を戻しますが、本体空っぽにして預けて、修理が完了して戻って来ました。

戻ってきた Libelo Frip は本当に修理だったそうで IMEI の変更はありませんでした。
どのあたりを修理したのかというと、ヒンジの部分と、ディスプレーの部分を交換したそうです。

スッキリな状態。復活し default 状態なスマートフォン。

家に帰って色々セットアップしたのですが、 Android のバージョンも 14 のままだし、動かないサブディスプレーの機能も動かないままだし、相変わらず 47゜C を突破すると、ネットワーク系・ GPS 系が停止するのも修理前と一緒でした・・。なんか、嬉しいような悲しいような・・。

では、データ転送しましょう。

僕は google にバックアップ取ってないので、手持ちの他の Android 機から同期します。

そんなこんなで、再度利用することになった Libero Flip ですが、今度は親指で開けるような、片側のヒンジの部分のみに負荷をかけるようなことはせず、テクマクマヤコン的に両手であけるようにしたいと思います。また、充電時など、持ち歩かない場合には、不必要に閉じないでおこうと思っている次第です。

今度は二年持ちますように・・。

macOS のミュージックアプリのプレイリストを Android で利用。

mac 上で音楽を聞くときは「ミュージックアプリ」というのを利用します。以前は iTunes と呼ばれていたヤツですね。で、ミュージックアプリに CD からリッピングした楽曲をたくさんホーりこんで、プレイリストなどを作成して iPhone と同期すると、指定したプレイリストとそこに含まれている楽曲も転送してくれます。

mac に Android を接続しても転送してくれないので、車の中で Android の中の音楽を聴きたい場合に非常に悲しいのでありました。

 
今回は macOS のミュージックアプリで作成したプレイリストと、楽曲の転送方法について検討してみたいとあります。

世の中、似たような記事が結構あるかと思いますが、今回僕が試した方法は比較的容易にプレイリストと楽曲転送ができました。

 
準備するもの

  • macOS とミュージックアプリ
  • Android 機 (今回は AQUOS sense9 SH-M29A を利用)
  • Android 上のミュージックアプリ (今回は Musicolet を利用)
  • mac と Android のデータ転送用アプリ (macOS 側にインストールしますが、今回は openMTP を利用)

 
楽曲データの転送
まずはじめにですが、 mac と Android 間でデータ転送 (楽曲などを転送) する手段は色々あるかと思います。 AQUOS sense9 は MicroSD を入れられるので、本体から MicroSD を抜いて mac に接続してデータ転送することも可能です。

Libero Flip の場合は SD カードが入らないので、Android 本体を直接 mac に接続させる必用があります。
しかし、 Android を mac に USB で接続しても簡単に認識してくれません。 MTP (メディア転送プロトコル) に対応したソフトウェア経由でないとデータ転送が行えません。なので、mac 側に openMTP というアプリをインストールして、Finder みたいな UI でデータを転送することになります。

 
まず、ミュージックアプリで作成したプレイリストに含まれていると思われる楽曲をひとまず Android なり MicroSD に転送してください。そのとき、ディレクトリ構造については非常に気をつけてください。

・mac 側のディレクトリ構造

/Volumes/USB-DISK/Music Library/iTunes Music/Music/Compilations/とある科学の超楽曲集/01 only my railgun.m4a

 

・Android 側のディレクトリ構造

[SDカード]/Music/Compilations/とある科学の超楽曲集/01 only my railgun.m4a

 
mac 側は、僕の場合、楽曲は外付け HDD に持っていて、それをミュージックアプリで参照していますが、重要なのは “Music” ディレクトリ配下のディレクトリ構造を mac と Android で同じにする必用があります。ここ重要ですからね。
Android 側は SD カードに入れても本体に入れてもかまいません。 “Music” ディレクトリ配下が mac と一緒になって入れば問題ありません。

ひとまず、楽曲データの転送は完了したでしょうか?

 
プレイリストの抽出と転送
mac ミュージックアプリでプレイリストを抽出します。

ミュージックアプリの抽出したいプレイリストを選択し、上のメニューから[ファイル]->[ライブラリ]->[プレイリストを書き出し…]で、書き出すことができます。「アニソン.m3u」みたいな感じのファイル名になるかと思われます。

書き出したプレイリストは Android の参照可能な MicroSD カードや本体のディレクトリに保存します。

以上です。簡単ですね;-)。

プレイリストをエディタで開いてみると、以下のような形式になっているでしょうかね。

#EXTINF:254,only my railgun - fripSide
/Volumes/USB-DISK/Music Library/iTunes Music/Music/Compilations/とある科学の超楽曲集/01 only my railgun.m4a
#EXTINF:248,Dear My Friend -まだ見ぬ未来へ- - ELISA
/Volumes/USB-DISK/Music Library/iTunes Music/Music/Compilations/とある科学の超楽曲集/02 Dear My Friend -まだ見ぬ未来へ-.m4a
EXTINF:214,SMILE -You & Me- - ELISA
/Volumes/USB-DISK/Music Library/iTunes Music/Music/Compilations/とある科学の超楽曲集/03 SMILE -You & Me-.m4a

 
絶対パスで記載されているのがミソです。

 
Android で Musicolet を起動
Musicolet というアプリは音楽を聞くためのアプリですが、ハイレゾ対応・広告なし、また自分で再生エンジンを持っていたりするので、 Xperia 以外の Android では重宝するのではないかと思われます。僕の場合はこれ一択です。
そんなこんなで今回は Musicolet を利用します。

まず、「スキャンするフォルダー」で、SD カードなどを選択し、データ転送した Music のディレクトリを指定してスキャンを実行します。
右下の「三点」->[設定]->[楽曲ライブラリとタグ]->[スキャンするフォルダー]で選択できます。

選択できたら一個戻って[スキャン]を実行します。バックグラウンドでスキャンしてドドドと再生できるようになります。

 
この状態でもフツーに音楽聴けます。全曲シャッフル再生とかでも問題ないのであれば、全然 OK です。

ただ、「ミュージックアプリや iPhone と同じプレイリストを持ち歩きたいっ!!」となった場合、次に進みましょう。

 
いよいよプレイリストを読み込むよっ!!
先ほど、プレイリストに含まれているであろうと思われる楽曲と「アニソン.m3u」と、いうプレイリストを Android 側に転送しました。
これを Musicolet に読み込ませてあげます。
下のメニュー右から三番目にプレイリストの項目があります。その一番下に[外部プレイリスト]というのがあるのでそれをタップし「アニソン.m3u」を読み込ませてあげます。



 
選択します。


 
追加します。

すると、プレイリストの一覧にミュージックアプリで作成したプレイリストがそのまま登録されます。

以上です。

あとは再生すると、ミュージックアプリのプレイリストそのままで再生が開始されます。凄いなぁ。

 
考察
Musicolet が非常に頑張ってくれているであろうこうは想像に難しくありません。 macOS と Android とか Windows などでは「゜」とか「゛」がぶっ壊れるなど文字コードに互換がないので、変換したりし、Android に転送するプレイリストを作成・編集するときは一苦労だったのですが、そういうのもありません。と、いうか気になりません。

楽曲が持っているメタタグ情報とかアートワークなどもそのまま表示してくれます。

Musicolet はすごいアプリです。感動しました。

 
ちなみにですが Musicolet はプレイリストを書き出すこともできます。今回試しに「アニソン.m3u」と、いうプレイリストを書き出してみて、mac のミュージックアプリが書き出したものと比較してみました。

ミュージックアプリが書き出したものは上にありますね。Musicolet が書き出したプレイリストの形式は以下になります。

#EXTINF:254,only my railgun - fripSide
Music/Compilations/とある科学の超楽曲集/01 only my railgun.m4a
#EXTINF:248,Dear My Friend -まだ見ぬ未来へ- - ELISA
Music/Compilations/とある科学の超楽曲集/02 Dear My Friend -まだ見ぬ未来へ-.m4a
EXTINF:214,SMILE -You & Me- - ELISA
Music/Compilations/とある科学の超楽曲集/03 SMILE -You & Me-.m4a

 
なんとっ!!相対パスに書き換わっていましたっ!!
「スキャンするフォルダー」からの相対パスとしてプレイリストが書き換わっています。と、いうことは、上でも書いた通り、macOS 上のディレクトリ構造と、Android に持って行ったときのディレクトリ構造が一緒であれば、プレイリストが効果的に機能する。と、いうことですね。

凄いぞっ!!

 
と、いうことで、今回は mac のミュージックアプリのプレイリストを Android 上でも利用できるようにしてみました。と、言っても、僕はただファイルの転送しただけですけどf(^^;;。
Musicolet は凄いっ!! の一言で終わってしまいますね。

しかし、これで、ミュージックアプリ・iPhone・Android で同じプレイリストを共有できるようになりました。
ただ、楽曲の転送については手動部分が残りそうですね。 mac 側のプレイリストを利用して楽曲を MicroSD に cp するスクリプトとか書けそうですけどね。

そうすると楽曲自体も同期取れそうですね。

 
実はここまで来るのに雨の三連休で色々調べて、試して、それなりに工数かかりました。が、やりたいことがほぼ出来たので、それはそれでヨシとしておきましょう;-)。

予想より速く壊れた Libero Flip orz。

去年の 11 月でしたかね「Libero Flip 購入しました。」というエントリ書いたのは。

その後由緒正しく折りたたんで利用していたのですが、夏になりまず悲鳴を上げたのが CPU 周辺の温度。
この機種は大体温度が 47゜C になるとネットワーク系をオフにします。

最初、何が起きたのかわからなかったのですが、車の中でヤフーカーナビアプリを利用していていきなり通信断。そして GPS も停止しました。道案内を任せていたのですが、突然のこと、かつ、初めてのことなので半分パニック。車を脇に停車して原因を確認したところ、温度上昇による通信系強制オフな機能が無条件で働いた。と、いうことがわかりました。

車の中はエアコンが効いている。とはいえ、ダッシュボード付近は直射日光を受けてスマートフォンの温度が上昇したのでしょうなぁ・・。

 
その後、気温が高い夏場は色々やっていてもすぐに通信・GPS 断な状態が頻発します。
炎天下の中、テクテク歩きつつポケモン GO とかすると大体 15 分程度でシューリョー。orz

ダメ。全く使えない。さすがは ZTE だなぁと・・。 このメーカのスマートフォンは良く『熱くなって使えない。』と、その昔聞いていたのですが、まさか自分の身に降り注ぐとは・・。

と、いうことで自作で、余っていた PC のパーツで、空冷ファンを自作しました。USB ケーブル接続で、外に出るときにはバッテリーを持ち歩き、家の中・車内ではそのまま USB 接続で利用。てな感じです。

自作したファンと一緒に。熱はサブ画面のある側、上のほうがべらぼうに熱くなります。ここにファンを装着して冷やす。と、いうことになります。

結構通信断が頻発して、実際に使えない状態が多いので今まで入れていた Y!mobule の SIM カードはこないだ購入した AQUOS sense9 に入れて利用することにしました。

と、こちらが熱暴走によるネットワーク系ダウン障害の事象です。

 
本題に行く前に、ダメな点をもう一個書いておきましょう。

この機種は Android14 が振ってきました。さすがはキャリアで売っている端末ですね。一応バージョンアップ保証対応という感じでしょうか。

ただ、Android13 -> Android14 へのバージョンアップは作りがいい加減でそれなりに悲しい。
まぁ、メーカとしては Libero Flip の後継が出たのでそっちに注力したい。と、いうことなのでしょなぁ。

 
ダメな点そのいち
バージョンアップしたらログイン時の数値叩く画面が下半分にしか表示されなくなって、文字(フォントサイズ)が小さくなった。全画面に表示してくれよー。とは思っても設定小項目なし。
まぁ、この程度だとかわいいモンかな? 僕的は辛いんだけど・・。

 
ダメな点そのに
サブディスプレイ(正確には「外部ディスプレイ」というのかな?)に何個か本体の状態を表示できるんだけど、「音楽」のメニューを選択しても何も表示しなくなった。
SMART USEN と U-NEXT アプリ、 Musicolet 根こそぎ表示されなくなった。見事にデグレードです・・。orz

 
まぁ、熱暴走が発生した時点でちょっと調査したところ『Android14 にバージョンアップしたら熱暴走が頻発するようになった。』と、いう意見があったので、なるほど。 Android14 へのバージョンアップは失敗だったのね。と、いうことでしょうか・・。詳細はわかりませんが。

僕的は色々悲しい Libero Flip の Android14 です・・。orz。

 
で、ここからがようやっと本題。
Libero Flip 購入前に『Libero Flip はヒンジの部分で液晶割れるよー。』と、いうのはちらほら聞いて(見て)いました。

『まぁ、折りたたみだし、二年持てば御の字かねぇ。』的発想で 9,800yen で購入しました。前回のエントリにも書いてますが Paypay ポイントで 500 ポイントくらい、「Libero Flip ガチャキャンペーン」で 1,000 ポイントくらい戻ってきて、かつ、 2,000yen 相当のケースまで付いたので、実質的には 6,000yen 前後で購入できたので、それはそれでラッキーでした。

 
で、ヒンジの部分から液漏れ発生です・・。 orz
左側の真ん中辺りがポツーンと黒くなっていて、上に向かって緑の線が走るようになりました。もぉ、ダメだ・・。orz

まだ、一年使ってないです。補償対象かな? 来週ソフトバンクショップに行って来て確認してみます。

 
どうしてこのようになったのか、ちょっと状況説明しておきます。

最近、 Libero Flip は閉じて利用しています。スーパーでお買い物して、Paypay で支払う時、その昔のガラケーのときにのように親指で上の部分を開く感じで開けていました。雰囲気的には本当にガラケー開ける感じ。
フリップ型のスマートフォンの正しい使い方ですね。で、これが優越感に浸れる瞬間;-)。

で、スーパーで開けようとした瞬間、メリっと、音がして、ヒンジの部分がなんか、ズレたような雰囲気です。

最初は、上の写真で確認すると、ヒンジの黒くなっている部分は点が三つくらいでしたが、そのうち黒いエリアになって、かつ、上の方に緑の線が伸びていきました。で、上の写真のような状態。

とりあえず、PASMO を移動して Google PAY のカード情報削除しました。 NFC の中に書き込まれていると消すの大変だし。あとは、おサイフケータイ系、アカウントでログインするアプリは根こそぎ移動。

あ、今回の移動のために、現役引退させた Aquos Sence6 を復活させました。話が横にそれますが、「Aquos Sence6 は遅くて重くてイヤになる。もうダメ・・。」とか言っていたのに一旦初期化してまっさらな状態にして再度環境構築進めたら『なんか速くね?』みたいな雰囲気です。が、まぁ、一時的な緊急利用です。

 
とまぁ、 Libero Flip はバックアップというか、不要となりそうなアプリを削除したりして、とりあえず、週末にショップに行くのであります。

修理なら個体は戻ってきそうだし、機種変更なら別の機種が来るだろうし、有償修理となれば、持って帰るけど、液晶見えなくなったら何もできなくなるし・・。

 
と、いうことで Libero Flip はやはり、開いたまま利用するのが良いかと思われます。

あと、ガラケーのように親指で開けるのではなく、ちゃんと両手で開けるのが良いかもです。
親指で開けると左側のヒンジのみに圧力がかかるかな?両手でちゃんと、なんだろ、僕はやったことないけど、ファンデーションのカラを開けるような雰囲気?テクマクマヤコン的な開け方をしたほうが良いのではないかと思われます。

 
他にも壊れた方いましたら、コメントなど頂ければ嬉しいです;-)。

AQUOS sense9 SH-M29A 購入しました。

去年の 11 月に Y!mobile で Libero Flip を 9,800yen で購入しました。
折りたたみ機種が破格の値段で購入できるので、現在も利用中なのですが、なんとっ!! さすがは ZTE の機種ですね。夏は熱くて使えない。
本体の熱が 47゜C を突破すると無線系が強制停止します。「モバイルネットワーク」の「モバイルデータ」や GPS などがいきなりオフになってしまいます。

一番最初に強制停止したのは車中でヤフーカーナビを利用していたときでした。突然道案内が停止し、結構慌てました・・。orz。
その後、ポケモン GO をやっていても一時間程度で熱くてやはり「モバイルデータ」が止まったりしてしまいます。

熱くなるのはサブディスプレーがある側。どちらかというと上のほうですね。こちらのほうに CPU などがあるのでしょう。ここを猛烈に冷やす必要があります。

と、いうことで Libero Flip を夏場に常用するとちょっと無理があるので、しょーがない。新しいのを買ってみるか。と、なったのであります。

 
以前から利用していた AQUOS sense6 は買ったときから遅くて、最近はアプリがクラッシュするようになって、もう耐えられない状態。

今度買うのは小さめなスマートフォンが良い。と、決めていたので、そうなると国産のスマートフォンしか現状ありえない。本当は Nothing Phone (3a) が欲しいと思ったのだけど、でかすぎる・・。

Xperia 10 VI は高いのと OS の更新頻度が低いので長く使えなさそう。もう一回 AQUOS に行くか? とか思ったけど、AQUOS sence6 がひどすぎたし・・。などと悩んでいてズルズルと延びていたのですが、遅ればせながら、結局 AQUOS sense9 の SIM フリー版 SH-M29A を購入しました。発売からだいぶ時期が経過しているので、ポイントなど諸々換算すると 45,000yen くらいで購入できました。

 
もうすでに世の中には AQUOS sense9 のレビュー記事は溢れているので、僕が気がついた点だけをちょっとまとめてみたいと思います。

箇条書きにしてみました。

  • むちゃくちゃ速いよっ!! (AQUOS sense6 と比べて)
  • iPhone15 とサイズがまるで一緒
  • 写真は悪くないし、シャッター音も消せる
  • USB-C で接続すると画面出力 OK
  • 5G SA (Standalone) 対応

 
まぁ、一応、これだけあると「充実の一台っ!!」って、感じでしょうか;-)。

1.むちゃくちゃ速いよっ!! (AQUOS sense6 と比べて)

いや。解ってます。 AQUOS sense6 がひどすぎた。買って使い始めた瞬間愕然としました。約半年後に AQUOS sense6s が出ましたな。
それに引き換え AQUOS sense9 の速さには驚きました。 SoC に Qualcomm Snapdragon 7s Gen 2 が搭載されていますが、これが非常に速く感じる体感を得られます。
シャープの OS 開発の技術力もあるのかな?
Libero Flip は Snapdragon 7 Gen 1 なので、SoC を考察すると一世代進歩した。と、いう感じでしょうか。 AQUOS sense6 と比べると劇的な速度体感が得られ Libero Flip と比べるとほんのちょっと速いかな?的体感速度でした。

AQUOS sense9 は sense8 と、比較すると 1.1 倍だっけか? sense6 と比較すると 4 割増くらいかな?
いやぁ。速度の違いが体感できました。幸せです;-)。

 

2.iPhone15 とサイズがまるで一緒

AQUOS sense9 は sense6 と比較すると、随分と横幅があります。AQUOS sense6 は どちらかというと SONY Xperia 10 II など Xperia 系とサイズが似ていましたが AQUOS sense9 はもう iPhone15 とサイズがほぼ一緒です。

写真こんな感じ。裏側から見た大きさ。

写真二枚目。厚さ。

AQUOS sense9 は iPhone15 に比べて 1mm くらい長くて、厚さは 0.3mm くらい厚いと、いう、もうほぼほぼサイズ一緒です。
なるほど、持ちやすい。と、感じるわけだ。カメラ部分の出っ張りが違うだけであとは一緒。まぁ、AQUOS sense9 のカメラの出っ張り部分のデザインは大人気ですしね。それはそれでぐー。

あと、ゼベルの写真も掲載しておきます。

iPhone15 は上下左右全部同じ幅ですが、AQUOS sense9 は上下一緒、左右一緒で、上下に均等に多少太くなってます。平たく言うと Xperia みたいで極薄。って、感じでしょうか。下たげゼベルが太い安めのスマートフォンよりはまだまし。見たいな感じでしょうか。

 

3. 写真は悪くないし、シャッター音も消せる

AQUOS sense6 も Xperia 10 II もカメラ機能で撮る写真はそれはそれは酷かったた。まぁ、写真は iPhone15 もしくはデジカメで撮れば良いやー。とか思っていたのですが、 AQUOS sence9 で撮る写真は比較的ぶマシになったほうかな。
ここでは、深く掘り下げることはしませんが;-P。

ところでカメラアプリの設定を確認していたら驚いたっ!! (@_o)

「シャッター音」というメニューがあって、それがオフにできる。ありがたい機能ですなぁ。今のスマートフォンはこういうのアリになったのかな? ちなみに Android のバージョンは 15 になっています。

料理の写真とか撮る機会多いので、シャッター音がしない。と、いうのは他の人に迷惑をかけることもない。と、いうことで、それは幸せになれますね。

 

4. USB-C で接続すると画面出力 OK

まさかっ!! ミドルレンジのスマートフォンで USB-C 経由の画面外部出力に対応しているとは思わなかった。

僕が過去に購入したスマートフォンの中で 画面出力に対応していたのは iPhone15 のみで AQUOS sense9 が二台目になります。
まぁ、 USB-C で接続して利用する携帯型サブディスプレーを一個持っているので、それに簡単に出力することができます。それはそれで幸せです。
ただ、そんなに利用する機会があるのかは未定ですが。

 
ちなみに iPhone15 は USB-C な HUB に HDMI ポートがついていると HDMI 経由でも画面出力が可能でしたが、 AQUOS sense9 でも試してみたところ、 HDMI 経由でも無事に画面出力できました。

旅行などに行ったときに撮った写真をホテルのテレビに出力したりとかできそうですね。

 

5. 5G SA (Standalone) 対応

この機能が使える日が来るのか、はたまた実際に利用されているのか?と、いうのはわかりませんが、これまたミドルレンジ機なのに 5G SA に対応しているそうです。
iPhone15 が 5G SA に対応しているそうなので、この機種がやはり二台目の対応機になります。

今 AQUOS sense9 には Y!mobile の SIM カードを入れています。 Softbank の純粋な 5G の電波が届くところでは利用が可能になるのかな?とは思っているので、まぁ、そういうところに行ったときには十分に活躍してくれることでしょう;-)。

 
ちなみに Android には「NewRadioSupporter – 5G回線チェッカー」と、いうのがあるので、自分のスマートフォンが今どの電波を掴んでいるのか、確認することができます。

ワクワクが広がります;-)。

 
とまぁ、今回 AQUOS sense9 を購入してみて、気がついた点をダラダラと書いてみました。他にも隠れた機能があるのかもしれませんが、今後の発見が楽しみです。

それにしても色々なところで iPhone15 とサイズ的にも機能的にも重複している点が多いのは驚きました。 iPhone15 と比べると、今回価格は半額以下で購入ました。『コストパフォーマンスが優れた製品』と、いうことになるでしょうか。
動作も比較的俊敏で、まぁ、なんとか納得行く速さに仕上がっています。 「目の付けどころがシャープでしょ。 」ですな;-)。

OS アップデートは 3 回 (Android17 まで対応?)セキュリティアップデートが 5 年かな? 比較的長期間使えそうです。

今後のセカンド機として活躍してくれることでしょう;-)。

MINISFORUM UM580 ミニ PC 購入。

今まで購入した「NiPoGi GK3Pro ミニ PC」や「Beelink MINI S」は Intel の Atom 系の CPU だったのだけど、今度は AMD Ryzen7 の CPU 搭載ミニ PC を購入しました。

まぁ、AMD Ryzen7 搭載ミニ PC が欲しかった。と、いうのもあるのですが、一番は USB Type-C がついているモノが欲しくなった。と、いうのが大前提としてありました。モバイルサブディスプレーなどは HDMI ではなく USB Type-C のものがそれなりに存在しているし、そーいうのに接続できるミニ PC が欲しくなった。と、いうことですね。

 
amazon で購入しましたが、注文したのは 2024/12/29 で、正月休みにこれで遊べたら嬉しいなぁ。なんて思っていましたが、配達されたのが、明けた 2025/01/18 でした。あらま・・。
まぁ、このミニ PC は 2022 年に発売されたようで、今はもう売ってないみたいです。僕が買ったタイミングで、多分、既に在庫一斉セール状態だったのかもしれません。だって、以下のスペックなのに 40,154yen で、そこにポイント還元で 400 ポイントくらいもらったので、実質 30,000yen 台で購入することができました。

  • CPU: Ryzen 7 5800H (3 コア/16 スレッド)
  • Memory: 16GB (DDR4 SO-DIMM 8GBx2)
  • SSD: PCIe M.2 2280 SSD 512GB

 
多少古い製品で、既にディスコンとはいえ、新品でこのスペックであればサブ機として十分です。
届いた箱を早速開けました。中に入っていたのはこんな感じ。

写真中央のちょっと上の黒い個体が本体で、右の説明書の下にあるのが、100W の USB Type-C のアダプターです。 USB Type-C のポートが二つあり、一個はミニ PC 本体への電源供給。もう一個は他の機器の充電用。なのだと思い、試しましたが PC に電源供給して起動している最中にもう一個の USB-C ポートに接続したら、PC 本体の電源が落ちてしまいました(g_g)。ダメじゃん・・orz。

本体の下の袋にはいっているのが S-ATA コネクタです。マザーボードに接続してミニ PC 本体に S-ATA の 2.5 インチ SSD などを追加可能です。早速、余っていた SSD を中に入れました。

全体のスペック、筐体の雰囲気などはこんな感じです。

 
このミニ PC 使い方ですが、どうしよう・・。

以前購入した NiPoGi GK3Pro ミニ PC は Windows11 Pro がインストールされていて、かつ FreeBSD でデスクトップ環境もフルで KDE6+Plasma6 が入っているマルチブートな環境で利用していますが、メインでの利用は FreeBSDで、それを bhyve サーバとして、利用していて仮想マシンが 3 台動作しています。

今回購入したのは Windows11 Pro の専用機に使用かなぁ。と、なったのであります。

 
まぁ、中国産のミニ PC は基本 OS 再インストール必須なので、今回も全て削除してから Windows11 Pro を再インストール。アクティベーションキーは BIOS(UEFI) 中で持っているので、サクっと再インストールできました。また、 Atom 機とは違い使っているデバイスも AMD 系 PC の一般的なものなので、あちこちから拾ってくる手間いらずで嬉しいです。

探し回ったのは WiFi と Bluetooth のドライバくらいでしょうか。最近は AMD の CPU 搭載 PC は MediaTek のものを利用しているケースが多いので、それだけ拾ってきました。

普段は FreeBSD の pciconf -lv を貼り付けるのですが、今回は FreeBSD はインストールしないので「デバイスマネージャー」のキャプチャを貼り付けておきます;-)。

さてと。 Windows 専用マシンとして利用するのにどうしよう。などと思ったのですが Oracle VirtualBox をインストールして、そこに FreeBSD/amd64 14.2-RELEASE をインストールしてみたいと思います。

と、いうのも Oracle VirtualBox はバージョンが 7.1.6 になって、MS ゴシックのギザギザしたフォントが変更になり、ちゃんとアンチエイリアスが効いたフォントで表示されるようになりました。また、Qt5 から Qt6 にフレームワークが変更になり、ロゴのアイコンまで変更になり「お。なんか良い感じじゃーん。」となっているのであります。

 
では、ここから FreeBSD/amd64 14.2-RELEASE をインストールして、X まで動作させていきます。

1. VirtualBox 7.1.6 を拾ってきてインストール
2. VirtualBox 7.1.6 Extension Pack を拾ってきてインストール
3. FreeBSD の iso ファイルを拾ってくる
4. FreeBSD をインストール

 
端折りましたが、ここまで大丈夫でしょうかね。

で、今回は X まで動作させるので、当然 KDE6 をインストールします。
他のマシンで既に KDE6+Plasma6 が動作しているので、そのマシン上で以下のコマンドを実行すれば、pkg を生成してくれます。

# pkg create -n -g -o /usr/ports/packages/All -a

 
あとは今回 Virtialbox にインストールした FreeBSD 側で /usr/ports/packages/All を NFS マウントするなり /usr/ports/packages/All/* を scp で取ってくるなりして pkg add kde-6.2.5.24.12.2.pkg などすれば 一気にインストールされます。また、 xorg-7 や emacs-29.4 などを pkg add するのも良いでしょう。

と、いうか、僕の場合、メインの ports コンパイルマシンがあって、そこでコンパイルして pkg create して NFS サーバ上に置いて、他の FreeBSD は NFS マウントして pkg add しています。 FreeBSD サイトを利用した pkg install はほぼ利用していないです。 pkg install すると、僕の make config とは合わないので、あまり利用していません。

 
と、いうこどて、 Xorg をインストールして KDE6+Plasma6 までインストールが完了しました。と、いうことで Xorg を起動させましょう。

今回 VirtualBox で FreeBSD を動作させるには以下のサイトが参考になるかと思います。

https://docs.freebsd.org/en/books/handbook/virtualization/#virtualization-guest-virtualbox

 
virtualbox-ose-additions を emulators/virtualbox-ose-additions からインストールします。 Xorg 使う版をインストールします。その後、 /etc/rc.conf に以下の行を追加。

vboxguest_enable="YES"
vboxservice_enable="YES"

 
続いて /usr/local/etc/X11/xorg.conf.d/ 配下の xorg.conf の設定です。 今の Xorg は結構自動で設定認識して動作するので設定は不要かもしれないです。僕の場合の設定を記載します。

o. 00-module.conf

Section "Module"
    Load  "GLcore"
    Load  "drm"
    Load  "fb"
    Load  "vgahw"
    Load  "shadow"

    SubSection "extmod"
        Option      "omit xfree86-dga"
    EndSubSection
EndSection

Section "DRI"
    Group "video"
    Mode 0666
EndSection

Section "ServerFlags"
    Option      "StandbyTime" "3"
    Option      "SuspendTime" "5"
    Option      "OffTime"     "10"
    Option      "AIGLX"       "True"

#   Option      "AllowEmptyInput" "off"
#   Option      "AutoAddDevices"  "off"
EndSection

 

o. 10-monitor-screen.conf

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Monitor Vendor"
    ModelName      "Monitor Model"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Card0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "NvAGP"

    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

 

o. 20-video.conf

Section "Device"
    Identifier "Card0"
    Driver "vboxvideo"
    VendorName "InnoTek Systemberatung GmbH"
    BoardName "VirtualBox Graphics Adapter"
EndSection

 

o. 50-keyboard.conf

Section "InputClass"
    Identifier      "AT Keyboard"
    MatchIsKeyboard "on"
#   Driver      "kbd"
    Driver      "evdev"
#   Option      "XkbRules"   "xorg"
    Option      "XkbRules"   "base"
    Option      "XkbModel"   "jp106"
    Option      "XkbLayout"  "jp"
#   Option      "XkbOptions" "ctrl:swapcaps"
EndSection

 

o. 60-mouse.conf

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

 
Xorg でディスプレーを表示させたり、キーボードやマウスを認識させたり、マウスホイールを動作させたりするには VirtualBox 側の「設定」が重要になってきます。

必要な設定内容を抜き出しました。

  • 「システム」の「ポインティングデバイス」は[PS2 マウス]を選択
  • 「システム」の「EFIを有効化」にチェック
  • 「システム」の他の「拡張機能」も必要に応じてチェック
  • 「ディスプレイ」の「グラフィックコントラー」は[VBosSVGA]を選択
  • 上記の設定を有効にすることにより一番下に「無効な設定が見つかりました」となるがとりあえず無視して[OK]を押す
  • CPU やメモリ容量については自分の好みでチョイス

 
こんな感じで設定して、 FreeBSD を起動して Xorg を起動すると動作してくれると思います。

ただ、一点。マウスのホイール機能がいまいち怪しい動作です。どうやら VirtualBox の他の機能に食われているようです。

FreeBSD の画面のメニューから「入力」をクリックして「マウス統合」を無効にしてみてください。

「マウス統合」を無効にすると、FreeBSD のウィンドから他のウィンドに移動する際、左 Ctrl ボダンを押す必要があります。シームレスにマウスが動作しません。しかし、VirtualBox の FreeBSD ではホイール機能はちゃんと動作するようになりました。ただ、ダブルクリックしてコピーしようとしたとき、下にちょっとズレたり、あまり使い勝手が良くないような・・。

このあたり、趣味の世界で利用方法を選択してください。

 
今回、初めてコッテリと Windows 側で FreeBSD を設定してみました。普段は PC 買ったら即『マルチブート』が鉄則になっていたので、まぁ、ある意味良い体験でした。これで、Windows 上の VirtualBox で FreeBSD が動作することも確認できたし、まぁ良しとするですかねぇ。

ちなみに、今回購入したミニ PC で World of Warships なるゲームを試してみましたが 3 分に一回落ちるとか、結構悲惨。ファイナル・ファンタジーのベンチマークとか走らせたら 1920×1080 のフル HD で 2700 とか。ゲームにはちとつらいか・・。

FreeBSD に KDE6 が降ってきた。

kde.org から KDE6 がリリースされて、FreeBSD では長らくベータ版だったのですが、いよいよ 2025/2/3 に、ports-current に降ってきました。以前「FreeBSD に KDE5 が降ってきた。」と書いたのは 2018 年 5 月で、その間ずっと KDE5 と Plasma5 を使っていたのですが、今回、めでたくバージョンアップです。

今回は KDE5+Plasma5 から KDE6+Plasma6 へのバージョンアップ編として書いてみたいと思います。

KDE5 から KDE6 へのバージョンアップについては、以下の項目に付いて重点的に考慮しつつインストールしてみたいと思います。

  • QT5 との決別
  • fcitx は 4 系から fcitx5 へ移行
  • fcitx5 への移行に伴う mozc のバージョンアップ

内容が似ているようないないような雰囲気ですが、簡単に説明すると、そもそも KDE6+Plasma6 になると QT5 が不要になり、 KDE6+Plasma6 は QT6 へ移行していきます。また、QT5 と QT6 では qt アプリケーションの中でも同居できないモノがあり conflift が発生するので QT6 への移行は必須となります。

QT5 を使っているアプリケーションが色々あるよなぁ。と、思うのですが、上記でいうと mozc-tools が QT5 を利用しているので、これを QT6 を利用しているバージョンに移行する必要があります。するっていと、 fcitx は 4 系から fcitx5 へ移行。と、なります。

では実際にインストールしてみます。環境としましては、 FreeBSD/amd64 14.2-RELEASE において、現在、 KDE5+Plasma5 がインストールされている状態のところに ports から x11/kde をインストールするところから始めます。

次に fcitx5 をインストールして、最後に mozc をインストールして、環境を整えます。

 

1. kde6 のインストール
まず、その前に不要なものを削除しましょうか。

# pkg delete kde5-5.27.11.23.08.5_2
# pkg delete ja-fcitx-mozc-2.23.2815.102.01_25 ja-mozc-el-2.23.2815.102.01_25 ja-mozc-server-2.23.2815.102.01_25 ja-mozc-tool-2.23.2815.102.01_25
# pkg delete fcitx-qt5-1.2.7 zh-fcitx-4.2.9.9 zh-fcitx-configtool-0.4.9_2
# pkg delete sddm
# pkg autoremove
#
# pkg info | grep qt5- | awk '{print "pkg delete -fy " $1}' | sh -x
# pkg info | grep kf5- | awk '{print "pkg delete -fy " $1}' | sh -x
# pkg info | grep plasma5- | awk '{print "pkg delete -fy " $1}' | sh -x
#
# portmaster -a
#
# cd /usr/ports/x11/kde
# make install
# cd /usr/ports/x11/sddm
# make install
#

 
大体こんな感じでしょうか。そして、そのあと x11/kde をインストールします。
一点気をつけるのが x11/plasma6-plasma の make config のオプションです。

下の「Install Plasma 6 integration plugins for Qt5 applications」にチェックを付けてコンパイルすると、ドドドと QT5 関係のソフトウェアが入ってしまいます。なので、チェックは外したほうが良いです。
それにしても、ここからインストールされる qt アプリはどうして QT5 と QT6 で conflict を起こさないのだろう・・。不思議だ。

まぁ、速いマシンで約半日。と、いう感じでしょうか。

まっさらな状態から KDE6+Plasma6 をインストールするときは素直に下の二つの make install を叩けば良いでしょう。あ。その前に 既存のインストールされているものを portmaster -a で最新の状態にしておきましょう。

 
インストールが完了した KDE6 と、以前利用していた KDE5 との違いはあまり感じられません。まぁ、themes で色々カスタマイズしているしているので、それはそれで今まで利用していた自分の環境が引き継がれるかと思います。
ただ、QT5 から QT6 になった関係で themes やアイコンが引き継がれない場合があるので、その場合は「ソフトウェアセンター」から再インストールしましょう。

KDE6+Plasma6 になって一番変わったのは「設定」アプリでしょうか。左側の並び順がごそっと変わりました。一番上に[入力/出力デバイス]が来て、[接続されたデバイス]とか、[外観とスタイル]は結構下に移動しました。

あとは、現在動作確認中です。特に問題なく動作しています。

 

2. fcitx5 のインストール
次に日本語入力である fcitx5 をインストールします。 fcitx の 4 系は今までは ports では chinese/fcitx にありましたが fcitx5 では textproc/fcitx5 になります。 textproc/ の下に fcitx5 関連のものが色々入っているのでこちらをインストールします。

# cd /usr/ports/textproc/fcitx5
# make install
# cd ../fcitx5-qt
# make FLAVOR=qt6 install 
# cd ../fcitx5-gtk
# make install
# cd ../fcitx5-m17n
# make install

 
こんな感じで OK です。 fcitx5-qt は FLAVOR=qt6 を指定して QT6 対応のものを作成します。
fcitx5-gtk は Firefox や Thunderbird など GTK アプリで日本語入力をする場合に必須ですので、インストールします。 falkon などは QT6 アプリなので fcitx5-gtk は不要で日本語入力ができます。
GTK アプリで日本語入力する場合は環境変数が多少変わりました。以下のように指定すると良いでしょう。

export QT_IM_MODULE=fcitx
export GTK_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

 
GTK_IM_MODULE は、多分今まで xim と指定していたかと思いますが、 fcitx5 からは fcitx と指定してください。これで Firefox でも日本語が打てるようになります。

 
fcitx5 を利用していて、もうひとつ困るのが設定についてです。KDE6 のパネルにウィジェットとして「入力メソッドパネル」を追加すると、日本語キーボードと mozc の切り替え、または動作モードが表示されますが、「インプットメソッドを設定」で fcitx5 のオン/オフやキーバインドの設定をするのですが、これには textproc/fcitx5-configtool が必要になります。がっ!! しかし、 textproc/fcitx5-configtool をコンパイルすると QT5 のファイルがドドドとインストールされてしまいます。で、QT6 のファイルと conflict が発生します。結構痛い・・。

一時的に textproc/fcitx5-configtool をインストールして、fcitx5 の設定が完了したらサクっと、 textproc/fcitx5-configtool を pkg delete して、かつ、 pkg autoremove して conflict した QT6 のアプリを再インストールするのが良いかと思われます。

 
fcitx5-configtool で設定した情報は ~/.config/fcitx5/config の設定ファイルとして保存されます。と、いうことは、このファイルを使い回せば大丈夫なわけですね。

せっかくなので、ここに僕の ~/.config/fcitx5/config を貼り付けておきましょう。
これをそのまま自分の環境に置くと textproc/fcitx5-configtool のインストールが不要になります。

[Hotkey]
# トリガーキーを押すたびに切り替える
EnumerateWithTriggerKeys=True
# 次の入力メソッドに切り替える
EnumerateForwardKeys=
# 前の入力メソッドに切り替える
EnumerateBackwardKeys=
# 切り替え時は第1入力メソッドをスキップする
EnumerateSkipFirst=False

[Hotkey/TriggerKeys]
0=Shift+space
1=Henkan
2=Muhenkan

[Hotkey/AltTriggerKeys]
0=Shift_L

[Hotkey/EnumerateGroupForwardKeys]
0=Super+space

[Hotkey/EnumerateGroupBackwardKeys]
0=Shift+Super+space

[Hotkey/ActivateKeys]
0=Hangul_Hanja

[Hotkey/DeactivateKeys]
0=Hangul_Romaja

[Hotkey/PrevPage]
0=Up

[Hotkey/NextPage]
0=Down

[Hotkey/PrevCandidate]
0=Shift+Tab

[Hotkey/NextCandidate]
0=Tab

[Hotkey/TogglePreedit]
0=Control+Alt+P

[Behavior]
# デフォルトで有効にする
ActiveByDefault=False
# フォーカス時に状態をリセット
resetStateWhenFocusIn=No
# 入力状態を共有する
ShareInputState=No
# アプリケーションにプリエディットを表示する
PreeditEnabledByDefault=True
# 入力メソッドを切り替える際に入力メソッドの情報を表示する
ShowInputMethodInformation=True
# フォーカスを変更する際に入力メソッドの情報を表示する
showInputMethodInformationWhenFocusIn=False
# 入力メソッドの情報をコンパクトに表示する
CompactInputMethodInformation=True
# 第1入力メソッドの情報を表示する
ShowFirstInputMethodInformation=True
# デフォルトのページサイズ
DefaultPageSize=5
# XKB オプションより優先する
OverrideXkbOption=False
# カスタム XKB オプション
CustomXkbOption=
# Force Enabled Addons
EnabledAddons=
# Force Disabled Addons
DisabledAddons=
# Preload input method to be used by default
PreloadInputMethod=True
# パスワード欄に入力メソッドを許可する
AllowInputMethodForPassword=False
# パスワード入力時にプリエディットテキストを表示する
ShowPreeditForPassword=False
# ユーザーデータを保存する間隔(分)
AutoSavePeriod=30

 

以上で fcitx5 のインストールは終わりです。

ただ、fcitx5 を利用するようになると、今度は japanese/fcitx-mozc が利用できなくなります。 japanese/fcitx-mozc を利用しなくなるので合わせて japanese/mozc-server も利用しなくなります。と、いうことで fcitx5 に対応した fcitx5-mozc を利用することになるのであります。

と、いうことで次へ。

 

3. fcitx5-mozc のインストール
FreeBSD-users-jp な ML でも何回か投稿がありました。ports-current の fcitx-mozc の mozc のバージョンは ja-fcitx-mozc-2.23.2815.102.01_25 ですが、 fcitx5 に対応した mozc は ja-fcitx5-mozc-2.31.5712.102_6 という、先進的なバージョンになります。

まずは、情報収集として以下の URL を確認します。

https://lists.freebsd.org/archives/freebsd-users-jp/2024-July/000379.html
https://github.com/kdeguchi/mozc-ports

 
では、インストール手順ですが、まず上の URL の github.com から mozc-ports-main.zip をダウンロードして展開し /usr/ports/ 配下に設置します。

# wget https://github.com/kdeguchi/mozc-ports/archive/refs/heads/main.zip -O mozc-ports-main.zip
# unzip mozc-ports-main.zip
# cp -pr mozc-ports-main /usr/ports/mozc-ports
# cd /usr/ports/mozc-ports/japanese/
# ls 
fcitx-mozc/   fcitx5-mozc/  ibus-mozc/    Makefile.inc  mozc-el/      mozc-server/  mozc-tool/    uim-mozc/

 
こんな感じです。で、/etc/make.conf に一行追加します。

# fcix5-mozc compile
OVERLAYS+=/usr/ports/mozc-ports

 

これで準備が整いました。コンパイルしていきます。
ちなみに mozc は最新版です。 mozc-ports/devel/bazel8 も合わせてインストールされて openjdk18 など java 関係のごついのが色々インストールされます。コンパイルにそれなりの時間がかかります。

# cd /usr/ports/mozc-ports/japanese/fcitx5-mozc/
# make install
# cd ../mozc-server
# make install
# cd ../mozc-tool
# make install
# cd ../mozc-el
# make install
# 

 
コンパイルは時間はかかりますが、順調に進むと思います。 python3 が BUILD_DEPENDS と RUN_DEPENDS で必要になります。既存でインストールされている python3.11 などを /usr/local/bin/python3 へと symlink する lang/python3 がインストールされます。

無事にコンパイルできて、インストールして、使えるようになったでしょうか?

僕の場合は特に問題なく動作しましたが、ただ、一点。 mozc-el がダメで emacs 中で日本語が利用できなくなりました。どうも /usr/local/libexec/mozc_emacs_helper が起動されない雰囲気です。色々試したけどやっぱりダメで emacs-lisp 部分の /usr/local/share/emacs/29.4/site-lisp/mozc/* のファイルを ja-mozc-el-2.23.2815.102.01_25 の、つまりは japanese/mozc-el がインストールしたものと入れ替えたら無事に動作しました。入れ替えるファイルは emacs-lisp の部分のみなので、mozc のバージョンに引きずられることもなく、無事に動作して一安心。

 
とまぁ、これで KDE6+Plasma6 と QT6 がインストールされ、日本語入力もできるようになり KDE5+Plasma5 から KDE6+Plasma6 と QT6 への移行が完了しました。

ただ、残りほんの少し QT5 を利用しているアプリが存在します。その一つが sddm になります。おかげで deskutils/plasma6-sddm-kcm をインストールして themes を別のに選択しても反映されない。とかが起きています。
あと、 KDE 系とは直接関係ないですが、 vlc も QT5 のライブラリを利用しています。今のところ最後の QT5 利用アプリはこの二つ。 pkg info | grep qt5- | wc -l すると 16 となっています。

 
あ。KDE6+Plasma6 の Wayland についてちょっと触れておきます。 sddm から Plasma (Wayland) を指定してログインしてもすぐに sddm の画面に戻ってしまい、 Wayland では利用できません。
sddm でのログイン時のログは ~/.local/share/sddm/wayland-session.log に保存されているので確認することができます。僕の環境では以下のログが出力されていました。

kwin_core: Could not determine the active graphical session
kwin_wayland_drm: failed to open drm device at "/dev/dri/card0"
kwin_wayland_drm: No suitable DRM devices have been found

 
なんか、AMD CPU と、そこに搭載されているグラフィックチップでは Wayland が動作しないようです。 nVidia とか Intel なGPU なら動作するかもしれんです・・(g_g)。

 
と、いうことで、ほぼ完全に移行が完了しました。これからドンドン使い込んでいきたいと思います。
KDE については KDE5 のときもそうでしたが、時々パラパラっとエントリ書いていますので、もしかしたらまた書くかもです。

 
あ。 japanese/mozc-server あたりは最新の 2.31.5712.102 にならないのかな? (独り言)