青木@名古屋です。 表題の件、Qt6での入力に対応するモジュールをビルドさせるだけなら 簡単なのでパッチを作ってみましたが、需要ありますか?
やったことはtextproc/fcitx-qt5をFLAVOR化して、何も指定しないか defaultを指定してビルド・インストールすれば従来どおり、qt6を 指定すればQt6用の【IMEプラグインモジュールだけが】ビルド・ インストールできるようにしただけです。 ※FLAVOR=qt6でのビルド・インストールはportupgradeや pkg_replaceでは思うようにいきませんので、`make FLAVOR=qt6 install` でやらないと駄目でした。 また、従来のQt5対応の方をインストール していない状態でのテストも行っていません。 その程度のものです。 というのも、chinexe/fcitxは開発が停滞していてtextproc/fcitx5への 移行が進みつつあるようなのですが、mozcを使用している場合、 japanese/fcitx-mozc相当のものが移植される気配が見えません。 いろいろ情報を探ってみても、直接的なupstreamの情報に行き当たらず 私の手には負えないので、libreoffice等、使用しているQt5案件が Qt6に移行してから慌てるのは嫌なので、何とかなりそうなところに 手を打ってみた次第です。 とりあえず、比較的依存の少なそうなeditors/focuswriterを入れてみて 機能してくれるのは確認しました。 ※devel/qt6-5compatは無くても大丈夫そうです。 ただ、抜いたり入れたりしたのでテストに不備があって 依存に追加する必要があるかもしれません。 ※FLAVOR毎に変更が必要な箇所毎に条件分けを入れているので、 綺麗なパッチではありません(下手に動かして意図しないビルド 異常が出ると対応する余力が無いので)。 chinese/fcitx (fcitx4系)からtextproc/fcitx5 (fcitx系)への 移行が進むのが本道の中、いまさら需要がないのに(みんなfcitx5系 へのmozc対応の方しか期待していないのに)Bugzillaへパッチ提案 するのもどうか、ということで保留していますが、需要が多そうなら 考えます。 その際はpkg-descrなりfiles/pkg-messages.inなりで 手順の説明が必要と思いますが。 ※fcitx5-mozcを何とかするとなると、fedoraのrpmの情報[1]を 基にportsフレームワークで再現するのが早そうではありますが、 手が回りません。 現状、日本語だとjapanese/fcitx5-anthyだけが fcitx5に対応しているようです。 現実にはfcitx5でも、textproc/fcitx5-qtに対して今回作ったパッチと 同じような対応が必要になります。 こちらは当該モジュール以外にも 踏み込んでいそうなので、なんともいえません。 [1] https://src.fedoraproject.org/rpms/fcitx5-mozc/raw/f36/f/fcitx5-mozc.spec -- 青木 知明 [Tomoaki AOKI] <junch...@dec.sakura.ne.jp>
diff -u -p -N textproc/fcitx-qt5/Makefile textproc/fcitx-q56/Makefile --- a/textproc/fcitx-qt5/Makefile 2022-09-12 01:44:45.656440000 +0900 +++ b/textproc/fcitx-qt5/Makefile 2022-09-20 10:38:16.000000000 +0900 @@ -3,20 +3,42 @@ DISTVERSION= 1.2.7 CATEGORIES= textproc MAINTAINER= y...@freebsd.org -COMMENT= Fcitx support for Qt5 +COMMENT= Fcitx support for Qt5 and 6 WWW= https://github.com/fcitx/fcitx-qt5 LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING +FLAVORS= default qt6 +FLAVOR?= ${FLAVORS:[1]} +qt6_PKGNAMESUFFIX= -qt6 + LIB_DEPENDS= libfcitx-config.so:chinese/fcitx \ libxkbcommon.so:x11/libxkbcommon -USES= compiler:c++11-lib cmake gettext kde:5 pkgconfig qt:5 +.if ${FLAVOR:U} != qt6 + USES= compiler:c++11-lib cmake gettext kde:5 pkgconfig qt:5 +.else + USES= compiler:c++11-lib cmake gettext kde:5 pkgconfig qt:6 +.endif USE_GITHUB= yes GH_ACCOUNT= fcitx USE_KDE= ecm -USE_QT= concurrent core dbus gui widgets buildtools:build qmake:build +.if ${FLAVOR:U} != qt6 + USE_QT= concurrent core dbus gui widgets buildtools:build qmake:build +.else + USE_QT= base +.endif USE_LDCONFIG= yes + +.if ${FLAVOR:U} != qt6 + CMAKE_ON= ENABLE_QT5 + CMAKE_OFF= ENABLE_QT4 ENABLE_QT6 +.else + CMAKE_ON= ENABLE_QT6 + CMAKE_OFF= ENABLE_QT4 ENABLE_QT5 +.endif + +qt6_PLIST= ${.CURDIR}/pkg-plist-qt6 .include <bsd.port.mk> diff -u -p -N textproc/fcitx-qt5/pkg-plist-qt6 textproc/fcitx-qt5/pkg-plist-qt6 --- a/textproc/fcitx-qt5/pkg-plist-qt6 1970-01-01 09:00:00.000000000 +0900 +++ b/textproc/fcitx-qt5/pkg-plist-qt6 2022-09-20 10:19:27.000000000 +0900 @@ -0,0 +1 @@ +%%QT_PLUGINDIR%%/platforminputcontexts/libfcitxplatforminputcontextplugin-qt6.so