Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Sep 2022 20:35:11 +0900
From:      Tomoaki AOKI <junchoon@dec.sakura.ne.jp>
To:        freebsd-users-jp@freebsd.org
Subject:   =?UTF-8?B?dGV4dHByb2MvZmNpdHgtcXQ144Gu6LaF5omL5oqc44GNUXQ25a++?= =?UTF-8?B?5b+c?=
Message-ID:  <20220921203511.8d5c3a05f77c35135e6d21a1@dec.sakura.ne.jp>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.

--Multipart=_Wed__21_Sep_2022_20_35_11_+0900_PGGzVGYidE1ZE0l.
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

青木@名古屋です。

表題の件、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]    <junchoon@dec.sakura.ne.jp>

--Multipart=_Wed__21_Sep_2022_20_35_11_+0900_PGGzVGYidE1ZE0l.
Content-Type: text/x-diff;
 name="fcitx-qt6.diff"
Content-Disposition: attachment;
 filename="fcitx-qt6.diff"
Content-Transfer-Encoding: 7bit

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=	yuri@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

--Multipart=_Wed__21_Sep_2022_20_35_11_+0900_PGGzVGYidE1ZE0l.--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20220921203511.8d5c3a05f77c35135e6d21a1>