From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Zhu Zihao Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Nov 2020 05:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 44920@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.160654230615826 (code B ref -1); Sat, 28 Nov 2020 05:46:01 +0000 Received: (at submit) by debbugs.gnu.org; 28 Nov 2020 05:45:06 +0000 Received: from localhost ([127.0.0.1]:46838 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kit2c-000473-5A for submit@debbugs.gnu.org; Sat, 28 Nov 2020 00:45:06 -0500 Received: from lists.gnu.org ([209.51.188.17]:34804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kit2X-00046K-75 for submit@debbugs.gnu.org; Sat, 28 Nov 2020 00:45:00 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55128) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kit2V-0005My-Ni for guix-patches@gnu.org; Sat, 28 Nov 2020 00:44:57 -0500 Received: from mail-m973.mail.163.com ([123.126.97.3]:38242) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kit2M-0006Bw-1a for guix-patches@gnu.org; Sat, 28 Nov 2020 00:44:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Message-ID:Date:MIME-Version; bh=XBY72 zqqNRxGYicBSs5sUqRiljGrCiohaGr2UIwHHdg=; b=fe0ihi9bN3DWC02dTLNWD u9j4c4gVvgU/haNbKTE38ZXJc/R+ZMSM5SFEAhbnWIIqSOBS7J0TjDxr68OHH7mY 9RloMiDRgUSawwTDCqoUnysOXYHtGPyfDuekJ3nZe/f/uqq4sbxRgMeTBdPplv7f cftkjU7UUCANYsa+uBIFCw= Received: from asus-laptop (unknown [27.39.89.62]) by smtp3 (Coremail) with SMTP id G9xpCgD3dsq948FfS0kfNQ--.46038S2; Sat, 28 Nov 2020 13:44:29 +0800 (CST) User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao Message-ID: <86360uujbf.fsf@163.com> Date: Sat, 28 Nov 2020 13:44:20 +0800 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-CM-TRANSID: G9xpCgD3dsq948FfS0kfNQ--.46038S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvjxUoSoXDUUUU X-Originating-IP: [27.39.89.62] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/xtbB8Qjqr12MYABM9AACs3 Received-SPF: pass client-ip=123.126.97.3; envelope-from=all_but_last@163.com; helo=mail-m973.mail.163.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.3 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --=-=-= Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" --==-=-= Content-Type: text/plain This is a series of patches, add fcitx5 and its build dependecies. a qt5 and gtk2/3 plugin, chinese inputmethod addon and a material theme --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/B47QVHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamDv0H/R6frvIFOBz70Tyb/pJ5QR6H2RX2 wgpDK1ohZ5errFfFSnGBKgFvChlDc/r7uGg4OC33xd0EW82B+QZSdOfJff2QVq9n 13bPi0oHqKVkjyQ+DFl7xyOZUPCdQ2ysy6sSkC6QYwr8bcPS1/MBCltEOX6T6euU +PIcL/viNTb8vOTNmwj/GqD4xXyWsAh/6pUmy8jAC5j2knu5pMzVGpYR/L1Fx9le vcAfD7TskSTpXM5NfHrQDPuIRNz0HrwKr/jJobDiqWEYOjfpOx6tImKyuNP93qsv ew2sBphiSrqT8zeFM5zBT3QtQf7l7TM3n42V79iHbnBDQf7OgDcdKRToUMc= =MUcB -----END PGP SIGNATURE----- --==-=-=-- --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-xcb-imdkit.patch Content-Transfer-Encoding: quoted-printable >From cbe128e488078b3af8f7d1bdb4bf9dc9f12a2f0b Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:16:50 +0800 Subject: [PATCH 1/9] gnu: Add xcb-imdkit. * gnu/packages/fcitx5.scm: New file. (xcb-imdkit): New variable. --- gnu/packages/fcitx5.scm | 84 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 gnu/packages/fcitx5.scm diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..171d545ed8 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,84 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2020 Zhu Zihao +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages fcitx5) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages boost) + #:use-module (gnu packages curl) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages iso-codes) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libevent) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages unicode) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) + +(define-public xcb-imdkit + (package + (name "xcb-imdkit") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/xcb-imdki= t/xcb-imdkit-" + version ".tar.xz")) + (sha256 + (base32 "0qgbklk5a809asyaxi6v9iasxc19g16fc5rphnamhwrliczlycas")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled uthash. + (delete-file-recursively "uthash") + #t)))) + (build-system cmake-build-system) + (inputs + `(("uthash" ,uthash) + ("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/xcb-imdkit") + (synopsis "Input method development support for XCB.") + (description "Xcb-imdkit is an implementation of xim protocol in XCB, +comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, +it has less memory foot print, better performance, and safer on malformed +client.") + (license license:lgpl2.1))) --=20 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-fcitx5.patch >From 3870f53451deea014e9d28ce7df418bc9793d3e1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:19:26 +0800 Subject: [PATCH 2/9] gnu: Add fcitx5. * gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch: New file. * gnu/local.mk (dist_patch_DATA): Reference new patch. * gnu/packages/fcitx5.scm(fcitx5): New variable. --- gnu/local.mk | 1 + gnu/packages/fcitx5.scm | 63 ++++++++++ .../patches/fcitx5-allow-set-cldr-dir.patch | 114 ++++++++++++++++++ 3 files changed, 178 insertions(+) create mode 100644 gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5277403196..00ba3ee818 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -977,6 +977,7 @@ dist_patch_DATA = \ %D%/packages/patches/fasthenry-spSolve.patch \ %D%/packages/patches/fasthenry-spFactor.patch \ %D%/packages/patches/fbreader-curl-7.62.patch \ + %D%/packages/patches/fcitx5-allow-set-cldr-dir.patch \ %D%/packages/patches/fifengine-swig-compat.patch \ %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ %D%/packages/patches/fifo-map-remove-catch.hpp.patch \ diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 171d545ed8..c4ee0c6e3c 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -82,3 +82,66 @@ comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, it has less memory foot print, better performance, and safer on malformed client.") (license license:lgpl2.1))) + +(define-public fcitx5 + (package + (name "fcitx5") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" + version "_dict.tar.xz")) + (sha256 + (base32 "0ai7qkxvkdl5qmrvkjp53w1809hhla9csf04qsnf8k33pqbzdgw8")) + ;; This backport patch allow us to use CLDR data in unicode-cldr-common. + ;; it should be removed after upstream make a newer release. + (patches (search-patches "fcitx5-allow-set-cldr-dir.patch")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLDR_DIR=" + (assoc-ref %build-inputs "unicode-cldr-common") + "/share/unicode/cldr")))) + (inputs + `(("cairo" ,cairo) + ("cairo-xcb" ,cairo-xcb) + ("dbus" ,dbus) + ("enchant" ,enchant) + ("expat" ,expat) + ("fmt" ,fmt) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("iso-codes" ,iso-codes) + ("json-c" ,json-c) + ("libevent" ,libevent) + ("libpthread-stubs" ,libpthread-stubs) + ("libuuid" ,util-linux "lib") + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxfixes" ,libxfixes) + ("libxinerama" ,libxinerama) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("pango" ,pango) + ("unicode-cldr-common" ,unicode-cldr-common) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-imdkit" ,xcb-imdkit) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("xkeyboard-config" ,xkeyboard-config))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "FCITX_ADDON_DIRS") + (files '("lib/fcitx5"))))) + (home-page "https://github.com/fcitx/fcitx5") + (synopsis "Next generation of Fcitx") + (description "Fcitx 5 is a generic input method framework, the successor +of Fcitx.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch b/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch new file mode 100644 index 0000000000..a0c3b9b60f --- /dev/null +++ b/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch @@ -0,0 +1,114 @@ +https://github.com/fcitx/fcitx5/commit/a2b09de92a73dfa4ae43d3ac8a4ffa1aa791f6c5.patch +https://github.com/fcitx/fcitx5/issues/154 + +From a2b09de92a73dfa4ae43d3ac8a4ffa1aa791f6c5 Mon Sep 17 00:00:00 2001 +From: Weng Xuetian +Date: Sun, 22 Nov 2020 23:42:44 -0800 +Subject: [PATCH] Allow set CLDR dir + +Fix #154 +--- + CMakeLists.txt | 22 +++++++++++++++++++--- + config.h.in | 2 +- + src/modules/emoji/CMakeLists.txt | 2 +- + src/modules/emoji/emoji.cpp | 8 +++----- + 4 files changed, 24 insertions(+), 10 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e6763dd..fc84b4b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -29,6 +29,19 @@ option(ENABLE_WAYLAND "Enable wayland support" On) + option(ENABLE_DOC "Build doxygen" Off) + option(USE_SYSTEMD "Use systemd for event loop and dbus, will fallback to libevent/libdbus if not found." On) + option(ENABLE_XDGAUTOSTART "Enable xdg autostart desktop file installation" On) ++set(CLDR_DIR "" CACHE STRING "Unicode CLDR (Common Locale Data Repository) directory") ++ ++if (CLDR_DIR STREQUAL "") ++ if (IS_DIRECTORY "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") ++ set(CLDR_DIR "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") ++ else(IS_DIRECTORY "/usr/share/unicode/cldr") ++ set(CLDR_DIR "/usr/share/unicode/cldr") ++ endif() ++endif() ++ ++if (NOT IS_DIRECTORY "${CLDR_DIR}") ++ message(FATAL_ERROR "Could not find Unicode CLDR directory") ++endif() + + ####################################################################### + # Find packages +@@ -73,7 +86,6 @@ pkg_check_modules(CairoXCB IMPORTED_TARGET cairo-xcb) + pkg_check_modules(Pango IMPORTED_TARGET pango pangocairo) + pkg_check_modules(GdkPixbuf IMPORTED_TARGET gdk-pixbuf-2.0) + pkg_check_modules(GioUnix IMPORTED_TARGET gio-unix-2.0) +-pkg_check_modules(CldrEmojiAnnotation REQUIRED IMPORTED_TARGET cldr-emoji-annotation) + + if (ENABLE_WAYLAND) + find_package(Wayland REQUIRED COMPONENTS Client Egl) +@@ -106,10 +118,14 @@ else() + set(WAYLAND_FOUND FALSE) + endif() + ++if (NOT EXISTS "${CLDR_DIR}") ++ message(FATAL_ERROR "Could not find Unicode CLDR directory: ${CLDR_DIR}") ++endif() ++ + set(DEFAULT_XKB_RULES_FILES "${XKEYBOARDCONFIG_XKBBASE}/rules/${DEFAULT_XKB_RULES}.xml") + if (NOT EXISTS "${DEFAULT_XKB_RULES_FILES}") +-message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT_XKB_RULES_FILES}") +-endif () ++ message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT_XKB_RULES_FILES}") ++endif() + + # directory needed by bsd + if(NOT CMAKE_INSTALL_LIBDATADIR) +diff --git a/config.h.in b/config.h.in +index 09bf002..4291152 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -33,7 +33,7 @@ + #cmakedefine HAS_DLMOPEN + #define XKEYBOARDCONFIG_DATADIR "@XKEYBOARDCONFIG_DATADIR@" + #define DBUS_SYSTEM_BUS_DEFAULT_ADDRESS "@DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@" +-#define CLDR_EMOJI_ANNOTATION_PREFIX "@CldrEmojiAnnotation_PREFIX@" ++#define CLDR_DIR "@CLDR_DIR@" + + #ifndef _GNU_SOURCE + #define _GNU_SOURCE +diff --git a/src/modules/emoji/CMakeLists.txt b/src/modules/emoji/CMakeLists.txt +index 9fa84bb..57ae48b 100644 +--- a/src/modules/emoji/CMakeLists.txt ++++ b/src/modules/emoji/CMakeLists.txt +@@ -1,4 +1,4 @@ +-if (NOT IS_DIRECTORY ${CldrEmojiAnnotation_PREFIX}/share/unicode/cldr/common/annotations) ++if ("${CLDR_DIR}" STREQUAL "" OR NOT IS_DIRECTORY "${CLDR_DIR}/common/annotations") + return() + endif() + +diff --git a/src/modules/emoji/emoji.cpp b/src/modules/emoji/emoji.cpp +index 5606a37..805aef7 100644 +--- a/src/modules/emoji/emoji.cpp ++++ b/src/modules/emoji/emoji.cpp +@@ -126,7 +126,7 @@ bool noSpace(const std::string &str) { + + const EmojiMap *Emoji::loadEmoji(const std::string &language, + bool fallbackToEn) { +- // This is to match the file in cldr-emoji-annotation. ++ // This is to match the file in CLDR. + static const std::unordered_map languageMap = { + {"zh_TW", "zh_Hant"}, {"zh_CN", "zh"}, {"zh_HK", "zh_Hant_HK"}}; + +@@ -172,10 +172,8 @@ const EmojiMap *Emoji::loadEmoji(const std::string &language, + return utf8::lengthValidated(str) > 2; + }}}; + const auto *filter = findValue(filterMap, lang); +- const auto file = +- stringutils::joinPath(CLDR_EMOJI_ANNOTATION_PREFIX, +- "/share/unicode/cldr/common/annotations", +- stringutils::concat(lang, ".xml")); ++ const auto file = stringutils::joinPath( ++ CLDR_DIR, "/common/annotations", stringutils::concat(lang, ".xml")); + EmojiParser parser(filter ? *filter : nullptr); + if (parser.parse(file)) { + emojiMap = &(langToEmojiMap_[lang] = std::move(parser.emojiMap_)); -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-fcitx5-lua.patch >From d1e53ec2239077da96d871900fbb4c6d2d274cc5 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:20:51 +0800 Subject: [PATCH 3/9] gnu: Add fcitx5-lua. * gnu/packages/fcitx5.scm(fcitx5-lua): New variable. --- gnu/packages/fcitx5.scm | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index c4ee0c6e3c..c48eafbad5 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -145,3 +145,47 @@ client.") (description "Fcitx 5 is a generic input method framework, the successor of Fcitx.") (license license:lgpl2.1+))) + +(define-public fcitx5-lua + (package + (name "fcitx5-lua") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" + version ".tar.xz")) + (sha256 + (base32 "0v4kjx5bargmzfm3v2kys1kzfbpkbd8inzw23y9hslc8h5zazj33")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + '("src/addonloader/CMakeLists.txt" + "src/imeapi/CMakeLists.txt")) + #t))))) + (inputs + `(("fcitx5" ,fcitx5) + ("lua" ,lua) + ("gettext" ,gettext-minimal) + ("libpthread-stubs" ,libpthread-stubs))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-lua") + (synopsis "Lua support for Fcitx 5") + (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0004-gnu-Add-libime.patch >From 69b4cfc316e81e9c0ebdb307af033bf2e0a5faca Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:21:38 +0800 Subject: [PATCH 4/9] gnu: Add libime. * gnu/packages/fcitx5.scm(libime): New variable. --- gnu/packages/fcitx5.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index c48eafbad5..9f031a1289 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -189,3 +189,28 @@ of Fcitx.") (synopsis "Lua support for Fcitx 5") (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua.") (license license:lgpl2.1+))) + +(define-public libime + (package + (name "libime") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" + version "_dict.tar.xz")) + (sha256 + (base32 "0kymzn0srdmpbn43rg4zpz09baz3bcw18v648jsqsb2j488s2paq")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("boost" ,boost))) + (native-inputs + `(("gcc" ,gcc-9) ;for #include and ld support + ("extra-cmake-modules" ,extra-cmake-modules) + ("python" ,python))) ;needed to run test + (home-page "https://github.com/fcitx/libime") + (synopsis "Library supports generic input method implmentation") + (description "Libime is a library, being used to implment various input +methods for Fcitx 5.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0005-gnu-Add-fcitx5-qt.patch >From 8af5ff96d20a5fd2b3faa43b05935f9755880959 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:24:20 +0800 Subject: [PATCH 5/9] gnu: Add fcitx5-qt. * gnu/packages/fcitx5.scm(fcitx5-qt): New variable. --- gnu/packages/fcitx5.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 9f031a1289..4e3ba010ef 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -214,3 +214,39 @@ of Fcitx.") (description "Libime is a library, being used to implment various input methods for Fcitx 5.") (license license:lgpl2.1+))) + +(define-public fcitx5-qt + (package + (name "fcitx5-qt") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-qt/fcitx5-qt-" + version ".tar.xz")) + (sha256 + (base32 "0s0spjr8m7dw2f18xxqg6lwn3y575g411j9j9w8xv1cqsm9fm49f")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=" + %output "/lib/qt5/plugins") + "-DENABLE_QT4=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("qtbase" ,qtbase) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-qt") + (synopsis "Qt library and IM module for Fcitx 5") + (description "Fcitx5-qt provides Qt library for development and IM module +for Qt5 based application.") + (license (list license:lgpl2.1+ + ;; Files under qt4/ which include Fcitx5Qt4DBusAddons Library + ;; and input context plugin and files under qt5/dbusaddons + ;; and qt5/platforminputcontext + license:bsd-3)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0006-gnu-Add-fcitx5-gtk.patch >From 9a4111139bc059fbacc2f6aa8a3d5922d4f837fd Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:19 +0800 Subject: [PATCH 6/9] gnu: Add fcitx5-gtk. * gnu/packages/fcitx5.scm(fcitx5-gtk): New variable. --- gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 4e3ba010ef..9673ff2c47 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -215,6 +215,56 @@ of Fcitx.") methods for Fcitx 5.") (license license:lgpl2.1+))) +(define-public fcitx5-gtk + (package + (name "fcitx5-gtk") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-gtk/fcitx5-gtk-" + version ".tar.xz")) + (sha256 + (base32 "0k09f3ca4jm4y33xr642wrbf2zfjqr7gjx1i28z0vwb1rmjn026y")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;No test + #:configure-flags + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=" + %output "/share/gir-1.0") + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=" + %output "/lib/girepository-1.0")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gtk3 (assoc-ref outputs "gtk3"))) + + (substitute* "gtk3/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk3 "/lib"))))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxkbcommon" ,libxkbcommon) + ("gobject-introspection" ,gobject-introspection) + ("gtk2" ,gtk+-2) + ("gtk3" ,gtk+) + ("glib" ,glib) + ("libx11" ,libx11) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("glib" ,glib "bin"))) ;for glib-genmarshal + (outputs '("out" "gtk3")) + (home-page "https://github.com/fcitx/fcitx5-gtk") + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") + (description "Fcitx5-qt provides a Glib based D-Bus client for development +and IM module for GTK+2/GTK+3 application.") + (license license:lgpl2.1+))) + (define-public fcitx5-qt (package (name "fcitx5-qt") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0007-gnu-Add-fcitx5-chinese-addons.patch >From f0905307b179d478475a0433cbebf1532ecf6a95 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:37 +0800 Subject: [PATCH 7/9] gnu: Add fcitx5-chinese-addons. * gnu/packages/fcitx5.scm(fcitx5-chinese-addons): New variable. --- gnu/packages/fcitx5.scm | 79 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 9673ff2c47..076a96992d 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -300,3 +300,82 @@ for Qt5 based application.") ;; and input context plugin and files under qt5/dbusaddons ;; and qt5/platforminputcontext license:bsd-3)))) + +(define-public fcitx5-chinese-addons + (package + (name "fcitx5-chinese-addons") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-chinese-addons/fcitx5-chinese-addons-" + version "_dict.tar.xz")) + (sha256 + (base32 "015yx7wwhyjnhbrx2akc90nnzvmyhv1jv2n0mv7x7hsj05m62q8l")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib") + ;; "-DENABLE_GUI=Off" + ) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + (find-files "." "CMakeLists\\.txt$")) + #t)) + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package closure + ;; by 800M on x86_64, so place it under another output. + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append (assoc-ref outputs "gui") "/lib")))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-lua" ,fcitx5-lua) + ("boost" ,boost) + ("libime",libime) + ("curl" ,curl) + ("gettext" ,gettext-minimal) + ("fmt" ,fmt) + ("libpthread-stubs" ,libpthread-stubs) + ("opencc" ,opencc) + ("qtbase" ,qtbase) + ("fcitx5-qt" ,fcitx5-qt) + ("qtwebkit" ,qtwebkit))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (outputs '("out" "gui")) + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") + (synopsis "Chinese related addons for Fcitx 5") + (description "Fcitx5-chinese-addons provides Chinese related addons, +including input methods previous bundled inside Fcitx 4: + +@itemize +@item Bingchan +@item Cangjie +@item Erbi +@item Pinyin +@item Shuangpin +@item Wanfeng +@item Wubi +@item Wubi Pinyin +@item Ziranma +@end itemize\n") + (license (list license:lgpl2.1+ + license:gpl2+ + ;; im/pinyin/emoji.txt + license:unicode)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0008-gnu-Add-fcitx5-configtool.patch >From 95c20d878565cb3ff7870187e1806743d7e526f3 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:55 +0800 Subject: [PATCH 8/9] gnu: Add fcitx5-configtool. * gnu/packages/fcitx5.scm(fcitx5-configtool): New variable. --- gnu/packages/fcitx5.scm | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 076a96992d..bc8fa5d7dc 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -379,3 +379,45 @@ including input methods previous bundled inside Fcitx 4: license:gpl2+ ;; im/pinyin/emoji.txt license:unicode)))) + +(define-public fcitx5-configtool + (let ((revision "0") + (commit "9c01bfc7477c203443ed073397670df52d1a6fc0")) + (package + (name "fcitx5-configtool") + (version (git-version "5.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fcitx/fcitx5-configtool") + (commit commit))) + (sha256 + (base32 "03hfbr97953alxax3db1x16h17cgqx30xvqs070iz8rj232iiaia")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + ;; KDE is currently not working on Guix, KCM supports doesn't make sense. + '("-DENABLE_KCM=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-qt" ,fcitx5-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libx11" ,libx11) + ("xkeyboard-config" ,xkeyboard-config) + ("libxkbfile" ,libxkbfile) + ("gettext" ,gettext-minimal) + ("iso-codes" ,iso-codes))) + (native-inputs + `(("gcc" ,gcc-9) + ("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/fcitx5-configtool") + (synopsis "Graphical configuration tool for Fcitx 5") + (description "Fcitx5-configtool is a graphical configuration tool +written in Qt, design for managing different input methods running under +Fcitx 5.") + (license license:gpl2+)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0009-gnu-Add-fcitx5-material-color-theme.patch >From 32f4fef151807a0620fec7654094ed3945a02bcf Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:27:08 +0800 Subject: [PATCH 9/9] gnu: Add fcitx5-material-color-theme. * gnu/packages/fcitx5.scm(fcitx5-material-color-theme): New variable. --- gnu/packages/fcitx5.scm | 70 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index bc8fa5d7dc..80fb989408 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -421,3 +421,73 @@ including input methods previous bundled inside Fcitx 4: written in Qt, design for managing different input methods running under Fcitx 5.") (license license:gpl2+)))) + +(define-public fcitx5-material-color-theme + (package + (name "fcitx5-material-color-theme") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hosxy/Fcitx5-Material-Color") + (commit version))) + (sha256 + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + + (let* ((out (assoc-ref outputs "out")) + (assets-dir (string-append + out "/share/fcitx5-material-color-theme")) + (themes-prefix (string-append out "/share/fcitx5/themes"))) + + (define (install-theme-variant variant target) + (let ((dir (string-append themes-prefix "/" target)) + (png (string-append "panel-" variant ".png")) + (conf (string-append "theme-" variant ".conf"))) + (format #t "install: Installing color variant \"~a\" to ~a~%" + variant dir) + (substitute* conf + (("^Name=.*") + (string-append "Name=" target "\n"))) + (mkdir-p dir) + (install-file png dir) + (copy-file conf (string-append dir "/theme.conf")) + (symlink (string-append assets-dir "/arrow.png") + (string-append dir "/arrow.png")))) + + (mkdir-p assets-dir) + (install-file "arrow.png" assets-dir) + (for-each + (lambda (x) + (install-theme-variant + x (string-append "Material-Color-" (string-capitalize x)))) + '("black" "blue" "brown" "indigo" + "orange" "pink" "red" "teal")) + + (install-theme-variant + "deepPurple" "Material-Color-DeepPurple") + #t)))))) + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") + (synopsis "Fcitx 5 theme use Material Design") + (description "Fcitx5-material-color-theme contains Material Design theme +with following color variants: + +@itemize +@item Black +@item Blue +@item Brown +@item Indigo +@item Orange +@item Pink +@item Red +@item teal +@item DeepPurple +@end itemize\n") + (license license:asl2.0))) -- 2.29.2 --=-=-= Content-Type: text/plain -- Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-=-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Peng Mei Yu Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 03 Dec 2020 04:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Zhu Zihao Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160696861230173 (code B ref 44920); Thu, 03 Dec 2020 04:11:02 +0000 Received: (at 44920) by debbugs.gnu.org; 3 Dec 2020 04:10:12 +0000 Received: from localhost ([127.0.0.1]:37951 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kkfwW-0007qX-Fk for submit@debbugs.gnu.org; Wed, 02 Dec 2020 23:10:12 -0500 Received: from mx1.riseup.net ([198.252.153.129]:54930) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kkfwR-0007qI-AN for 44920@debbugs.gnu.org; Wed, 02 Dec 2020 23:10:07 -0500 Received: from bell.riseup.net (bell-pn.riseup.net [10.0.1.178]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client CN "*.riseup.net", Issuer "Sectigo RSA Domain Validation Secure Server CA" (not verified)) by mx1.riseup.net (Postfix) with ESMTPS id 4Cmj6J2q6DzFgT3; Wed, 2 Dec 2020 20:10:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1606968600; bh=oMlmwPxiGOTjkUOiyULPVSfRzyE1/di48LYdSXatwLs=; h=References:From:To:Cc:Subject:In-reply-to:Date:From; b=PKbhVIjWxCS7WQOEnJYITywE2Jct8U/zMNDGOYoQxaSvIvK6rjbCyXauy26pvygAg DJ4Lul1moSN2GmTg51Ksp6GVzmfzGhoovKbR3QwYwh73rczfvEdvkRXCkM6HXnVJb6 fqJQ9I+rDgo8Nb0hCA2blWNSAMYGkB2mNL30JFro= X-Riseup-User-ID: EED224345B8C7163C5292BAF09F2F5999F41BD71A8A71B7063016288AD3A41C2 Received: from [127.0.0.1] (localhost [127.0.0.1]) by bell.riseup.net (Postfix) with ESMTPSA id 4Cmj6F3J81zJn7D; Wed, 2 Dec 2020 20:09:57 -0800 (PST) Received: from localhost (captain [local]) by captain (OpenSMTPD) with ESMTPA id 30aad583; Thu, 3 Dec 2020 04:09:51 +0000 (UTC) References: <86360uujbf.fsf@163.com> From: Peng Mei Yu In-reply-to: <86360uujbf.fsf@163.com> Date: Thu, 03 Dec 2020 12:09:51 +0800 Message-ID: <87zh2v5y40.fsf@riseup.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hi Zhu Zihao, Great work. This patch series provides a long waited alternative to ibus. I prefer to use ibus as my input method editor, but still thank you for this work. Please see comments bellow. Zhu Zihao writes: > This is a series of patches, add fcitx5 and its build dependecies. > a qt5 and gtk2/3 plugin, chinese inputmethod addon and a material theme > > From cbe128e488078b3af8f7d1bdb4bf9dc9f12a2f0b Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:16:50 +0800 > Subject: [PATCH 1/9] gnu: Add xcb-imdkit. > > * gnu/packages/fcitx5.scm: New file. > (xcb-imdkit): New variable. These packages should be put into gnu/packages/fcitx.scm. > --- > gnu/packages/fcitx5.scm | 84 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 84 insertions(+) > create mode 100644 gnu/packages/fcitx5.scm > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > new file mode 100644 > index 0000000000..171d545ed8 > --- /dev/null > +++ b/gnu/packages/fcitx5.scm > @@ -0,0 +1,84 @@ > +;;; GNU Guix --- Functional package management for GNU > +;;; Copyright =C2=A9 2020 Zhu Zihao > +;;; > +;;; This file is part of GNU Guix. > +;;; > +;;; GNU Guix is free software; you can redistribute it and/or modify it > +;;; under the terms of the GNU General Public License as published by > +;;; the Free Software Foundation; either version 3 of the License, or (at > +;;; your option) any later version. > +;;; > +;;; GNU Guix is distributed in the hope that it will be useful, but > +;;; WITHOUT ANY WARRANTY; without even the implied warranty of > +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +;;; GNU General Public License for more details. > +;;; > +;;; You should have received a copy of the GNU General Public License > +;;; along with GNU Guix. If not, see . > + > +(define-module (gnu packages fcitx5) > + #:use-module (guix packages) > + #:use-module (guix download) > + #:use-module (guix git-download) > + #:use-module (guix build-system cmake) > + #:use-module (guix build-system copy) > + #:use-module ((guix licenses) #:prefix license:) > + #:use-module (gnu packages) > + #:use-module (gnu packages boost) > + #:use-module (gnu packages curl) > + #:use-module (gnu packages datastructures) > + #:use-module (gnu packages enchant) > + #:use-module (gnu packages freedesktop) > + #:use-module (gnu packages gettext) > + #:use-module (gnu packages gcc) > + #:use-module (gnu packages glib) > + #:use-module (gnu packages gtk) > + #:use-module (gnu packages iso-codes) > + #:use-module (gnu packages kde-frameworks) > + #:use-module (gnu packages libevent) > + #:use-module (gnu packages linux) > + #:use-module (gnu packages lua) > + #:use-module (gnu packages pkg-config) > + #:use-module (gnu packages pretty-print) > + #:use-module (gnu packages python) > + #:use-module (gnu packages qt) > + #:use-module (gnu packages textutils) > + #:use-module (gnu packages unicode) > + #:use-module (gnu packages web) > + #:use-module (gnu packages xdisorg) > + #:use-module (gnu packages xml) > + #:use-module (gnu packages xorg)) > + > +(define-public xcb-imdkit > + (package > + (name "xcb-imdkit") > + (version "1.0.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5/xcb-imd= kit/xcb-imdkit-" > + version ".tar.xz")) > + (sha256 > + (base32 "0qgbklk5a809asyaxi6v9iasxc19g16fc5rphnamhwrliczlycas")) > + (modules '((guix build utils))) > + (snippet > + '(begin > + ;; Remove bundled uthash. > + (delete-file-recursively "uthash") > + #t)))) > + (build-system cmake-build-system) > + (inputs > + `(("uthash" ,uthash) > + ("libxcb" ,libxcb) > + ("xcb-util" ,xcb-util) > + ("xcb-util-keysyms" ,xcb-util-keysyms))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules) > + ("pkg-config" ,pkg-config))) > + (home-page "https://github.com/fcitx/xcb-imdkit") > + (synopsis "Input method development support for XCB.") > + (description "Xcb-imdkit is an implementation of xim protocol in XCB, > +comparing with the implementation of IMDkit with Xlib, and xim inside Xl= ib, > +it has less memory foot print, better performance, and safer on malformed > +client.") > + (license license:lgpl2.1))) > -- > 2.29.2 > > From 3870f53451deea014e9d28ce7df418bc9793d3e1 Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:19:26 +0800 > Subject: [PATCH 2/9] gnu: Add fcitx5. > > * gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch: New file. > * gnu/local.mk (dist_patch_DATA): Reference new patch. > * gnu/packages/fcitx5.scm(fcitx5): New variable. > --- > gnu/local.mk | 1 + > gnu/packages/fcitx5.scm | 63 ++++++++++ > .../patches/fcitx5-allow-set-cldr-dir.patch | 114 ++++++++++++++++++ > 3 files changed, 178 insertions(+) > create mode 100644 gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch > > diff --git a/gnu/local.mk b/gnu/local.mk > index 5277403196..00ba3ee818 100644 > --- a/gnu/local.mk > +++ b/gnu/local.mk > @@ -977,6 +977,7 @@ dist_patch_DATA =3D \ > %D%/packages/patches/fasthenry-spSolve.patch \ > %D%/packages/patches/fasthenry-spFactor.patch \ > %D%/packages/patches/fbreader-curl-7.62.patch \ > + %D%/packages/patches/fcitx5-allow-set-cldr-dir.patch \ > %D%/packages/patches/fifengine-swig-compat.patch \ > %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ > %D%/packages/patches/fifo-map-remove-catch.hpp.patch \ > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index 171d545ed8..c4ee0c6e3c 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -82,3 +82,66 @@ comparing with the implementation of IMDkit with Xlib,= and xim inside Xlib, > it has less memory foot print, better performance, and safer on malformed > client.") > (license license:lgpl2.1))) > + > +(define-public fcitx5 > + (package > + (name "fcitx5") > + (version "5.0.1") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5/= fcitx5-" > + version "_dict.tar.xz")) > + (sha256 > + (base32 "0ai7qkxvkdl5qmrvkjp53w1809hhla9csf04qsnf8k33pqbzdgw8")) > + ;; This backport patch allow us to use CLDR data in unicode-cldr-= common. ^^^^^^^^ ^^^^^ backported allows > + ;; it should be removed after upstream make a newer release. ^^ ^^^^ It > + (patches (search-patches "fcitx5-allow-set-cldr-dir.patch")))) > + (build-system cmake-build-system) > + (arguments > + `(#:configure-flags > + (list (string-append "-DCLDR_DIR=3D" > + (assoc-ref %build-inputs "unicode-cldr-commo= n") > + "/share/unicode/cldr")))) > + (inputs > + `(("cairo" ,cairo) > + ("cairo-xcb" ,cairo-xcb) > + ("dbus" ,dbus) > + ("enchant" ,enchant) > + ("expat" ,expat) > + ("fmt" ,fmt) > + ("gdk-pixbuf" ,gdk-pixbuf) > + ("gettext" ,gettext-minimal) > + ("glib" ,glib) > + ("iso-codes" ,iso-codes) > + ("json-c" ,json-c) > + ("libevent" ,libevent) > + ("libpthread-stubs" ,libpthread-stubs) > + ("libuuid" ,util-linux "lib") > + ("libx11" ,libx11) > + ("libxcb" ,libxcb) > + ("libxfixes" ,libxfixes) > + ("libxinerama" ,libxinerama) > + ("libxkbcommon" ,libxkbcommon) > + ("libxkbfile" ,libxkbfile) > + ("pango" ,pango) > + ("unicode-cldr-common" ,unicode-cldr-common) > + ("wayland" ,wayland) > + ("wayland-protocols" ,wayland-protocols) > + ("xcb-imdkit" ,xcb-imdkit) > + ("xcb-util" ,xcb-util) > + ("xcb-util-keysyms" ,xcb-util-keysyms) > + ("xcb-util-wm" ,xcb-util-wm) > + ("xkeyboard-config" ,xkeyboard-config))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules) > + ("pkg-config" ,pkg-config))) > + (native-search-paths > + (list (search-path-specification > + (variable "FCITX_ADDON_DIRS") > + (files '("lib/fcitx5"))))) > + (home-page "https://github.com/fcitx/fcitx5") > + (synopsis "Next generation of Fcitx") "Input method framework" is better. > + (description "Fcitx 5 is a generic input method framework, the succe= ssor > +of Fcitx.") I don't think we should emphasize that Fcitx 5 is the successor to Fcitx. It's obvious. The old Fcitx 4 has already been deprecated by the author. Do you think there is a good reason to keep the current Fcitx package while adding a Fcitx 5 package? Why not replace the old one? > + (license license:lgpl2.1+))) > diff --git a/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch b/gnu/p= ackages/patches/fcitx5-allow-set-cldr-dir.patch > new file mode 100644 > index 0000000000..a0c3b9b60f > --- /dev/null > +++ b/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch > @@ -0,0 +1,114 @@ > +https://github.com/fcitx/fcitx5/commit/a2b09de92a73dfa4ae43d3ac8a4ffa1aa= 791f6c5.patch > +https://github.com/fcitx/fcitx5/issues/154 > + > +From a2b09de92a73dfa4ae43d3ac8a4ffa1aa791f6c5 Mon Sep 17 00:00:00 2001 > +From: Weng Xuetian > +Date: Sun, 22 Nov 2020 23:42:44 -0800 > +Subject: [PATCH] Allow set CLDR dir > + > +Fix #154 > +--- > + CMakeLists.txt | 22 +++++++++++++++++++--- > + config.h.in | 2 +- > + src/modules/emoji/CMakeLists.txt | 2 +- > + src/modules/emoji/emoji.cpp | 8 +++----- > + 4 files changed, 24 insertions(+), 10 deletions(-) > + > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index e6763dd..fc84b4b 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt > +@@ -29,6 +29,19 @@ option(ENABLE_WAYLAND "Enable wayland support" On) > + option(ENABLE_DOC "Build doxygen" Off) > + option(USE_SYSTEMD "Use systemd for event loop and dbus, will fallback = to libevent/libdbus if not found." On) > + option(ENABLE_XDGAUTOSTART "Enable xdg autostart desktop file installat= ion" On) > ++set(CLDR_DIR "" CACHE STRING "Unicode CLDR (Common Locale Data Reposito= ry) directory") > ++ > ++if (CLDR_DIR STREQUAL "") > ++ if (IS_DIRECTORY "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") > ++ set(CLDR_DIR "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") > ++ else(IS_DIRECTORY "/usr/share/unicode/cldr") > ++ set(CLDR_DIR "/usr/share/unicode/cldr") > ++ endif() > ++endif() > ++ > ++if (NOT IS_DIRECTORY "${CLDR_DIR}") > ++ message(FATAL_ERROR "Could not find Unicode CLDR directory") > ++endif() > + > + ####################################################################### > + # Find packages > +@@ -73,7 +86,6 @@ pkg_check_modules(CairoXCB IMPORTED_TARGET cairo-xcb) > + pkg_check_modules(Pango IMPORTED_TARGET pango pangocairo) > + pkg_check_modules(GdkPixbuf IMPORTED_TARGET gdk-pixbuf-2.0) > + pkg_check_modules(GioUnix IMPORTED_TARGET gio-unix-2.0) > +-pkg_check_modules(CldrEmojiAnnotation REQUIRED IMPORTED_TARGET cldr-emo= ji-annotation) > + > + if (ENABLE_WAYLAND) > + find_package(Wayland REQUIRED COMPONENTS Client Egl) > +@@ -106,10 +118,14 @@ else() > + set(WAYLAND_FOUND FALSE) > + endif() > + > ++if (NOT EXISTS "${CLDR_DIR}") > ++ message(FATAL_ERROR "Could not find Unicode CLDR directory: ${CLDR_DI= R}") > ++endif() > ++ > + set(DEFAULT_XKB_RULES_FILES "${XKEYBOARDCONFIG_XKBBASE}/rules/${DEFAULT= _XKB_RULES}.xml") > + if (NOT EXISTS "${DEFAULT_XKB_RULES_FILES}") > +-message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT_X= KB_RULES_FILES}") > +-endif () > ++ message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT= _XKB_RULES_FILES}") > ++endif() > + > + # directory needed by bsd > + if(NOT CMAKE_INSTALL_LIBDATADIR) > +diff --git a/config.h.in b/config.h.in > +index 09bf002..4291152 100644 > +--- a/config.h.in > ++++ b/config.h.in > +@@ -33,7 +33,7 @@ > + #cmakedefine HAS_DLMOPEN > + #define XKEYBOARDCONFIG_DATADIR "@XKEYBOARDCONFIG_DATADIR@" > + #define DBUS_SYSTEM_BUS_DEFAULT_ADDRESS "@DBUS_SYSTEM_BUS_DEFAULT_ADDRE= SS@" > +-#define CLDR_EMOJI_ANNOTATION_PREFIX "@CldrEmojiAnnotation_PREFIX@" > ++#define CLDR_DIR "@CLDR_DIR@" > + > + #ifndef _GNU_SOURCE > + #define _GNU_SOURCE > +diff --git a/src/modules/emoji/CMakeLists.txt b/src/modules/emoji/CMakeL= ists.txt > +index 9fa84bb..57ae48b 100644 > +--- a/src/modules/emoji/CMakeLists.txt > ++++ b/src/modules/emoji/CMakeLists.txt > +@@ -1,4 +1,4 @@ > +-if (NOT IS_DIRECTORY ${CldrEmojiAnnotation_PREFIX}/share/unicode/cldr/c= ommon/annotations) > ++if ("${CLDR_DIR}" STREQUAL "" OR NOT IS_DIRECTORY "${CLDR_DIR}/common/a= nnotations") > + return() > + endif() > + > +diff --git a/src/modules/emoji/emoji.cpp b/src/modules/emoji/emoji.cpp > +index 5606a37..805aef7 100644 > +--- a/src/modules/emoji/emoji.cpp > ++++ b/src/modules/emoji/emoji.cpp > +@@ -126,7 +126,7 @@ bool noSpace(const std::string &str) { > + > + const EmojiMap *Emoji::loadEmoji(const std::string &language, > + bool fallbackToEn) { > +- // This is to match the file in cldr-emoji-annotation. > ++ // This is to match the file in CLDR. > + static const std::unordered_map languageM= ap =3D { > + {"zh_TW", "zh_Hant"}, {"zh_CN", "zh"}, {"zh_HK", "zh_Hant_HK"}}; > + > +@@ -172,10 +172,8 @@ const EmojiMap *Emoji::loadEmoji(const std::string = &language, > + return utf8::lengthValidated(str) > 2; > + }}}; > + const auto *filter =3D findValue(filterMap, lang); > +- const auto file =3D > +- stringutils::joinPath(CLDR_EMOJI_ANNOTATION_PREFIX, > +- "/share/unicode/cldr/common/annotatio= ns", > +- stringutils::concat(lang, ".xml")); > ++ const auto file =3D stringutils::joinPath( > ++ CLDR_DIR, "/common/annotations", stringutils::concat(lang, = ".xml")); > + EmojiParser parser(filter ? *filter : nullptr); > + if (parser.parse(file)) { > + emojiMap =3D &(langToEmojiMap_[lang] =3D std::move(parser.e= mojiMap_)); > -- > 2.29.2 > > From d1e53ec2239077da96d871900fbb4c6d2d274cc5 Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:20:51 +0800 > Subject: [PATCH 3/9] gnu: Add fcitx5-lua. > > * gnu/packages/fcitx5.scm(fcitx5-lua): New variable. > --- > gnu/packages/fcitx5.scm | 44 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 44 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index c4ee0c6e3c..c48eafbad5 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -145,3 +145,47 @@ client.") > (description "Fcitx 5 is a generic input method framework, the succe= ssor > of Fcitx.") > (license license:lgpl2.1+))) > + > +(define-public fcitx5-lua > + (package > + (name "fcitx5-lua") > + (version "5.0.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5-= lua/fcitx5-lua-" > + version ".tar.xz")) Please follow 80-column rule. > + (sha256 > + (base32 "0v4kjx5bargmzfm3v2kys1kzfbpkbd8inzw23y9hslc8h5zazj33"))= )) > + (build-system cmake-build-system) > + (arguments > + `(#:configure-flags > + (list > + (string-append "-DFEM_INCLUDE_INSTALL_DIR=3D" %output "/include") > + (string-append "-DFEM_LIB_INSTALL_DIR=3D" %output "/lib")) > + #:phases > + (modify-phases %standard-phases > + (add-before 'configure 'patch-install-prefix > + (lambda* (#:key outputs #:allow-other-keys) > + (for-each > + (lambda (x) > + (format #t "patch-install-prefix: Fixing install prefix = in ~a~%" > + x) > + (substitute* x > + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") > + (string-append (assoc-ref outputs "out") > + "/share/fcitx5")))) > + '("src/addonloader/CMakeLists.txt" > + "src/imeapi/CMakeLists.txt")) > + #t))))) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("lua" ,lua) > + ("gettext" ,gettext-minimal) > + ("libpthread-stubs" ,libpthread-stubs))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules))) > + (home-page "https://github.com/fcitx/fcitx5-lua") > + (synopsis "Lua support for Fcitx 5") "Lua support for Fcitx" > + (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua= .") "Fcitx5-lua allows writing Fcitx extentions in Lua." I think we can drop all the emphases on "5". > + (license license:lgpl2.1+))) > -- > 2.29.2 > > From 69b4cfc316e81e9c0ebdb307af033bf2e0a5faca Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:21:38 +0800 > Subject: [PATCH 4/9] gnu: Add libime. > > * gnu/packages/fcitx5.scm(libime): New variable. > --- > gnu/packages/fcitx5.scm | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index c48eafbad5..9f031a1289 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -189,3 +189,28 @@ of Fcitx.") > (synopsis "Lua support for Fcitx 5") > (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua= .") > (license license:lgpl2.1+))) > + > +(define-public libime > + (package > + (name "libime") > + (version "1.0.1") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/= libime-" > + version "_dict.tar.xz")) > + (sha256 > + (base32 "0kymzn0srdmpbn43rg4zpz09baz3bcw18v648jsqsb2j488s2paq"))= )) > + (build-system cmake-build-system) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("boost" ,boost))) > + (native-inputs > + `(("gcc" ,gcc-9) ;for #include and ld= support > + ("extra-cmake-modules" ,extra-cmake-modules) > + ("python" ,python))) ;needed to run test > + (home-page "https://github.com/fcitx/libime") > + (synopsis "Library supports generic input method implmentation") "Library for implementing generic input method editors" > + (description "Libime is a library, being used to implment various in= put > +methods for Fcitx 5.") "Libime is a library for implementing generic input method editors." > + (license license:lgpl2.1+))) > -- > 2.29.2 > > From 8af5ff96d20a5fd2b3faa43b05935f9755880959 Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:24:20 +0800 > Subject: [PATCH 5/9] gnu: Add fcitx5-qt. > > * gnu/packages/fcitx5.scm(fcitx5-qt): New variable. > --- > gnu/packages/fcitx5.scm | 36 ++++++++++++++++++++++++++++++++++++ > 1 file changed, 36 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index 9f031a1289..4e3ba010ef 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -214,3 +214,39 @@ of Fcitx.") > (description "Libime is a library, being used to implment various in= put > methods for Fcitx 5.") > (license license:lgpl2.1+))) > + > +(define-public fcitx5-qt > + (package > + (name "fcitx5-qt") > + (version "5.0.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5" > + "/fcitx5-qt/fcitx5-qt-" > + version ".tar.xz")) > + (sha256 > + (base32 "0s0spjr8m7dw2f18xxqg6lwn3y575g411j9j9w8xv1cqsm9fm49f"))= )) > + (build-system cmake-build-system) > + (arguments > + `(#:configure-flags > + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=3D" > + %output "/lib/qt5/plugins") > + "-DENABLE_QT4=3DOff"))) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("libxcb" ,libxcb) > + ("libxkbcommon" ,libxkbcommon) > + ("qtbase" ,qtbase) > + ("gettext" ,gettext-minimal))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules))) > + (home-page "https://github.com/fcitx/fcitx5-qt") > + (synopsis "Qt library and IM module for Fcitx 5") > + (description "Fcitx5-qt provides Qt library for development and IM m= odule > +for Qt5 based application.") "Fcitx5-qt provides a Qt library and an IM module for Qt based applications= ." According to CMakeLists.txt: option(ENABLE_QT4 "Enable Qt 4" On) option(ENABLE_QT5 "Enable Qt 5" On) option(ENABLE_QT6 "Enable Qt 6" Off) The support is not limited to qt5. > + (license (list license:lgpl2.1+ > + ;; Files under qt4/ which include Fcitx5Qt4DBusAddons= Library > + ;; and input context plugin and files under qt5/dbusa= ddons > + ;; and qt5/platforminputcontext This is more clear: "Files under qt4, qt5/dbusaddons, and qt5/platforminputcontext." > + license:bsd-3)))) > -- > 2.29.2 > > From 9a4111139bc059fbacc2f6aa8a3d5922d4f837fd Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:25:19 +0800 > Subject: [PATCH 6/9] gnu: Add fcitx5-gtk. > > * gnu/packages/fcitx5.scm(fcitx5-gtk): New variable. > --- > gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 50 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index 4e3ba010ef..9673ff2c47 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -215,6 +215,56 @@ of Fcitx.") > methods for Fcitx 5.") > (license license:lgpl2.1+))) > > +(define-public fcitx5-gtk > + (package > + (name "fcitx5-gtk") > + (version "5.0.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5" > + "/fcitx5-gtk/fcitx5-gtk-" > + version ".tar.xz")) > + (sha256 > + (base32 "0k09f3ca4jm4y33xr642wrbf2zfjqr7gjx1i28z0vwb1rmjn026y"))= )) > + (build-system cmake-build-system) > + (arguments > + `(#:tests? #f ;No test > + #:configure-flags > + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=3D" > + %output "/share/gir-1.0") > + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=3D" > + %output "/lib/girepository-1.0")) > + #:phases > + (modify-phases %standard-phases > + (add-before 'configure 'patch-install-prefix > + (lambda* (#:key outputs #:allow-other-keys) > + (let ((out (assoc-ref outputs "out")) > + (gtk3 (assoc-ref outputs "gtk3"))) > + > + (substitute* "gtk3/CMakeLists.txt" > + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") > + (string-append gtk3 "/lib"))))))))) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("libxkbcommon" ,libxkbcommon) > + ("gobject-introspection" ,gobject-introspection) > + ("gtk2" ,gtk+-2) > + ("gtk3" ,gtk+) > + ("glib" ,glib) > + ("libx11" ,libx11) > + ("gettext" ,gettext-minimal))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules) > + ("pkg-config" ,pkg-config) > + ("glib" ,glib "bin"))) ;for glib-genmarshal > + (outputs '("out" "gtk3")) > + (home-page "https://github.com/fcitx/fcitx5-gtk") > + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") "Glib based D-Bus client library and GTK IM module for Fcitx" > + (description "Fcitx5-qt provides a Glib based D-Bus client for devel= opment > +and IM module for GTK+2/GTK+3 application.") "Fcitx5-qt provides a Glib based D-Bus client library and an IM module for GTK+2/GTK+3 applications." > + (license license:lgpl2.1+))) > + > (define-public fcitx5-qt > (package > (name "fcitx5-qt") > -- > 2.29.2 > > From f0905307b179d478475a0433cbebf1532ecf6a95 Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:25:37 +0800 > Subject: [PATCH 7/9] gnu: Add fcitx5-chinese-addons. > > * gnu/packages/fcitx5.scm(fcitx5-chinese-addons): New variable. > --- > gnu/packages/fcitx5.scm | 79 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 79 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index 9673ff2c47..076a96992d 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -300,3 +300,82 @@ for Qt5 based application.") > ;; and input context plugin and files under qt5/dbusa= ddons > ;; and qt5/platforminputcontext > license:bsd-3)))) > + > +(define-public fcitx5-chinese-addons > + (package > + (name "fcitx5-chinese-addons") > + (version "5.0.1") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://download.fcitx-im.org/fcitx5" > + "/fcitx5-chinese-addons/fcitx5-chinese-addons= -" > + version "_dict.tar.xz")) > + (sha256 > + (base32 "015yx7wwhyjnhbrx2akc90nnzvmyhv1jv2n0mv7x7hsj05m62q8l"))= )) > + (build-system cmake-build-system) > + (arguments > + `(#:configure-flags > + (list > + (string-append "-DFEM_INCLUDE_INSTALL_DIR=3D" %output "/include") > + (string-append "-DFEM_LIB_INSTALL_DIR=3D" %output "/lib") > + ;; "-DENABLE_GUI=3DOff" Remove this redundant line. > + ) > + #:phases > + (modify-phases %standard-phases > + (add-before 'configure 'patch-install-prefix > + (lambda* (#:key outputs #:allow-other-keys) > + (for-each > + (lambda (x) > + (format #t "patch-install-prefix: Fixing install prefix = in ~a~%" > + x) > + (substitute* x > + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") > + (string-append (assoc-ref outputs "out") > + "/share/fcitx5")))) > + (find-files "." "CMakeLists\\.txt$")) > + #t)) > + (add-before 'configure 'split-outputs > + ;; Build with GUI supports requires Qt and increase package c= losure > + ;; by 800M on x86_64, so place it under another output. > + (lambda* (#:key outputs #:allow-other-keys) > + (substitute* "gui/pinyindictmanager/CMakeLists.txt" > + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) > + (string-append (assoc-ref outputs "gui") "/lib")))))))) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("fcitx5-lua" ,fcitx5-lua) > + ("boost" ,boost) > + ("libime",libime) > + ("curl" ,curl) > + ("gettext" ,gettext-minimal) > + ("fmt" ,fmt) > + ("libpthread-stubs" ,libpthread-stubs) > + ("opencc" ,opencc) > + ("qtbase" ,qtbase) > + ("fcitx5-qt" ,fcitx5-qt) > + ("qtwebkit" ,qtwebkit))) > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules) > + ("pkg-config" ,pkg-config))) > + (outputs '("out" "gui")) > + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") > + (synopsis "Chinese related addons for Fcitx 5") > + (description "Fcitx5-chinese-addons provides Chinese related addons, > +including input methods previous bundled inside Fcitx 4: I think the refer to Fcitx 4 is unnecessary. > + > +@itemize > +@item Bingchan > +@item Cangjie > +@item Erbi > +@item Pinyin > +@item Shuangpin > +@item Wanfeng > +@item Wubi > +@item Wubi Pinyin > +@item Ziranma > +@end itemize\n") > + (license (list license:lgpl2.1+ > + license:gpl2+ > + ;; im/pinyin/emoji.txt > + license:unicode)))) > -- > 2.29.2 > > From 95c20d878565cb3ff7870187e1806743d7e526f3 Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:25:55 +0800 > Subject: [PATCH 8/9] gnu: Add fcitx5-configtool. > > * gnu/packages/fcitx5.scm(fcitx5-configtool): New variable. > --- > gnu/packages/fcitx5.scm | 42 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 42 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index 076a96992d..bc8fa5d7dc 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -379,3 +379,45 @@ including input methods previous bundled inside Fcit= x 4: > license:gpl2+ > ;; im/pinyin/emoji.txt > license:unicode)))) > + > +(define-public fcitx5-configtool > + (let ((revision "0") > + (commit "9c01bfc7477c203443ed073397670df52d1a6fc0")) > + (package > + (name "fcitx5-configtool") > + (version (git-version "5.0.0" revision commit)) > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/fcitx/fcitx5-configtool") > + (commit commit))) > + (sha256 > + (base32 "03hfbr97953alxax3db1x16h17cgqx30xvqs070iz8rj232iiaia"= )))) > + (build-system cmake-build-system) > + (arguments > + `(#:configure-flags > + ;; KDE is currently not working on Guix, KCM supports doesn't m= ake sense. > + '("-DENABLE_KCM=3DOff"))) > + (inputs > + `(("fcitx5" ,fcitx5) > + ("fcitx5-qt" ,fcitx5-qt) > + ("qtbase" ,qtbase) > + ("qtx11extras" ,qtx11extras) > + ("kitemviews" ,kitemviews) > + ("kwidgetsaddons" ,kwidgetsaddons) > + ("libx11" ,libx11) > + ("xkeyboard-config" ,xkeyboard-config) > + ("libxkbfile" ,libxkbfile) > + ("gettext" ,gettext-minimal) > + ("iso-codes" ,iso-codes))) > + (native-inputs > + `(("gcc" ,gcc-9) > + ("extra-cmake-modules" ,extra-cmake-modules) > + ("pkg-config" ,pkg-config))) > + (home-page "https://github.com/fcitx/fcitx5-configtool") > + (synopsis "Graphical configuration tool for Fcitx 5") > + (description "Fcitx5-configtool is a graphical configuration tool > +written in Qt, design for managing different input methods running under > +Fcitx 5.") "Fcitx5-configtool is a graphical configuration tool for managing different input methods in Fcitx." A user does not care about what programming language it's written in. > + (license license:gpl2+)))) > -- > 2.29.2 > > From 32f4fef151807a0620fec7654094ed3945a02bcf Mon Sep 17 00:00:00 2001 > From: Zhu Zihao > Date: Sat, 28 Nov 2020 13:27:08 +0800 > Subject: [PATCH 9/9] gnu: Add fcitx5-material-color-theme. > > * gnu/packages/fcitx5.scm(fcitx5-material-color-theme): New variable. > --- > gnu/packages/fcitx5.scm | 70 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 70 insertions(+) > > diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm > index bc8fa5d7dc..80fb989408 100644 > --- a/gnu/packages/fcitx5.scm > +++ b/gnu/packages/fcitx5.scm > @@ -421,3 +421,73 @@ including input methods previous bundled inside Fcit= x 4: > written in Qt, design for managing different input methods running under > Fcitx 5.") > (license license:gpl2+)))) > + > +(define-public fcitx5-material-color-theme > + (package > + (name "fcitx5-material-color-theme") > + (version "0.1") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/hosxy/Fcitx5-Material-Color") > + (commit version))) > + (sha256 > + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa"))= )) > + (build-system copy-build-system) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (replace 'install > + (lambda* (#:key outputs #:allow-other-keys) > + (use-modules (srfi srfi-26)) > + > + (let* ((out (assoc-ref outputs "out")) > + (assets-dir (string-append > + out "/share/fcitx5-material-color-theme= ")) > + (themes-prefix (string-append out "/share/fcitx5/the= mes"))) > + > + (define (install-theme-variant variant target) > + (let ((dir (string-append themes-prefix "/" target)) > + (png (string-append "panel-" variant ".png")) > + (conf (string-append "theme-" variant ".conf"))) > + (format #t "install: Installing color variant \"~a\" = to ~a~%" > + variant dir) > + (substitute* conf > + (("^Name=3D.*") > + (string-append "Name=3D" target "\n"))) > + (mkdir-p dir) > + (install-file png dir) > + (copy-file conf (string-append dir "/theme.conf")) > + (symlink (string-append assets-dir "/arrow.png") > + (string-append dir "/arrow.png")))) > + > + (mkdir-p assets-dir) > + (install-file "arrow.png" assets-dir) > + (for-each > + (lambda (x) > + (install-theme-variant > + x (string-append "Material-Color-" (string-capitalize= x)))) > + '("black" "blue" "brown" "indigo" > + "orange" "pink" "red" "teal")) > + > + (install-theme-variant > + "deepPurple" "Material-Color-DeepPurple") > + #t)))))) > + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") > + (synopsis "Fcitx 5 theme use Material Design") "Material Design theme for Fcitx" > + (description "Fcitx5-material-color-theme contains Material Design t= heme > +with following color variants: "Fcitx5-material-color-theme is a Material Design theme for Fcitx with the following color variants:" > + > +@itemize > +@item Black > +@item Blue > +@item Brown > +@item Indigo > +@item Orange > +@item Pink > +@item Red > +@item teal > +@item DeepPurple > +@end itemize\n") > + (license license:asl2.0))) > -- > 2.29.2 -- Peng Mei Yu From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Zhu Zihao Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 05 Dec 2020 04:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Peng Mei Yu Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160714138725207 (code B ref 44920); Sat, 05 Dec 2020 04:10:02 +0000 Received: (at 44920) by debbugs.gnu.org; 5 Dec 2020 04:09:47 +0000 Received: from localhost ([127.0.0.1]:46352 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klOtG-0006YU-QB for submit@debbugs.gnu.org; Fri, 04 Dec 2020 23:09:47 -0500 Received: from mail-m973.mail.163.com ([123.126.97.3]:40810) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klOtC-0006YF-Rn for 44920@debbugs.gnu.org; Fri, 04 Dec 2020 23:09:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-ID:MIME-Version; bh=Zi18D OTkqBN7tUuY9s82j8xkwr9QHJXWm+My/LjuGy0=; b=KnNuukbK23jwjmxm1L5jy gQnCpbhJ/i2B6VGxVjijY9bnJ/JAlJZ2LzX13Jxe19bfTrb/fWrn4QLvRC+YkWXJ /FFIGQof5ffm21ALgWtYFjeL5SGQgN0tlcoSUsPGutRghzooGaKJIxqGkTAl0eqb mG7zM8zGXs59uwXJqkXzFg= Received: from asus-laptop (unknown [27.39.88.82]) by smtp3 (Coremail) with SMTP id G9xpCgCn5NX9B8tf6+VOOA--.57096S2; Sat, 05 Dec 2020 12:09:35 +0800 (CST) References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao In-reply-to: <87zh2v5y40.fsf@riseup.net> Date: Sat, 05 Dec 2020 12:09:25 +0800 Message-ID: <86eek499my.fsf@163.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-CM-TRANSID: G9xpCgCn5NX9B8tf6+VOOA--.57096S2 X-Coremail-Antispam: 1Uf129KBjvJXoW7Ar4UAr1DAr1DKF1ktF1kZrb_yoW8WFykpr WSgw4Utw48Kry8GFyUuFs3ur4FkwsIvF45G3ZxtFyvv3W5WF10vFZxKF45AFy7Wrn2gw43 Xa12k3Z3Ja4rXFJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07UF-ewUUUUU= X-Originating-IP: [27.39.88.82] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/1tbiTwDxr1sGWzeVVQAAsg X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Thank you, Peng. your review are helpful, but I still have some objection on following points. Peng Mei Yu writes: > Hi Zhu Zihao, > > Great work. This patch series provides a long waited alternative to > ibus. I prefer to use ibus as my input method editor, but still thank > you for this work. > > Please see comments bellow. > > > Zhu Zihao writes: > >> This is a series of patches, add fcitx5 and its build dependecies. >> a qt5 and gtk2/3 plugin, chinese inputmethod addon and a material theme >> >> From cbe128e488078b3af8f7d1bdb4bf9dc9f12a2f0b Mon Sep 17 00:00:00 2001 >> From: Zhu Zihao >> Date: Sat, 28 Nov 2020 13:16:50 +0800 >> Subject: [PATCH 1/9] gnu: Add xcb-imdkit. >> >> * gnu/packages/fcitx5.scm: New file. >> (xcb-imdkit): New variable. > > These packages should be put into gnu/packages/fcitx.scm. Why? It currently only used by fcitx5. > > I don't think we should emphasize that Fcitx 5 is the successor to > Fcitx. It's obvious. The old Fcitx 4 has already been deprecated by > the author. Do you think there is a good reason to keep the current > Fcitx package while adding a Fcitx 5 package? Why not replace the old > one? Because Fcitx4 and Fcitx5 is totally different, like python2 & python3. Fcitx5 turns to C++ and Qt technology stack. > > "Lua support for Fcitx" > >> + (description "Fcitx5-lua allow user to write Fcitx5 extension in Lu= a.") > > "Fcitx5-lua allows writing Fcitx extentions in Lua." > > I think we can drop all the emphases on "5". > ditto, because fcitx and fcitx5 are totally different, it's needed to make a clarification. =2D-=20 Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/LB/UVHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamvDoH/34E+6WljSsYqNj9yAs4NIm1WeqK ZInP63/s3lw/emW0F0pFpleoouaWw9spIz3+xndS1q5gYJcpedBvM/teQ9sDztY8 +pk4J5KoR344gM8QFw3CxYKEFxNCLNhSRZe1aVHV72YZu3prHeoda2t0wHUJfH/h pAc6KtIL5nK88ylk60JuTyKLdr5n2iEaCnSlQLyZEDaenn8Sf1RtpBwf6qADrm5/ 2grG52CklSm+7sOiWLUQrEwUaLEyypC8T0DvfLKRj+O5KID5DlmsHDO5+71C/Whk V1lj4YD3brGiJkyEDzsqwcbsEPLOVul9a1mfsgIRM3RppkcHARTViskbyWM= =tdP2 -----END PGP SIGNATURE----- --=-=-=-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] Re: [bug#44920] [PATCH]: Add fcitx5. Resent-From: "Zhu Zihao" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Dec 2020 15:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160726915127074 (code B ref 44920); Sun, 06 Dec 2020 15:40:02 +0000 Received: (at 44920) by debbugs.gnu.org; 6 Dec 2020 15:39:11 +0000 Received: from localhost ([127.0.0.1]:50811 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klw7z-00072c-Gc for submit@debbugs.gnu.org; Sun, 06 Dec 2020 10:39:11 -0500 Received: from m13139.mail.163.com ([220.181.13.139]:5323) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klw7v-000724-2u for 44920@debbugs.gnu.org; Sun, 06 Dec 2020 10:39:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Date:From:Subject:MIME-Version:Message-ID; bh=TwUds Ykqsfbg7lFXVknxoaIUav58boedrkW7PmgPQ7E=; b=LunNt8NM6AJJS4PbMQBsX kh7RWtpLfHynKwSw6rDX7IPU9hyfr7OBt26smmJ47Zz/ZN2wSCnT7mqIb5MfSy/B PYFAbNToTFMgS23a0FU5R6VMvehljZzh1i3Io0Q7XUgnaVPjjEWFGvAOancKJLn/ Ze1Kl91XoIV5qoHLTmWR/w= Received: from all_but_last$163.com ( [112.93.142.243] ) by ajax-webmail-wmsvr139 (Coremail) ; Sun, 6 Dec 2020 23:38:57 +0800 (CST) X-Originating-IP: [112.93.142.243] Date: Sun, 6 Dec 2020 23:38:57 +0800 (CST) From: "Zhu Zihao" X-Priority: 3 X-Mailer: Coremail Webmail Server Version XT5.0.10 build 20190724(ac680a23) Copyright (c) 2002-2020 www.mailtech.cn 163com In-Reply-To: References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> X-CM-CTRLDATA: qo3YfWZvb3Rlcl9odG09NjM2OjU2 Content-Type: multipart/alternative; boundary="----=_Part_38526_1061133611.1607269137227" MIME-Version: 1.0 Message-ID: <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID: i8GowAAnVesR+8xfDnnMAA--.30238W X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/1tbiFBHyr1aD8PntYgABsK X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) ------=_Part_38526_1061133611.1607269137227 Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 SW4gZmlsZSBnbnUvcGFja2FnZXMvZmNpdHguc2NtIDEzMjo4Cgo7OyBYWFg6IFdlIGNhbid0IHNp bXBseSAjOnVzZS1tb2R1bGUgZHVlIHRvIGEgY3ljbGUgc29tZXdoZXJlLgoKTG9va3MgdGhhdCB0 aGVyZSdzIGEgY3ljbGljIGRlcGVuZGVuY3kgc29tZXdoZXJlLCBBRkFJSyBmY2l0eDUncwpjb21w b25lbnRzIGhlYXZpbHkgZGVwZW5kIG9uIHBhY2thZ2VzIGluIChnbnUgcGFja2FnZXMga2RlLWZy YW1ld29ya3MpLAp3aWxsIHRoaXMgYmUgYSBwcm9ibGVtIGZvciB1cyB0byBtZXJnZSBmY2l0eC5z Y20gYW5kIGZjaXR4NS5zY20/Cgo+IEmhr2QgbGlrZSB0byBwdXQgZmNpdHg1IHRoaW5ncyBpbnRv IKGwZmNpdHguc2NtobEgdG9vLCBhcyB0aGUgYXV0aG9yIGFuZAo+IHRoZSBnaXRodWIgb3JnYW5p emF0aW9uIGRvc2Vuoa90IGNoYW5nZWQgZm9yIGZjaXR4NSwgbGlrZXdpc2Ugd2UgYWxzbwo+IGhh dmUgYm90aCBxdDQgYW5kIHF0NSBpbiBxdC5zY20gYW5kIGd0azIgYW5kIGd0azMgaW4gZ3RrLnNj bS4K ------=_Part_38526_1061133611.1607269137227 Content-Type: text/html; charset=GBK Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0ibGluZS1oZWlnaHQ6MS43O2NvbG9yOiMwMDAwMDA7Zm9udC1zaXplOjE0cHg7 Zm9udC1mYW1pbHk6QXJpYWwiPkluIGZpbGUgZ251L3BhY2thZ2VzL2ZjaXR4LnNjbSAxMzI6ODxi cj48YnI+OzsgWFhYOiBXZSBjYW4ndCBzaW1wbHkgIzp1c2UtbW9kdWxlIGR1ZSB0byBhIGN5Y2xl IHNvbWV3aGVyZS48YnI+PGJyPkxvb2tzIHRoYXQgdGhlcmUncyBhIGN5Y2xpYyBkZXBlbmRlbmN5 IHNvbWV3aGVyZSwgQUZBSUsgZmNpdHg1J3M8YnI+Y29tcG9uZW50cyBoZWF2aWx5IGRlcGVuZCBv biBwYWNrYWdlcyBpbiAoZ251IHBhY2thZ2VzIGtkZS1mcmFtZXdvcmtzKSw8YnI+d2lsbCB0aGlz IGJlIGEgcHJvYmxlbSBmb3IgdXMgdG8gbWVyZ2UgZmNpdHguc2NtIGFuZCBmY2l0eDUuc2NtPzxi cj48YnI+Jmd0OyBJoa9kIGxpa2UgdG8gcHV0IGZjaXR4NSB0aGluZ3MgaW50byChsGZjaXR4LnNj baGxIHRvbywgYXMgdGhlIGF1dGhvciBhbmQ8YnI+Jmd0OyB0aGUgZ2l0aHViIG9yZ2FuaXphdGlv biBkb3NlbqGvdCBjaGFuZ2VkIGZvciBmY2l0eDUsIGxpa2V3aXNlIHdlIGFsc288YnI+Jmd0OyBo YXZlIGJvdGggcXQ0IGFuZCBxdDUgaW4gcXQuc2NtIGFuZCBndGsyIGFuZCBndGszIGluIGd0ay5z Y20uPGJyPjwvZGl2Pjxicj48YnI+PHNwYW4gdGl0bGU9Im5ldGVhc2Vmb290ZXIiPjxwPiZuYnNw OzwvcD48L3NwYW4+ ------=_Part_38526_1061133611.1607269137227-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Dec 2020 16:41:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Zhu Zihao Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160727283725502 (code B ref 44920); Sun, 06 Dec 2020 16:41:04 +0000 Received: (at 44920) by debbugs.gnu.org; 6 Dec 2020 16:40:37 +0000 Received: from localhost ([127.0.0.1]:51026 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klx5Q-0006dA-F6 for submit@debbugs.gnu.org; Sun, 06 Dec 2020 11:40:36 -0500 Received: from mail-oln040092253104.outbound.protection.outlook.com ([40.92.253.104]:46177 helo=APC01-SG2-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1klpQx-0006XA-PW for 44920@debbugs.gnu.org; Sun, 06 Dec 2020 03:30:20 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P5iYuBhtOE4Wczkl6j869A+0X0Sd1QeV42dUN1kEHLk9eT5aVeSjN+X7jiHlGx/RkuaEdji6g3omDickdUeKTbiI5ZD9TBmwcUNYuwW5aHTKWgP/KpS43mgTyT8n6iQg8tH37cXqUloPaK2EucudXBgCmNvlPWOv8Yo44UH1pbEJdsPCwhE3DKWoFcPjQJkeg/Q9W6NCqHzKMKG4I9AbJH+bxuWrWDYsERzweIf+HYop/0mc79v12rES/5l9rQNJoxvu6X++ssi+86veuP6qq8+jIUhVdYuEDIXp1XcVh1iJV7WquZdEYuCfyOu6m/9ugwiMqhWF6zlZtHqBMHDrFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mjMIEnWzU9m5efSfANv9ThgCdgZC2CMVY2xBPqVa6vc=; b=IU+RPgoa3DphpJzcEHnr0Y9KP5K47BFQDXjSnLrHbPnGt/YhquyFwcVJ7TiW74KiaXlxc0uyHWL24LHj0H2n9uIrrX8dKVNk2j6nligO+9T4Ep3cKKB/8xhymEIVkyF6DyCdLE8a69v4TtTi55gsXXj7K8ZSXYBcMcIjw+63nHFTdFw4VnG39GJ+/GkG005MaSaPJ8Frqv+JV/dtf3K4KWN2fM1bazDk5adRbbBJMaEAdAvTCzBNqTQdiur/GjMRmOeshSsDHg0F5OlcPnskFNKKW0DeNOp7j7n4PaATdbxmqXRM4lsTK47EaMQ2GJqy9lpa/RvtLe+gFVeclLnWPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mjMIEnWzU9m5efSfANv9ThgCdgZC2CMVY2xBPqVa6vc=; b=ipAZA8kcnTXxqJAVSZmYj2izV7VAORU9QdJd+lMi2unwVzxXvuv5h+Jk2JZyv/gkR0YFeNWhgUnmS0Bbh66NO4SXnxVEJqygREdeuFJUs2Zs7OrUGaJVj0AKx88Y7qV88ZIiZ11aHsG+tzHQVm+6BQh8tCnEOSgXtWFJAMkzTqK913Lr9NZjWECSf9tePQhqQ1L6WdWZNbviSeGwWyvw8uKvZuzUnxe+2nygYa/azn1wsrTfntHcnbLr178lfawbD4wKlCIVJe59jbowzrkKL9gBkKj4bYtKj0MHfAiHzk4l6DGBzp3BfbSN+WEJixCP3FqanJOT9/d4j9AVJyp7Dg== Received: from HK2APC01FT035.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebc::53) by HK2APC01HT160.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebc::334) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17; Sun, 6 Dec 2020 08:30:11 +0000 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (10.152.248.57) by HK2APC01FT035.mail.protection.outlook.com (10.152.248.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Sun, 6 Dec 2020 08:30:11 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:9621F19D808C7E7DB5C58EDF2FE03446B976FCC75F77D6C5C52282D60188E8C3; UpperCasedChecksum:C3055D90068BCBFE19D614D2FA47A2521883816E9C13D254710E851515088B47; SizeAsReceived:8686; Count:47 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb]) by TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb%8]) with mapi id 15.20.3632.017; Sun, 6 Dec 2020 08:30:11 +0000 From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> Date: Sun, 06 Dec 2020 16:30:22 +0800 In-Reply-To: <86eek499my.fsf@163.com> (Zhu Zihao's message of "Sat, 05 Dec 2020 12:09:25 +0800") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-TMN: [F8fU0i05w8H5j94MNSr25jho3ebKZgkpzkJVmgdqvXTMYEvyOP2CtfLp5y08Vc9v] X-ClientProxiedBy: HE1P195CA0020.EURP195.PROD.OUTLOOK.COM (2603:10a6:3:fd::30) To TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:8038::14) X-Microsoft-Original-Message-ID: <87zh2ribfl.fsf@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost (2409:8a62:372:3600:2f1:f5ff:fe18:6bb) by HE1P195CA0020.EURP195.PROD.OUTLOOK.COM (2603:10a6:3:fd::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.18 via Frontend Transport; Sun, 6 Dec 2020 08:30:09 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 47 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 4276053f-f0c8-4289-1598-08d899c1252a X-MS-TrafficTypeDiagnostic: HK2APC01HT160: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lhHXfaIw7VSNswOxA7XOCV+17syj3gxCjDLe8U0N4F37OJ3IBdhlF8WKha8bCZWMQfYTafj7rTigyB11JUtBflKzAGHvFLVJaCjtZ7znKbx38H5apoixmTiOs4Pcf1crBVy735sFaqFuTzdMZoinivQ3Wfu6bzcFmr5q0Yh0iOX85Bm7LVkNXENPnjJEhrGhTbcMRzKNkBpcxPqs8QMj/A== X-MS-Exchange-AntiSpam-MessageData: NoM/JAy2YkXHAlXIQ96bF3gLt5mwnOseicpkaF8As5oMb/kDLoQUCQWF7WdYPxuA1AZw9fPjtQPKsxJ+KFBRS8corIoDg+71miLBt4ULObE88LpJIfzFWQd0aDb7SkwyTZhKi/9ZmDtQ1yXqOQgdajvCPISbL5OzqyFw+cbvs9k7JfXfmPn/o/xlYGkNyx1/a6yvnYv6mBOTex32IvUDBw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4276053f-f0c8-4289-1598-08d899c1252a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Dec 2020 08:30:10.9942 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HK2APC01FT035.eop-APC01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2APC01HT160 X-Spam-Score: -0.0 (/) X-Mailman-Approved-At: Sun, 06 Dec 2020 11:40:33 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, thanks for the patches! Zhu Zihao writes: >>> This is a series of patches, add fcitx5 and its build dependecies. >>> a qt5 and gtk2/3 plugin, chinese inputmethod addon and a material theme >>> >>> From cbe128e488078b3af8f7d1bdb4bf9dc9f12a2f0b Mon Sep 17 00:00:00 2001 >>> From: Zhu Zihao >>> Date: Sat, 28 Nov 2020 13:16:50 +0800 >>> Subject: [PATCH 1/9] gnu: Add xcb-imdkit. >>> >>> * gnu/packages/fcitx5.scm: New file. >>> (xcb-imdkit): New variable. >> >> These packages should be put into gnu/packages/fcitx.scm. > > Why? It currently only used by fcitx5. I=E2=80=99d like to put fcitx5 things into =E2=80=9Cfcitx.scm=E2=80=9D too,= as the author and the github organization dosen=E2=80=99t changed for fcitx5, likewise we als= o have both qt4 and qt5 in qt.scm and gtk2 and gtk3 in gtk.scm. > [0001-gnu-Add-xcb-imdkit.patch] This patch import guix modules that only needed later by =E2=80=98fcitx=E2= =80=99, should clean it up=E2=80=A6 Otherwise look good to me! Also I see fcitx5 got a new release recently (eg: xcb-imdkit -> 1.0.1, fcitx5 -> 5.0.3), could you update this patches series for =E2=80=98fcitx.s= cm=E2=80=99 and the latest release? Thank you! From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 07 Dec 2020 10:56:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: "Zhu Zihao" Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.16073385452401 (code B ref 44920); Mon, 07 Dec 2020 10:56:01 +0000 Received: (at 44920) by debbugs.gnu.org; 7 Dec 2020 10:55:45 +0000 Received: from localhost ([127.0.0.1]:52577 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmEBF-0000cf-3E for submit@debbugs.gnu.org; Mon, 07 Dec 2020 05:55:45 -0500 Received: from mail-oln040092255048.outbound.protection.outlook.com ([40.92.255.48]:62048 helo=APC01-HK2-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmEBC-0000cN-W1 for 44920@debbugs.gnu.org; Mon, 07 Dec 2020 05:55:43 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A7i8kHpDeADU67TmY4kjl3r+/wz7lyIyiZSa3J0GqjgMYM3KPOwrnuu6le7peEpde7IdKqP2hxF6khVaoxzuRTtHWf8C9AECJ0afxxOIKJHgPxxjJXlaWvEWIO2m0ZdsDhThWi2XCSymXe11vS3NNU5voCEdjDOtYyazYFqtW6EdcAGJbIQfCAduCooBGv2mB96XJV0fWa2YLhCZf3rgOqa1kqBg38+40dvzfjViSc2I3X1yuWoQ5ZVUxROSBumTc6tOynif8OmKTIfDmUo25gbf0COofT2bV51PRiqSfqedVU2I7fFB5u1jj1HgmOrD7mY2iqK4fiVIroWenjsaPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5az4F/wnkwOTRwlI+dDKN+l2KI06bqChIlNoktQllp4=; b=gTlYsdXW3bWMlRThxyO6/+AJdHdkMOL2jM0AaL4MPkbhpVKZLXJdbNOl6hAsUvCzMxxTMIcfvnJ5Yuk8ROP2g+eOi3EQA8WcAzTqp92Mv9ESr0npt61UvJBUrzU+WuSDVM6d7HhG0esG0pOm3okZrH3mQh1YC7QJwW0E5BnQq2vxWX5191Z0qjlK2bmpAAsguV5Z8eyjIYwscD0XSpPst1rV4BZUDHudDZZeJXOOhlcIWXhdthtlRJhmSRoQi9vmdYcg7oY3+qlckjePKDCz7P1rIojfbFLXEMQ4zZ+pTRt2Riub7beIToxL0yExtTnOguWs8lz+9ylkJGxtbaY2QQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5az4F/wnkwOTRwlI+dDKN+l2KI06bqChIlNoktQllp4=; b=cpZt8wFMozy0VBZRFW11bN1huwADO+fPMFY9S3PAF4n1JSMhb6rDDQWVaF3KO2M+ZyuG2U+SSruLnVapvZwVoM83JlqYe0kHWDf/rW4GSz9CXSqilhxPNairPMwD6eikzJNx4znfrhLUFp78p3lMlrXLYJNNjceu9royEbrE4hTgpuBa6QrHQTlgn7TOVuxkrpCOsnVYCkOiw5iyLVN5Y2EjKVMdlvqxHdARRDmhFS8E/0CMqKvynEBhHT4kK1rT8M3viBQ56fA49pC6BJlBiNnnVzkPr30/tPyJyU5JqnMUpTHu02sfGPFV3ZaQNTdsDCq84MASnPvqI0bykkGcfg== Received: from PU1APC01FT044.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::4b) by PU1APC01HT141.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::437) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17; Mon, 7 Dec 2020 10:55:32 +0000 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (10.152.252.59) by PU1APC01FT044.mail.protection.outlook.com (10.152.253.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Mon, 7 Dec 2020 10:55:32 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:E6260CA96E4548E3EF8037B889CFBBD788ED688844B46B685A4DB3D1DFB1EB14; UpperCasedChecksum:2309BFEC304B95EBF092ECDF0D6ED45234F4A042470DFA77FFAEFC40C6E2C9B8; SizeAsReceived:8885; Count:47 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb]) by TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb%8]) with mapi id 15.20.3632.017; Mon, 7 Dec 2020 10:55:32 +0000 From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> Date: Mon, 07 Dec 2020 18:55:53 +0800 In-Reply-To: <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> (Zhu Zihao's message of "Sun, 6 Dec 2020 23:38:57 +0800 (CST)") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-TMN: [BlpjGMmpE+/TY5JT2EZ7S/6wpDeVR3gVlw7QzRo/ldT6Om24rcye1o6rjlJFDmp4] X-ClientProxiedBy: HE1PR0802CA0015.eurprd08.prod.outlook.com (2603:10a6:3:bd::25) To TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:8038::14) X-Microsoft-Original-Message-ID: <87pn3lyjeu.fsf@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost (2409:8a62:372:3600:2f1:f5ff:fe18:6bb) by HE1PR0802CA0015.eurprd08.prod.outlook.com (2603:10a6:3:bd::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Mon, 7 Dec 2020 10:55:31 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 47 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: eef9fb41-4915-44b0-b1bf-08d89a9e9e3d X-MS-TrafficTypeDiagnostic: PU1APC01HT141: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ziT55QwHtfWmpD+xD0WWeU4WWJGnEqAjU9nzV68b6WGsvwuRvy+FDeb5WP8h9TvVuBR0NyjEPpyim7fxirCU6k6OfaHGqyQX2PjxELVG6u7vPUZC7dkBZjYa9vbIG4HyUWMdUH4FQzb1rla/z5vr3AbuO9GcLDjVWlSy0hUeOzZvNqCg2PbT/XJeWs15Mv+34Vt5mAQ+sFhLjHKOxJQZDQ== X-MS-Exchange-AntiSpam-MessageData: j0EnSRxzqxE1PDLHX4Cy8IpkiAaR3lM7hfYeQQXhCXqhgDQNASCtw8FPMW2eXRJkjC4a8ErqOi/tWj0BCZyXmHVZIWjerx7DdxUZqvrj1JC8z6AlAmejdhvfHTJ+Siym88sHtIjmPkXOORojVBbI56i7t5TCqfThQHKn9NlJEYhyWS7aYOAyodpH1lzqb8g/DzvnacUfjPZQsxLfoQf2Xg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eef9fb41-4915-44b0-b1bf-08d89a9e9e3d X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Dec 2020 10:55:32.4951 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: PU1APC01FT044.eop-APC01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PU1APC01HT141 X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) "Zhu Zihao" writes: > In file gnu/packages/fcitx.scm 132:8 > > ;; XXX: We can't simply #:use-module due to a cycle somewhere. > > Looks that there's a cyclic dependency somewhere, AFAIK fcitx5's > components heavily depend on packages in (gnu packages kde-frameworks), > will this be a problem for us to merge fcitx.scm and fcitx5.scm? Ah, that's a bad problem. The only package use fcitx is =E2=80=98sdl2=E2= =80=99 from sdl.scm, which is used by a lot of modules. Okay, then I think we should add them into fcitx5.scm. Thank you! From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Zhu Zihao Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 07 Dec 2020 14:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Cc: 44920@debbugs.gnu.org, all_but_last@163.com Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.16073528171762 (code B ref 44920); Mon, 07 Dec 2020 14:54:02 +0000 Received: (at 44920) by debbugs.gnu.org; 7 Dec 2020 14:53:37 +0000 Received: from localhost ([127.0.0.1]:53036 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmHtP-0000SK-Bq for submit@debbugs.gnu.org; Mon, 07 Dec 2020 09:53:37 -0500 Received: from mail-m972.mail.163.com ([123.126.97.2]:36132) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmHtJ-0000S0-5g for 44920@debbugs.gnu.org; Mon, 07 Dec 2020 09:53:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Message-ID:Date:MIME-Version; bh=9B/I3 gduIHeaQnQUGvCMRnlWwiKfKZunGSngU+6R0oM=; b=PIRiDMWqdj8cDsg5HrFbE mYUhHsvwRDb1nRmEZUduiXTkZB6i7EEBiOrQDIbrUdJUHQACj0+RnaB/vNZRt3GV 3vdiLhFXFpqmDN/dX5s2Z7ygSRM17FfXsIgBBNITDfN09fcpziXnfcIMje+/1gwM 1cuyUE1UtCXp4WR5YSkiQU= Received: from asus-laptop (unknown [112.93.142.243]) by smtp2 (Coremail) with SMTP id GtxpCgCH8evfQc5f1iQiEQ--.25070S2; Mon, 07 Dec 2020 22:53:20 +0800 (CST) References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao In-reply-to: Message-ID: <868sa9hdls.fsf@163.com> Date: Mon, 07 Dec 2020 22:53:19 +0800 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-CM-TRANSID: GtxpCgCH8evfQc5f1iQiEQ--.25070S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvjxU1c_TDUUUU X-Originating-IP: [112.93.142.243] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/1tbiFADzr1aD8QrvpgAAsv X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" --==-=-= Content-Type: text/plain All Fcitx5 components updated. Here are the patches. --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/OQd8VHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamcBgH/R9XiFV6JsEh1NuNtXpBZsUw+Lsf 3C0s9MUrUdNgLdUQueSuyfjJ8FsQtQQIk71WhyUQ0Qq8PUblJVi41IhsuSW3YOdy iYfZSb08Zss7WPGEkxByLOlQ+OOF2SYghMNZ6bfTnuwF9gXX3mDxV35iCgkK0xht aPTcCNZ5EsLkVSdKirK7KTInKGjh46bnD/Sq2fnh631P7iNcPSfPwl5DDpW3gYx0 V3jCqWGsuiaXcadcftORarBMFTY+opwfc1QgBND9MmuQB7qaE6fPSwfDctxyuOYC aLhkzzFkTUQkWGTWFzqBD0ASPhe7mlg9e327V4sJ6cLjHej3YVZuvUrREFg= =Q+tR -----END PGP SIGNATURE----- --==-=-=-- --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-gnu-packages-fcitx5.patch Content-Transfer-Encoding: quoted-printable >From ff65eaa03b3dca992dc53e10c139a2601ccf9a53 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:29:58 +0800 Subject: [PATCH 01/10] gnu: Add (gnu packages fcitx5). * gnu/packages/fcitx5.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Reference to new file. --- gnu/local.mk | 1 + gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 gnu/packages/fcitx5.scm diff --git a/gnu/local.mk b/gnu/local.mk index 5277403196..e37f2dac70 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -204,6 +204,7 @@ GNU_SYSTEM_MODULES =3D \ %D%/packages/erlang.scm \ %D%/packages/fabric-management.scm \ %D%/packages/fcitx.scm \ + %D%/packages/fcitx5.scm \ %D%/packages/figlet.scm \ %D%/packages/file.scm \ %D%/packages/file-systems.scm \ diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..8c1fa49322 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,50 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2020 Zhu Zihao +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages fcitx5) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages boost) + #:use-module (gnu packages curl) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages iso-codes) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libevent) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages unicode) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) --=20 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-xcb-imdkit.patch >From f18d90b7b9a57a6855be72c8daccba7f98f08c4b Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:32:29 +0800 Subject: [PATCH 02/10] gnu: Add xcb-imdkit. * gnu/packages/fcitx5.scm(xcb-imdkit): New variable. --- gnu/packages/fcitx5.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 8c1fa49322..edfd6aca2b 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -48,3 +48,37 @@ #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) + +(define-public xcb-imdkit + (package + (name "xcb-imdkit") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/xcb-imdkit/xcb-imdkit-" + version ".tar.xz")) + (sha256 + (base32 "1qgbbp8y8ci7haz99vgbrgpjsbrwwyjianyhdvxcirnbm5bybvmz")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled uthash. + (delete-file-recursively "uthash") + #t)))) + (build-system cmake-build-system) + (inputs + `(("uthash" ,uthash) + ("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/xcb-imdkit") + (synopsis "Input method development support for XCB.") + (description "Xcb-imdkit is an implementation of xim protocol in XCB, +comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, +it has less memory foot print, better performance, and safer on malformed +client.") + (license license:lgpl2.1))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-fcitx5.patch >From 00d62c64b453f4053f9c31e37a5ee079233dedd1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:38:35 +0800 Subject: [PATCH 03/10] gnu: Add fcitx5. * gnu/packages/fcitx5.scm(fcitx5): New variable. --- gnu/packages/fcitx5.scm | 59 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index edfd6aca2b..b65d90f588 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -82,3 +82,62 @@ comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, it has less memory foot print, better performance, and safer on malformed client.") (license license:lgpl2.1))) + +(define-public fcitx5 + (package + (name "fcitx5") + (version "5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" + version "_dict.tar.xz")) + (sha256 + (base32 "06zkb33m2rnhg385iy79n3r4svz5jbav74di61xqa3lhbv7534s3")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLDR_DIR=" + (assoc-ref %build-inputs "unicode-cldr-common") + "/share/unicode/cldr")))) + (inputs + `(("cairo" ,cairo) + ("cairo-xcb" ,cairo-xcb) + ("dbus" ,dbus) + ("enchant" ,enchant) + ("expat" ,expat) + ("fmt" ,fmt) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("iso-codes" ,iso-codes) + ("json-c" ,json-c) + ("libevent" ,libevent) + ("libpthread-stubs" ,libpthread-stubs) + ("libuuid" ,util-linux "lib") + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxfixes" ,libxfixes) + ("libxinerama" ,libxinerama) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("pango" ,pango) + ("unicode-cldr-common" ,unicode-cldr-common) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-imdkit" ,xcb-imdkit) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("xkeyboard-config" ,xkeyboard-config))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "FCITX_ADDON_DIRS") + (files '("lib/fcitx5"))))) + (home-page "https://github.com/fcitx/fcitx5") + (synopsis "Input method framework") + (description "Fcitx 5 is a generic input method framework.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0004-gnu-Add-fcitx5-lua.patch >From 46b3fa824e764c565953f253d2d7d77f0c17851c Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:39:29 +0800 Subject: [PATCH 04/10] gnu: Add fcitx5-lua. * gnu/packages/fcitx5.scm(fcitx5-lua): New variable. --- gnu/packages/fcitx5.scm | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index b65d90f588..db96b190f7 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -141,3 +141,47 @@ client.") (synopsis "Input method framework") (description "Fcitx 5 is a generic input method framework.") (license license:lgpl2.1+))) + +(define-public fcitx5-lua + (package + (name "fcitx5-lua") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" + version ".tar.xz")) + (sha256 + (base32 "177mj56j8yrl79hvk7bbrifvm137np23pwalv83ibgk4l51z92hf")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + '("src/addonloader/CMakeLists.txt" + "src/imeapi/CMakeLists.txt")) + #t))))) + (inputs + `(("fcitx5" ,fcitx5) + ("lua" ,lua) + ("gettext" ,gettext-minimal) + ("libpthread-stubs" ,libpthread-stubs))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-lua") + (synopsis "Lua support for Fcitx 5") + (description "Fcitx5-lua allows writing Fcitx5 extension in Lua.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0005-gnu-Add-libime.patch >From eeb7ce9952f5e71157e5fe7b1ff62ac82c878ade Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:40:41 +0800 Subject: [PATCH 05/10] gnu: Add libime. * gnu/packages/fcitx5.scm(libime): New variable. --- gnu/packages/fcitx5.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index db96b190f7..ac4be9a6c6 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -185,3 +185,28 @@ client.") (synopsis "Lua support for Fcitx 5") (description "Fcitx5-lua allows writing Fcitx5 extension in Lua.") (license license:lgpl2.1+))) + +(define-public libime + (package + (name "libime") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" + version "_dict.tar.xz")) + (sha256 + (base32 "006pncby7p6h3rnicckzjwi6jzsrqiqbj6p9bpic80lanlllgw31")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("boost" ,boost))) + (native-inputs + `(("gcc" ,gcc-9) ;for #include and ld support + ("extra-cmake-modules" ,extra-cmake-modules) + ("python" ,python))) ;needed to run test + (home-page "https://github.com/fcitx/libime") + (synopsis "Library for implementing generic input method") + (description "Libime is a library for implmenting various input methods +editors.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0006-gnu-Add-fcitx5-qt.patch >From 847962d45c2d1644782454e493a5c94baf84b5a9 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:42:43 +0800 Subject: [PATCH 06/10] gnu: Add fcitx5-qt. * gnu/packages/fcitx5.scm(fcitx5-qt): New variable. --- gnu/packages/fcitx5.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index ac4be9a6c6..e1676dff27 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -210,3 +210,38 @@ client.") (description "Libime is a library for implmenting various input methods editors.") (license license:lgpl2.1+))) + +(define-public fcitx5-qt + (package + (name "fcitx5-qt") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-qt/fcitx5-qt-" + version ".tar.xz")) + (sha256 + (base32 "0ilhb4yw9k3m1c4fidnv3nd5dgm9xxds11dgdys6gswjjnmcgqqm")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=" + %output "/lib/qt5/plugins") + "-DENABLE_QT4=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("qtbase" ,qtbase) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-qt") + (synopsis "Qt library and IM module for Fcitx 5") + (description "Fcitx5-qt provides Qt library for development and IM module +for Qt based application.") + (license (list license:lgpl2.1+ + ;; Files under qt4(Fcitx5Qt4DBusAddons), qt5/dbusaddons + ;; and qt5/platforminputcontext. + license:bsd-3)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0007-gnu-Add-fcitx5-gtk.patch >From 441989303b6b78572c599cb0aa96878ab9f095d2 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:43:47 +0800 Subject: [PATCH 07/10] gnu: Add fcitx5-gtk. * gnu/packages/fcitx5.scm(fcitx5-gtk): New variable. --- gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index e1676dff27..e41a9faee1 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -211,6 +211,56 @@ client.") editors.") (license license:lgpl2.1+))) +(define-public fcitx5-gtk + (package + (name "fcitx5-gtk") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-gtk/fcitx5-gtk-" + version ".tar.xz")) + (sha256 + (base32 "0h53liraqc5nz4nyi3ixdfdw3zzkdcsiff7j25acc3gmaa5gyij7")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;No test + #:configure-flags + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=" + %output "/share/gir-1.0") + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=" + %output "/lib/girepository-1.0")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gtk3 (assoc-ref outputs "gtk3"))) + + (substitute* "gtk3/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk3 "/lib"))))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxkbcommon" ,libxkbcommon) + ("gobject-introspection" ,gobject-introspection) + ("gtk2" ,gtk+-2) + ("gtk3" ,gtk+) + ("glib" ,glib) + ("libx11" ,libx11) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("glib" ,glib "bin"))) ;for glib-genmarshal + (outputs '("out" "gtk3")) + (home-page "https://github.com/fcitx/fcitx5-gtk") + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") + (description "Fcitx5-gtk provides a Glib based D-Bus client and IM module +for GTK+2/GTK+3 application.") + (license license:lgpl2.1+))) + (define-public fcitx5-qt (package (name "fcitx5-qt") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0008-gnu-Add-fcitx5-chinese-addons.patch >From 0e0ce85ec4e24d005f5ce05b4b12f10bf2518d01 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:37 +0800 Subject: [PATCH 08/10] gnu: Add fcitx5-chinese-addons. * gnu/packages/fcitx5.scm(fcitx5-chinese-addons): New variable. --- gnu/packages/fcitx5.scm | 77 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index e41a9faee1..a90c90dcf6 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -295,3 +295,80 @@ for Qt based application.") ;; Files under qt4(Fcitx5Qt4DBusAddons), qt5/dbusaddons ;; and qt5/platforminputcontext. license:bsd-3)))) + +(define-public fcitx5-chinese-addons + (package + (name "fcitx5-chinese-addons") + (version "5.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-chinese-addons/fcitx5-chinese-addons-" + version "_dict.tar.xz")) + (sha256 + (base32 "0mf91gzwzhfci0jn6g3l516xjw8r4v40ginnbl70h1zx6vr24rfp")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + (find-files "." "CMakeLists\\.txt$")) + #t)) + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package closure + ;; by 800M on x86_64, so place it under another output. + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append (assoc-ref outputs "gui") "/lib")))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-lua" ,fcitx5-lua) + ("boost" ,boost) + ("libime",libime) + ("curl" ,curl) + ("gettext" ,gettext-minimal) + ("fmt" ,fmt) + ("libpthread-stubs" ,libpthread-stubs) + ("opencc" ,opencc) + ("qtbase" ,qtbase) + ("fcitx5-qt" ,fcitx5-qt) + ("qtwebkit" ,qtwebkit))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (outputs '("out" "gui")) + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") + (synopsis "Chinese related addons for Fcitx 5") + (description "Fcitx5-chinese-addons provides Chinese related addons, +including input methods previous bundled inside Fcitx 4: + +@itemize +@item Bingchan +@item Cangjie +@item Erbi +@item Pinyin +@item Shuangpin +@item Wanfeng +@item Wubi +@item Wubi Pinyin +@item Ziranma +@end itemize\n") + (license (list license:lgpl2.1+ + license:gpl2+ + ;; im/pinyin/emoji.txt + license:unicode)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0009-gnu-Add-fcitx5-configtool.patch >From 10f2b4040e265de88b0505f02f483e22c56aa043 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:46:03 +0800 Subject: [PATCH 09/10] gnu: Add fcitx5-configtool. * gnu/packages/fcitx5.scm(fcitx5-configtool): New variable. --- gnu/packages/fcitx5.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index a90c90dcf6..eb268562a9 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -372,3 +372,42 @@ including input methods previous bundled inside Fcitx 4: license:gpl2+ ;; im/pinyin/emoji.txt license:unicode)))) + +(define-public fcitx5-configtool + (package + (name "fcitx5-configtool") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5" + "/fcitx5-configtool/fcitx5-configtool-" version ".tar.xz")) + (sha256 + (base32 "0mrqhzvab41hkvhkz7vkb8d2mv5bgx4aqp9jpz4kf3kskwm1q14b")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + ;; KDE is currently not working on Guix, KCM supports doesn't make sense. + '("-DENABLE_KCM=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-qt" ,fcitx5-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libx11" ,libx11) + ("xkeyboard-config" ,xkeyboard-config) + ("libxkbfile" ,libxkbfile) + ("gettext" ,gettext-minimal) + ("iso-codes" ,iso-codes))) + (native-inputs + `(("gcc" ,gcc-9) + ("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/fcitx5-configtool") + (synopsis "Graphical configuration tool for Fcitx 5") + (description "Fcitx5-configtool is a graphical configuration tool +to manage different input methods in Fcitx 5.") + (license license:gpl2+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0010-gnu-Add-fcitx5-material-color-theme.patch >From bc66cd1957fec1aa6c762498cc898e89ee91114c Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:45:06 +0800 Subject: [PATCH 10/10] gnu: Add fcitx5-material-color-theme. * gnu/packages/fcitx5.scm(fcitx5-material-color-theme): New variable. --- gnu/packages/fcitx5.scm | 70 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index eb268562a9..8ca109ed31 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -411,3 +411,73 @@ including input methods previous bundled inside Fcitx 4: (description "Fcitx5-configtool is a graphical configuration tool to manage different input methods in Fcitx 5.") (license license:gpl2+))) + +(define-public fcitx5-material-color-theme + (package + (name "fcitx5-material-color-theme") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hosxy/Fcitx5-Material-Color") + (commit version))) + (sha256 + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + + (let* ((out (assoc-ref outputs "out")) + (assets-dir (string-append + out "/share/fcitx5-material-color-theme")) + (themes-prefix (string-append out "/share/fcitx5/themes"))) + + (define (install-theme-variant variant target) + (let ((dir (string-append themes-prefix "/" target)) + (png (string-append "panel-" variant ".png")) + (conf (string-append "theme-" variant ".conf"))) + (format #t "install: Installing color variant \"~a\" to ~a~%" + variant dir) + (substitute* conf + (("^Name=.*") + (string-append "Name=" target "\n"))) + (mkdir-p dir) + (install-file png dir) + (copy-file conf (string-append dir "/theme.conf")) + (symlink (string-append assets-dir "/arrow.png") + (string-append dir "/arrow.png")))) + + (mkdir-p assets-dir) + (install-file "arrow.png" assets-dir) + (for-each + (lambda (x) + (install-theme-variant + x (string-append "Material-Color-" (string-capitalize x)))) + '("black" "blue" "brown" "indigo" + "orange" "pink" "red" "teal")) + + (install-theme-variant + "deepPurple" "Material-Color-DeepPurple") + #t)))))) + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") + (synopsis "Material Design for Fcitx 5") + (description "Fcitx5-material-color-theme is a Material Design theme +for Fcitx 5 with following color variants: + +@itemize +@item Black +@item Blue +@item Brown +@item Indigo +@item Orange +@item Pink +@item Red +@item teal +@item DeepPurple +@end itemize\n") + (license license:asl2.0))) -- 2.29.2 --=-=-= Content-Type: text/plain -- Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-=-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Zhu Zihao Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 07 Dec 2020 15:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: iyzsong@outlook.com Cc: 44920@debbugs.gnu.org, all_but_last@163.com Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160735543115930 (code B ref 44920); Mon, 07 Dec 2020 15:38:02 +0000 Received: (at 44920) by debbugs.gnu.org; 7 Dec 2020 15:37:11 +0000 Received: from localhost ([127.0.0.1]:54976 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmIZa-00048s-OG for submit@debbugs.gnu.org; Mon, 07 Dec 2020 10:37:10 -0500 Received: from mail-m971.mail.163.com ([123.126.97.1]:49612) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmIZX-00048J-7u for 44920@debbugs.gnu.org; Mon, 07 Dec 2020 10:37:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Message-ID:Date:MIME-Version; bh=fD6Ng FfrpJB+e70dxgU2hhirjxDFihEFJegARcKEXpE=; b=TpZOUk+nkX702nFZ4aLDp dGgBxbeCx6xPmwKx7phMuojU/KJe3AoHZWjigevUrU+bnOjTRtZFIuqeSdhewB43 LSBPR4McN9xVA/tAxgzXh3HeDlM3xlGCsC0DnvcO9xrCAKNZcCS76Ne4l1nMQiEL kIVyxU9dlJ2Dam4ZuXJUIk= Received: from asus-laptop (unknown [112.93.142.243]) by smtp1 (Coremail) with SMTP id GdxpCgAnR38XTM5fXwFQAA--.1625S2; Mon, 07 Dec 2020 23:36:56 +0800 (CST) References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao In-reply-to: Message-ID: <86a6upfx0o.fsf@163.com> Date: Mon, 07 Dec 2020 23:36:55 +0800 MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-CM-TRANSID: GdxpCgAnR38XTM5fXwFQAA--.1625S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvj4RR_M-UUUUU X-Originating-IP: [112.93.142.243] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/xtbB8Qjzr12MYJb4+AAAsC X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable BTW, fcitx5-chinese-addons contains a cloud pinyin feature, which use Google or Baidu's cloud pinyin server. But it was disabled by default and it'll ask user to enable it or not, should we make a patch to get rid of such anti-features? =2D-=20 Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/OTBcVHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamyBAH/2Wr0IAJzWEx+m1G/Lu1ny8NphAx vZGUGZkkLgNvNgA5FR0LcQ3yLLh9J+T0WMjq9JBzVpZ9AbZPgznhfED5vp72nR8+ enhuluLWzzhb50IH/Xnv68hwoXZ8sNzhHatXYyUMSzOmkXsjZI8kPHpMdi/FEptd yVRlCT9OvrHs0bdp4+5MVhQQMkeP1cq2FP42Gbrs/dcVMClEJjjiij3Jn2+C8sw/ ScGdWnh92erJ0HX6hrMOtbhUA4w56A6atAktKs/AisqAdZRRSTmsR/E9fVcy0eKq VdVfDqQVG1GicH3Yam9YP8chk1mLqFDblGIj44hp6jLpbMXsj5+7J7j8zow= =t83z -----END PGP SIGNATURE----- --=-=-=-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: Zhu Zihao Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 08 Dec 2020 10:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.16074234483482 (code B ref 44920); Tue, 08 Dec 2020 10:31:02 +0000 Received: (at 44920) by debbugs.gnu.org; 8 Dec 2020 10:30:48 +0000 Received: from localhost ([127.0.0.1]:56628 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmaGa-0000u1-Nf for submit@debbugs.gnu.org; Tue, 08 Dec 2020 05:30:48 -0500 Received: from mail-m971.mail.163.com ([123.126.97.1]:58608) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmaGU-0000tc-Af for 44920@debbugs.gnu.org; Tue, 08 Dec 2020 05:30:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-ID:MIME-Version; bh=HCXlX QbQU7QiMelVpbQlaN8+jJq37GEZwObTST0Rzak=; b=Co63sTCWdZ4S6wNV++Vvn Ip682J3SOwk+9EpK3fxY0Pa6KE0hYkYU8P0rwC6uOtL/KqIXU7R86Q/rX8Sp9ErL a7unFjv7s0e3TDAtr21TxZKpzNIbXgzLl1kKdL3hCzmKt4Ni+ojmOMmD0DCia60t 5YbcYRaBE5+/Hd8jBLJi1k= Received: from asus-laptop (unknown [112.93.142.78]) by smtp1 (Coremail) with SMTP id GdxpCgAnVr7CVc9fMUDrAA--.28S2; Tue, 08 Dec 2020 18:30:29 +0800 (CST) References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao In-reply-to: Date: Tue, 08 Dec 2020 18:30:26 +0800 Message-ID: <86sg8gegjh.fsf@163.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-CM-TRANSID: GdxpCgAnVr7CVc9fMUDrAA--.28S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvjxUe-B_DUUUU X-Originating-IP: [112.93.142.78] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/xtbB8Qb0r12MYKYrnwAAsP X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" --==-=-= Content-Type: text/plain Thanks to upstream maintainer, Fcitx5 now allow us to install addon in separated prefix without many hacks. (Though some are still needed) --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/PVcIVHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamiJIIAK8owfgNMOiOd1Ijsemy4MrQQ89E WLHQZ8dN50SckapkvGsFtu6JpRmtdN1kqeJ2ZbKV6+5upqCKAmpmqKNnBeu6KRfL A12vXzOp9CeQdu5rJDix7wchTkpI7q66THKA0zsDykV4q2jfq40vk+EbcKPUSEHm cO16ZvENEQNdev3WG6e/OKlZQRP2mLXWxlWCGGQYc77fzI/1wy5vcvEVSORHS75u wHpLBDNmDAz4tJCaIqaXTgXFn1gNTt1Q+CdCY3i4ccszbDOsfGVILNQOSclphqEu CimxmLHxuWBVp9xcVDqiUkDbo72noF+3aN6HTX2tUObhiQKntkpP7TjVTXo= =w2px -----END PGP SIGNATURE----- --==-=-=-- --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-gnu-packages-fcitx5.patch Content-Transfer-Encoding: quoted-printable >From ff65eaa03b3dca992dc53e10c139a2601ccf9a53 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:29:58 +0800 Subject: [PATCH 01/10] gnu: Add (gnu packages fcitx5). * gnu/packages/fcitx5.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Reference to new file. --- gnu/local.mk | 1 + gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 gnu/packages/fcitx5.scm diff --git a/gnu/local.mk b/gnu/local.mk index 5277403196..e37f2dac70 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -204,6 +204,7 @@ GNU_SYSTEM_MODULES =3D \ %D%/packages/erlang.scm \ %D%/packages/fabric-management.scm \ %D%/packages/fcitx.scm \ + %D%/packages/fcitx5.scm \ %D%/packages/figlet.scm \ %D%/packages/file.scm \ %D%/packages/file-systems.scm \ diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..8c1fa49322 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,50 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2020 Zhu Zihao +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages fcitx5) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages boost) + #:use-module (gnu packages curl) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages iso-codes) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libevent) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages unicode) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) --=20 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-xcb-imdkit.patch >From f18d90b7b9a57a6855be72c8daccba7f98f08c4b Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:32:29 +0800 Subject: [PATCH 02/10] gnu: Add xcb-imdkit. * gnu/packages/fcitx5.scm(xcb-imdkit): New variable. --- gnu/packages/fcitx5.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 8c1fa49322..edfd6aca2b 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -48,3 +48,37 @@ #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) + +(define-public xcb-imdkit + (package + (name "xcb-imdkit") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/xcb-imdkit/xcb-imdkit-" + version ".tar.xz")) + (sha256 + (base32 "1qgbbp8y8ci7haz99vgbrgpjsbrwwyjianyhdvxcirnbm5bybvmz")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled uthash. + (delete-file-recursively "uthash") + #t)))) + (build-system cmake-build-system) + (inputs + `(("uthash" ,uthash) + ("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/xcb-imdkit") + (synopsis "Input method development support for XCB.") + (description "Xcb-imdkit is an implementation of xim protocol in XCB, +comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, +it has less memory foot print, better performance, and safer on malformed +client.") + (license license:lgpl2.1))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-fcitx5.patch >From 00d62c64b453f4053f9c31e37a5ee079233dedd1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:38:35 +0800 Subject: [PATCH 03/10] gnu: Add fcitx5. * gnu/packages/fcitx5.scm(fcitx5): New variable. --- gnu/packages/fcitx5.scm | 59 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index edfd6aca2b..b65d90f588 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -82,3 +82,62 @@ comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, it has less memory foot print, better performance, and safer on malformed client.") (license license:lgpl2.1))) + +(define-public fcitx5 + (package + (name "fcitx5") + (version "5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" + version "_dict.tar.xz")) + (sha256 + (base32 "06zkb33m2rnhg385iy79n3r4svz5jbav74di61xqa3lhbv7534s3")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLDR_DIR=" + (assoc-ref %build-inputs "unicode-cldr-common") + "/share/unicode/cldr")))) + (inputs + `(("cairo" ,cairo) + ("cairo-xcb" ,cairo-xcb) + ("dbus" ,dbus) + ("enchant" ,enchant) + ("expat" ,expat) + ("fmt" ,fmt) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("iso-codes" ,iso-codes) + ("json-c" ,json-c) + ("libevent" ,libevent) + ("libpthread-stubs" ,libpthread-stubs) + ("libuuid" ,util-linux "lib") + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxfixes" ,libxfixes) + ("libxinerama" ,libxinerama) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("pango" ,pango) + ("unicode-cldr-common" ,unicode-cldr-common) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-imdkit" ,xcb-imdkit) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("xkeyboard-config" ,xkeyboard-config))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "FCITX_ADDON_DIRS") + (files '("lib/fcitx5"))))) + (home-page "https://github.com/fcitx/fcitx5") + (synopsis "Input method framework") + (description "Fcitx 5 is a generic input method framework.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0004-gnu-Add-fcitx5-lua.patch >From c457b386b591b42c7fee42feba60d1d11a7e173f Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:39:29 +0800 Subject: [PATCH 04/10] gnu: Add fcitx5-lua. * gnu/packages/fcitx5.scm(fcitx5-lua): New variable. --- gnu/packages/fcitx5.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index b65d90f588..7fa35a372a 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -141,3 +141,27 @@ client.") (synopsis "Input method framework") (description "Fcitx 5 is a generic input method framework.") (license license:lgpl2.1+))) + +(define-public fcitx5-lua + (package + (name "fcitx5-lua") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" + version ".tar.xz")) + (sha256 + (base32 "177mj56j8yrl79hvk7bbrifvm137np23pwalv83ibgk4l51z92hf")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("lua" ,lua) + ("gettext" ,gettext-minimal) + ("libpthread-stubs" ,libpthread-stubs))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-lua") + (synopsis "Lua support for Fcitx 5") + (description "Fcitx5-lua allows writing Fcitx5 extension in Lua.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0005-gnu-Add-libime.patch >From 5d9940529b0ae06403ff7f5a2a176d5d14f1f44c Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:40:41 +0800 Subject: [PATCH 05/10] gnu: Add libime. * gnu/packages/fcitx5.scm(libime): New variable. --- gnu/packages/fcitx5.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 7fa35a372a..cfcb454fa9 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -165,3 +165,28 @@ client.") (synopsis "Lua support for Fcitx 5") (description "Fcitx5-lua allows writing Fcitx5 extension in Lua.") (license license:lgpl2.1+))) + +(define-public libime + (package + (name "libime") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" + version "_dict.tar.xz")) + (sha256 + (base32 "006pncby7p6h3rnicckzjwi6jzsrqiqbj6p9bpic80lanlllgw31")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("boost" ,boost))) + (native-inputs + `(("gcc" ,gcc-9) ;for #include and ld support + ("extra-cmake-modules" ,extra-cmake-modules) + ("python" ,python))) ;needed to run test + (home-page "https://github.com/fcitx/libime") + (synopsis "Library for implementing generic input method") + (description "Libime is a library for implmenting various input methods +editors.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0006-gnu-Add-fcitx5-qt.patch >From 3b2066d8e5e84020401d762a9584a77b55bb6304 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:42:43 +0800 Subject: [PATCH 06/10] gnu: Add fcitx5-qt. * gnu/packages/fcitx5.scm(fcitx5-qt): New variable. --- gnu/packages/fcitx5.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index cfcb454fa9..2ca1e8d8e5 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -190,3 +190,38 @@ client.") (description "Libime is a library for implmenting various input methods editors.") (license license:lgpl2.1+))) + +(define-public fcitx5-qt + (package + (name "fcitx5-qt") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-qt/fcitx5-qt-" + version ".tar.xz")) + (sha256 + (base32 "0ilhb4yw9k3m1c4fidnv3nd5dgm9xxds11dgdys6gswjjnmcgqqm")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=" + %output "/lib/qt5/plugins") + "-DENABLE_QT4=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("qtbase" ,qtbase) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-qt") + (synopsis "Qt library and IM module for Fcitx 5") + (description "Fcitx5-qt provides Qt library for development and IM module +for Qt based application.") + (license (list license:lgpl2.1+ + ;; Files under qt4(Fcitx5Qt4DBusAddons), qt5/dbusaddons + ;; and qt5/platforminputcontext. + license:bsd-3)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0007-gnu-Add-fcitx5-gtk.patch >From 61abe1f5eb7bb3bd4e80199fb8225be200a223e7 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:43:47 +0800 Subject: [PATCH 07/10] gnu: Add fcitx5-gtk. * gnu/packages/fcitx5.scm(fcitx5-gtk): New variable. --- gnu/packages/fcitx5.scm | 49 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 2ca1e8d8e5..13f4cd12ad 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -191,6 +191,55 @@ client.") editors.") (license license:lgpl2.1+))) +(define-public fcitx5-gtk + (package + (name "fcitx5-gtk") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-gtk/fcitx5-gtk-" + version ".tar.xz")) + (sha256 + (base32 "0h53liraqc5nz4nyi3ixdfdw3zzkdcsiff7j25acc3gmaa5gyij7")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;No test + #:configure-flags + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=" + %output "/share/gir-1.0") + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=" + %output "/lib/girepository-1.0")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (let ((gtk3 (assoc-ref outputs "gtk3"))) + + (substitute* "gtk3/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk3 "/lib"))))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxkbcommon" ,libxkbcommon) + ("gobject-introspection" ,gobject-introspection) + ("gtk2" ,gtk+-2) + ("gtk3" ,gtk+) + ("glib" ,glib) + ("libx11" ,libx11) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("glib" ,glib "bin"))) ;for glib-genmarshal + (outputs '("out" "gtk3")) + (home-page "https://github.com/fcitx/fcitx5-gtk") + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") + (description "Fcitx5-gtk provides a Glib based D-Bus client and IM module +for GTK+2/GTK+3 application.") + (license license:lgpl2.1+))) + (define-public fcitx5-qt (package (name "fcitx5-qt") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0008-gnu-Add-fcitx5-chinese-addons.patch >From f3d583ef9b349f1f848ac76d9d15ba30ec3c87b1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:37 +0800 Subject: [PATCH 08/10] gnu: Add fcitx5-chinese-addons. * gnu/packages/fcitx5.scm(fcitx5-chinese-addons): New variable. --- gnu/packages/fcitx5.scm | 61 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 13f4cd12ad..47386ea6a3 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -274,3 +274,64 @@ for Qt based application.") ;; Files under qt4(Fcitx5Qt4DBusAddons), qt5/dbusaddons ;; and qt5/platforminputcontext. license:bsd-3)))) + +(define-public fcitx5-chinese-addons + (package + (name "fcitx5-chinese-addons") + (version "5.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-chinese-addons/fcitx5-chinese-addons-" + version "_dict.tar.xz")) + (sha256 + (base32 "0mf91gzwzhfci0jn6g3l516xjw8r4v40ginnbl70h1zx6vr24rfp")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package closure + ;; by 800M on x86_64, so place it under another output. + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append (assoc-ref outputs "gui") "/lib")))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-lua" ,fcitx5-lua) + ("boost" ,boost) + ("libime",libime) + ("curl" ,curl) + ("gettext" ,gettext-minimal) + ("fmt" ,fmt) + ("libpthread-stubs" ,libpthread-stubs) + ("opencc" ,opencc) + ("qtbase" ,qtbase) + ("fcitx5-qt" ,fcitx5-qt) + ("qtwebkit" ,qtwebkit))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (outputs '("out" "gui")) + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") + (synopsis "Chinese related addons for Fcitx 5") + (description "Fcitx5-chinese-addons provides Chinese related addons, +including input methods previous bundled inside Fcitx 4: + +@itemize +@item Bingchan +@item Cangjie +@item Erbi +@item Pinyin +@item Shuangpin +@item Wanfeng +@item Wubi +@item Wubi Pinyin +@item Ziranma +@end itemize\n") + (license (list license:lgpl2.1+ + license:gpl2+ + ;; im/pinyin/emoji.txt + license:unicode)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0009-gnu-Add-fcitx5-configtool.patch >From 4ab7096a696c2fd0b0d6a43af89e2208dfbf1810 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:46:03 +0800 Subject: [PATCH 09/10] gnu: Add fcitx5-configtool. * gnu/packages/fcitx5.scm(fcitx5-configtool): New variable. --- gnu/packages/fcitx5.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 47386ea6a3..19d0f55a7c 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -335,3 +335,42 @@ including input methods previous bundled inside Fcitx 4: license:gpl2+ ;; im/pinyin/emoji.txt license:unicode)))) + +(define-public fcitx5-configtool + (package + (name "fcitx5-configtool") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5" + "/fcitx5-configtool/fcitx5-configtool-" version ".tar.xz")) + (sha256 + (base32 "0mrqhzvab41hkvhkz7vkb8d2mv5bgx4aqp9jpz4kf3kskwm1q14b")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + ;; KDE is currently not working on Guix, KCM supports doesn't make sense. + '("-DENABLE_KCM=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-qt" ,fcitx5-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libx11" ,libx11) + ("xkeyboard-config" ,xkeyboard-config) + ("libxkbfile" ,libxkbfile) + ("gettext" ,gettext-minimal) + ("iso-codes" ,iso-codes))) + (native-inputs + `(("gcc" ,gcc-9) + ("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/fcitx5-configtool") + (synopsis "Graphical configuration tool for Fcitx 5") + (description "Fcitx5-configtool is a graphical configuration tool +to manage different input methods in Fcitx 5.") + (license license:gpl2+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0010-gnu-Add-fcitx5-material-color-theme.patch >From d5089c5300a905bd50c1d58c0d0ec71334632945 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:45:06 +0800 Subject: [PATCH 10/10] gnu: Add fcitx5-material-color-theme. * gnu/packages/fcitx5.scm(fcitx5-material-color-theme): New variable. --- gnu/packages/fcitx5.scm | 70 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 19d0f55a7c..0a6a2c45e5 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -374,3 +374,73 @@ including input methods previous bundled inside Fcitx 4: (description "Fcitx5-configtool is a graphical configuration tool to manage different input methods in Fcitx 5.") (license license:gpl2+))) + +(define-public fcitx5-material-color-theme + (package + (name "fcitx5-material-color-theme") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hosxy/Fcitx5-Material-Color") + (commit version))) + (sha256 + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + + (let* ((out (assoc-ref outputs "out")) + (assets-dir (string-append + out "/share/fcitx5-material-color-theme")) + (themes-prefix (string-append out "/share/fcitx5/themes"))) + + (define (install-theme-variant variant target) + (let ((dir (string-append themes-prefix "/" target)) + (png (string-append "panel-" variant ".png")) + (conf (string-append "theme-" variant ".conf"))) + (format #t "install: Installing color variant \"~a\" to ~a~%" + variant dir) + (substitute* conf + (("^Name=.*") + (string-append "Name=" target "\n"))) + (mkdir-p dir) + (install-file png dir) + (copy-file conf (string-append dir "/theme.conf")) + (symlink (string-append assets-dir "/arrow.png") + (string-append dir "/arrow.png")))) + + (mkdir-p assets-dir) + (install-file "arrow.png" assets-dir) + (for-each + (lambda (x) + (install-theme-variant + x (string-append "Material-Color-" (string-capitalize x)))) + '("black" "blue" "brown" "indigo" + "orange" "pink" "red" "teal")) + + (install-theme-variant + "deepPurple" "Material-Color-DeepPurple") + #t)))))) + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") + (synopsis "Material Design for Fcitx 5") + (description "Fcitx5-material-color-theme is a Material Design theme +for Fcitx 5 with following color variants: + +@itemize +@item Black +@item Blue +@item Brown +@item Indigo +@item Orange +@item Pink +@item Red +@item teal +@item DeepPurple +@end itemize\n") + (license license:asl2.0))) -- 2.29.2 --=-=-= Content-Type: text/plain -- Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-=-- From unknown Sat Sep 20 08:59:28 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Zhu Zihao Subject: bug#44920: closed (Re: [bug#44920] [PATCH]: Add fcitx5.) Message-ID: References: <86360uujbf.fsf@163.com> X-Gnu-PR-Message: they-closed 44920 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 44920@debbugs.gnu.org Date: Tue, 08 Dec 2020 12:37:01 +0000 Content-Type: multipart/mixed; boundary="----------=_1607431021-12331-1" This is a multi-part message in MIME format... ------------=_1607431021-12331-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #44920: [PATCH]: Add fcitx5. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 44920@debbugs.gnu.org. --=20 44920: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D44920 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1607431021-12331-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 44920-done) by debbugs.gnu.org; 8 Dec 2020 12:36:54 +0000 Received: from localhost ([127.0.0.1]:56794 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmcEg-0003CT-5q for submit@debbugs.gnu.org; Tue, 08 Dec 2020 07:36:54 -0500 Received: from mail-oln040092253071.outbound.protection.outlook.com ([40.92.253.71]:25764 helo=APC01-SG2-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmcEb-0003C2-4s for 44920-done@debbugs.gnu.org; Tue, 08 Dec 2020 07:36:52 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YoPkXaKtF7SEzwyWwFoOG62UJwl2ZqkuLGFoNPrvIudVSPS4uDASz5eZYjmz0QqJFa3M3/U8YOmJcc/80hafIWmqaddBl4gQbrwYwV9sv6JLrMLzOgbZIFAIy2ikLbB+2EkeImxdoYY+9l9h5MRCJGa+jd2tZaDlHfXwbN7cDEvItew9RxLPYSrb3oZpHfHXBkC8NmYqU2aKujJAdMMEIPTbQDEfvB1HCrqg87njf0+Gav1RB78OqwUi8eLMuTPo3ZxbG+LwK9jbwGoGQ6GBq5KRWi66hxdfXjMiubsxAz8wZyb6J/YQ4uWTD2ZY/KrvG8vcHGKHqpjeYya4mzmjAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YdcLt6poMyz63td0dj19HxwHF5j8VwBKfDp+VeSS82U=; b=L/NL7lTp6n9ROUvmRqj5yNFSHfzx8+3fQEA5tBMvYmPiCmw7H0TNRNV90lUu8RGDtRMZYNws3MsYCB2+HuyTEVMQ+Qm/A1EsoGjiRzjHspti1X28oOFr6MgU75YIJ518Kf+yWIFps3MKl1ogtcPGHH8L/zQZgcccSCuObXPohouOZoZYwiqblOTIOYycPpHsFwdodwva1VkjBBWArBsTysPYk1MgialK/EaKkQ/WJYa6/2SjB5voOdh/Ecf9A1bRHA1bLfhzKWMxcbV6/f9IfZOSl17dMXl6A7eoel/KwKQyTm/Blna5f5Zebvj97OVC1tDJvOfcMPA1xBkNNIN3nQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YdcLt6poMyz63td0dj19HxwHF5j8VwBKfDp+VeSS82U=; b=Z0JxhBfFhyHSK2xIQ0awD1FZD55K4gS7pSCw6H2AF2fbNTxrIq0WoP30cys4wTTAlXe5DKKy63THwgMlKdpWA/lWPJ7O7Bt4uZq09UbGXXyhcpYWuQ2Lbt8LYQwRWqpF3bhT0zmC+5zwjldzk7WFYe37kXpigqqfqvY39APcWkGHPTFZfAoGGOXV3KnTzeLJ7nr+Qy128qwFD3KvN+4bb08uiY8eL2u2a9Zwn7YlBd/YKGn6vxNQbp57Nnu4xq6rFJDdLRwjhgF7CHNuL8tks5+fjj4jY34P1eUhPD9PRLz8sxtNrSLiw3RND4vj1Das3wnJF33LMfDrBfOwt00Clg== Received: from PU1APC01FT056.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::4e) by PU1APC01HT093.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::315) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17; Tue, 8 Dec 2020 12:36:39 +0000 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2a01:111:e400:7ebe::42) by PU1APC01FT056.mail.protection.outlook.com (2a01:111:e400:7ebe::354) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Tue, 8 Dec 2020 12:36:39 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:52C422AB929FFEBB007AEA95B4CE29D96D13847B3822F57DAA87807BE86F5C0F; UpperCasedChecksum:19CF17A6AAC53CB469A95D7CE6CBC68F5DA6C356B4D1E90CB343AC3798DF2EE9; SizeAsReceived:7770; Count:46 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb]) by TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb%8]) with mapi id 15.20.3632.017; Tue, 8 Dec 2020 12:36:39 +0000 From: =?utf-8?B?5a6L5paH5q2m?= To: Zhu Zihao Subject: Re: [bug#44920] [PATCH]: Add fcitx5. References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> <868sa9hdls.fsf@163.com> Date: Tue, 08 Dec 2020 20:37:19 +0800 In-Reply-To: <868sa9hdls.fsf@163.com> (Zhu Zihao's message of "Mon, 07 Dec 2020 22:53:19 +0800") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Content-Type: text/plain X-TMN: [edNMcjKO7W4IfYrTzLjREaml7jV4rhrTEPDnHItYptlygXwP7SddNdoeQNb92Xeo] X-ClientProxiedBy: HK2PR02CA0211.apcprd02.prod.outlook.com (2603:1096:201:20::23) To TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:8038::14) X-Microsoft-Original-Message-ID: <87o8j4qxs0.fsf@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost (2409:8a62:372:3600:2f1:f5ff:fe18:6bb) by HK2PR02CA0211.apcprd02.prod.outlook.com (2603:1096:201:20::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Tue, 8 Dec 2020 12:36:37 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: ea5c1585-70f5-40cd-5d0d-08d89b75e815 X-MS-TrafficTypeDiagnostic: PU1APC01HT093: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9SBIvKdfXzzDKgBZ03kSXOYnLJPAtFvfvZIZK+j6z2zKJSzW+d8zw966ebtuc2hHiV4RoxdO/yRIJhBUSIVOZezCWBqKU71A/H4QO5WTyxi1XsK03Fp0oXBAr14rIhsW6DoRv4jkEqABQWHGXxUQlY/bJyTBbtMxqBeJDHhNlbtYxP2twjy1QhG2/UOTG6yUUENkHWbtpHCh8z9LvhzX4A== X-MS-Exchange-AntiSpam-MessageData: 0vXqCEKnQBy/JOjO5+9Lircm+XUHPjNA9w1ghpjfOuFLW9m3huP9OSDYQGYOzD/geWZ4rWngnqVpkv95Hd/01qukgGvNBbqhqjjgGRYKwNE0+S8JGLm4MBKxfsVPIjgwuFEiRoF8WKRI8TTGjlzSidgPC1ZGj7ax1kazWccywNCbZXurR4GT9s7B3pt5RH8/LZgc4t4YKSGoECvZwdEhkg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ea5c1585-70f5-40cd-5d0d-08d89b75e815 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2020 12:36:38.9467 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: PU1APC01FT056.eop-APC01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PU1APC01HT093 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 44920-done Cc: 44920-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Zhu Zihao writes: > All Fcitx5 components updated. > > Here are the patches. > For fcitx5-gtk, I change the "gtk3" output to "gtk2", as GTK+ 3 is the default version. Applied, thank you! > BTW, fcitx5-chinese-addons contains a cloud pinyin feature, which use > Google or Baidu's cloud pinyin server. But it was disabled by default > and it'll ask user to enable it or not, should we make a patch to get > rid of such anti-features? I leave it in for now, maybe it's good to ask upstream for a disable option for cloudpinyin. ------------=_1607431021-12331-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 28 Nov 2020 05:45:06 +0000 Received: from localhost ([127.0.0.1]:46838 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kit2c-000473-5A for submit@debbugs.gnu.org; Sat, 28 Nov 2020 00:45:06 -0500 Received: from lists.gnu.org ([209.51.188.17]:34804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kit2X-00046K-75 for submit@debbugs.gnu.org; Sat, 28 Nov 2020 00:45:00 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55128) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kit2V-0005My-Ni for guix-patches@gnu.org; Sat, 28 Nov 2020 00:44:57 -0500 Received: from mail-m973.mail.163.com ([123.126.97.3]:38242) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kit2M-0006Bw-1a for guix-patches@gnu.org; Sat, 28 Nov 2020 00:44:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Message-ID:Date:MIME-Version; bh=XBY72 zqqNRxGYicBSs5sUqRiljGrCiohaGr2UIwHHdg=; b=fe0ihi9bN3DWC02dTLNWD u9j4c4gVvgU/haNbKTE38ZXJc/R+ZMSM5SFEAhbnWIIqSOBS7J0TjDxr68OHH7mY 9RloMiDRgUSawwTDCqoUnysOXYHtGPyfDuekJ3nZe/f/uqq4sbxRgMeTBdPplv7f cftkjU7UUCANYsa+uBIFCw= Received: from asus-laptop (unknown [27.39.89.62]) by smtp3 (Coremail) with SMTP id G9xpCgD3dsq948FfS0kfNQ--.46038S2; Sat, 28 Nov 2020 13:44:29 +0800 (CST) User-agent: mu4e 1.4.13; emacs 27.1 From: Zhu Zihao To: guix-patches@gnu.org Subject: [PATCH]: Add fcitx5. Message-ID: <86360uujbf.fsf@163.com> Date: Sat, 28 Nov 2020 13:44:20 +0800 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-CM-TRANSID: G9xpCgD3dsq948FfS0kfNQ--.46038S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvjxUoSoXDUUUU X-Originating-IP: [27.39.89.62] X-CM-SenderInfo: pdoosuxxwbztlvw6il2tof0z/xtbB8Qjqr12MYABM9AACs3 Received-SPF: pass client-ip=123.126.97.3; envelope-from=all_but_last@163.com; helo=mail-m973.mail.163.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --=-=-= Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" --==-=-= Content-Type: text/plain This is a series of patches, add fcitx5 and its build dependecies. a qt5 and gtk2/3 plugin, chinese inputmethod addon and a material theme --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFJBAEBCAAzFiEE7NCVzXX6efyusptG1SOVn+xGFqYFAl/B47QVHGFsbF9idXRf bGFzdEAxNjMuY29tAAoJENUjlZ/sRhamDv0H/R6frvIFOBz70Tyb/pJ5QR6H2RX2 wgpDK1ohZ5errFfFSnGBKgFvChlDc/r7uGg4OC33xd0EW82B+QZSdOfJff2QVq9n 13bPi0oHqKVkjyQ+DFl7xyOZUPCdQ2ysy6sSkC6QYwr8bcPS1/MBCltEOX6T6euU +PIcL/viNTb8vOTNmwj/GqD4xXyWsAh/6pUmy8jAC5j2knu5pMzVGpYR/L1Fx9le vcAfD7TskSTpXM5NfHrQDPuIRNz0HrwKr/jJobDiqWEYOjfpOx6tImKyuNP93qsv ew2sBphiSrqT8zeFM5zBT3QtQf7l7TM3n42V79iHbnBDQf7OgDcdKRToUMc= =MUcB -----END PGP SIGNATURE----- --==-=-=-- --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-xcb-imdkit.patch Content-Transfer-Encoding: quoted-printable >From cbe128e488078b3af8f7d1bdb4bf9dc9f12a2f0b Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:16:50 +0800 Subject: [PATCH 1/9] gnu: Add xcb-imdkit. * gnu/packages/fcitx5.scm: New file. (xcb-imdkit): New variable. --- gnu/packages/fcitx5.scm | 84 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 gnu/packages/fcitx5.scm diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..171d545ed8 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,84 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2020 Zhu Zihao +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages fcitx5) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages boost) + #:use-module (gnu packages curl) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages iso-codes) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libevent) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages unicode) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) + +(define-public xcb-imdkit + (package + (name "xcb-imdkit") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/xcb-imdki= t/xcb-imdkit-" + version ".tar.xz")) + (sha256 + (base32 "0qgbklk5a809asyaxi6v9iasxc19g16fc5rphnamhwrliczlycas")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled uthash. + (delete-file-recursively "uthash") + #t)))) + (build-system cmake-build-system) + (inputs + `(("uthash" ,uthash) + ("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/xcb-imdkit") + (synopsis "Input method development support for XCB.") + (description "Xcb-imdkit is an implementation of xim protocol in XCB, +comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, +it has less memory foot print, better performance, and safer on malformed +client.") + (license license:lgpl2.1))) --=20 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-fcitx5.patch >From 3870f53451deea014e9d28ce7df418bc9793d3e1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:19:26 +0800 Subject: [PATCH 2/9] gnu: Add fcitx5. * gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch: New file. * gnu/local.mk (dist_patch_DATA): Reference new patch. * gnu/packages/fcitx5.scm(fcitx5): New variable. --- gnu/local.mk | 1 + gnu/packages/fcitx5.scm | 63 ++++++++++ .../patches/fcitx5-allow-set-cldr-dir.patch | 114 ++++++++++++++++++ 3 files changed, 178 insertions(+) create mode 100644 gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5277403196..00ba3ee818 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -977,6 +977,7 @@ dist_patch_DATA = \ %D%/packages/patches/fasthenry-spSolve.patch \ %D%/packages/patches/fasthenry-spFactor.patch \ %D%/packages/patches/fbreader-curl-7.62.patch \ + %D%/packages/patches/fcitx5-allow-set-cldr-dir.patch \ %D%/packages/patches/fifengine-swig-compat.patch \ %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ %D%/packages/patches/fifo-map-remove-catch.hpp.patch \ diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 171d545ed8..c4ee0c6e3c 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -82,3 +82,66 @@ comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, it has less memory foot print, better performance, and safer on malformed client.") (license license:lgpl2.1))) + +(define-public fcitx5 + (package + (name "fcitx5") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" + version "_dict.tar.xz")) + (sha256 + (base32 "0ai7qkxvkdl5qmrvkjp53w1809hhla9csf04qsnf8k33pqbzdgw8")) + ;; This backport patch allow us to use CLDR data in unicode-cldr-common. + ;; it should be removed after upstream make a newer release. + (patches (search-patches "fcitx5-allow-set-cldr-dir.patch")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLDR_DIR=" + (assoc-ref %build-inputs "unicode-cldr-common") + "/share/unicode/cldr")))) + (inputs + `(("cairo" ,cairo) + ("cairo-xcb" ,cairo-xcb) + ("dbus" ,dbus) + ("enchant" ,enchant) + ("expat" ,expat) + ("fmt" ,fmt) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("iso-codes" ,iso-codes) + ("json-c" ,json-c) + ("libevent" ,libevent) + ("libpthread-stubs" ,libpthread-stubs) + ("libuuid" ,util-linux "lib") + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxfixes" ,libxfixes) + ("libxinerama" ,libxinerama) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("pango" ,pango) + ("unicode-cldr-common" ,unicode-cldr-common) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-imdkit" ,xcb-imdkit) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("xkeyboard-config" ,xkeyboard-config))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "FCITX_ADDON_DIRS") + (files '("lib/fcitx5"))))) + (home-page "https://github.com/fcitx/fcitx5") + (synopsis "Next generation of Fcitx") + (description "Fcitx 5 is a generic input method framework, the successor +of Fcitx.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch b/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch new file mode 100644 index 0000000000..a0c3b9b60f --- /dev/null +++ b/gnu/packages/patches/fcitx5-allow-set-cldr-dir.patch @@ -0,0 +1,114 @@ +https://github.com/fcitx/fcitx5/commit/a2b09de92a73dfa4ae43d3ac8a4ffa1aa791f6c5.patch +https://github.com/fcitx/fcitx5/issues/154 + +From a2b09de92a73dfa4ae43d3ac8a4ffa1aa791f6c5 Mon Sep 17 00:00:00 2001 +From: Weng Xuetian +Date: Sun, 22 Nov 2020 23:42:44 -0800 +Subject: [PATCH] Allow set CLDR dir + +Fix #154 +--- + CMakeLists.txt | 22 +++++++++++++++++++--- + config.h.in | 2 +- + src/modules/emoji/CMakeLists.txt | 2 +- + src/modules/emoji/emoji.cpp | 8 +++----- + 4 files changed, 24 insertions(+), 10 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e6763dd..fc84b4b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -29,6 +29,19 @@ option(ENABLE_WAYLAND "Enable wayland support" On) + option(ENABLE_DOC "Build doxygen" Off) + option(USE_SYSTEMD "Use systemd for event loop and dbus, will fallback to libevent/libdbus if not found." On) + option(ENABLE_XDGAUTOSTART "Enable xdg autostart desktop file installation" On) ++set(CLDR_DIR "" CACHE STRING "Unicode CLDR (Common Locale Data Repository) directory") ++ ++if (CLDR_DIR STREQUAL "") ++ if (IS_DIRECTORY "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") ++ set(CLDR_DIR "${CMAKE_INSTALL_FULL_DATADIR}/unicode/cldr") ++ else(IS_DIRECTORY "/usr/share/unicode/cldr") ++ set(CLDR_DIR "/usr/share/unicode/cldr") ++ endif() ++endif() ++ ++if (NOT IS_DIRECTORY "${CLDR_DIR}") ++ message(FATAL_ERROR "Could not find Unicode CLDR directory") ++endif() + + ####################################################################### + # Find packages +@@ -73,7 +86,6 @@ pkg_check_modules(CairoXCB IMPORTED_TARGET cairo-xcb) + pkg_check_modules(Pango IMPORTED_TARGET pango pangocairo) + pkg_check_modules(GdkPixbuf IMPORTED_TARGET gdk-pixbuf-2.0) + pkg_check_modules(GioUnix IMPORTED_TARGET gio-unix-2.0) +-pkg_check_modules(CldrEmojiAnnotation REQUIRED IMPORTED_TARGET cldr-emoji-annotation) + + if (ENABLE_WAYLAND) + find_package(Wayland REQUIRED COMPONENTS Client Egl) +@@ -106,10 +118,14 @@ else() + set(WAYLAND_FOUND FALSE) + endif() + ++if (NOT EXISTS "${CLDR_DIR}") ++ message(FATAL_ERROR "Could not find Unicode CLDR directory: ${CLDR_DIR}") ++endif() ++ + set(DEFAULT_XKB_RULES_FILES "${XKEYBOARDCONFIG_XKBBASE}/rules/${DEFAULT_XKB_RULES}.xml") + if (NOT EXISTS "${DEFAULT_XKB_RULES_FILES}") +-message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT_XKB_RULES_FILES}") +-endif () ++ message(FATAL_ERROR "Could not find default xkb rules file: ${DEFAULT_XKB_RULES_FILES}") ++endif() + + # directory needed by bsd + if(NOT CMAKE_INSTALL_LIBDATADIR) +diff --git a/config.h.in b/config.h.in +index 09bf002..4291152 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -33,7 +33,7 @@ + #cmakedefine HAS_DLMOPEN + #define XKEYBOARDCONFIG_DATADIR "@XKEYBOARDCONFIG_DATADIR@" + #define DBUS_SYSTEM_BUS_DEFAULT_ADDRESS "@DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@" +-#define CLDR_EMOJI_ANNOTATION_PREFIX "@CldrEmojiAnnotation_PREFIX@" ++#define CLDR_DIR "@CLDR_DIR@" + + #ifndef _GNU_SOURCE + #define _GNU_SOURCE +diff --git a/src/modules/emoji/CMakeLists.txt b/src/modules/emoji/CMakeLists.txt +index 9fa84bb..57ae48b 100644 +--- a/src/modules/emoji/CMakeLists.txt ++++ b/src/modules/emoji/CMakeLists.txt +@@ -1,4 +1,4 @@ +-if (NOT IS_DIRECTORY ${CldrEmojiAnnotation_PREFIX}/share/unicode/cldr/common/annotations) ++if ("${CLDR_DIR}" STREQUAL "" OR NOT IS_DIRECTORY "${CLDR_DIR}/common/annotations") + return() + endif() + +diff --git a/src/modules/emoji/emoji.cpp b/src/modules/emoji/emoji.cpp +index 5606a37..805aef7 100644 +--- a/src/modules/emoji/emoji.cpp ++++ b/src/modules/emoji/emoji.cpp +@@ -126,7 +126,7 @@ bool noSpace(const std::string &str) { + + const EmojiMap *Emoji::loadEmoji(const std::string &language, + bool fallbackToEn) { +- // This is to match the file in cldr-emoji-annotation. ++ // This is to match the file in CLDR. + static const std::unordered_map languageMap = { + {"zh_TW", "zh_Hant"}, {"zh_CN", "zh"}, {"zh_HK", "zh_Hant_HK"}}; + +@@ -172,10 +172,8 @@ const EmojiMap *Emoji::loadEmoji(const std::string &language, + return utf8::lengthValidated(str) > 2; + }}}; + const auto *filter = findValue(filterMap, lang); +- const auto file = +- stringutils::joinPath(CLDR_EMOJI_ANNOTATION_PREFIX, +- "/share/unicode/cldr/common/annotations", +- stringutils::concat(lang, ".xml")); ++ const auto file = stringutils::joinPath( ++ CLDR_DIR, "/common/annotations", stringutils::concat(lang, ".xml")); + EmojiParser parser(filter ? *filter : nullptr); + if (parser.parse(file)) { + emojiMap = &(langToEmojiMap_[lang] = std::move(parser.emojiMap_)); -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-fcitx5-lua.patch >From d1e53ec2239077da96d871900fbb4c6d2d274cc5 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:20:51 +0800 Subject: [PATCH 3/9] gnu: Add fcitx5-lua. * gnu/packages/fcitx5.scm(fcitx5-lua): New variable. --- gnu/packages/fcitx5.scm | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index c4ee0c6e3c..c48eafbad5 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -145,3 +145,47 @@ client.") (description "Fcitx 5 is a generic input method framework, the successor of Fcitx.") (license license:lgpl2.1+))) + +(define-public fcitx5-lua + (package + (name "fcitx5-lua") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" + version ".tar.xz")) + (sha256 + (base32 "0v4kjx5bargmzfm3v2kys1kzfbpkbd8inzw23y9hslc8h5zazj33")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + '("src/addonloader/CMakeLists.txt" + "src/imeapi/CMakeLists.txt")) + #t))))) + (inputs + `(("fcitx5" ,fcitx5) + ("lua" ,lua) + ("gettext" ,gettext-minimal) + ("libpthread-stubs" ,libpthread-stubs))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-lua") + (synopsis "Lua support for Fcitx 5") + (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0004-gnu-Add-libime.patch >From 69b4cfc316e81e9c0ebdb307af033bf2e0a5faca Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:21:38 +0800 Subject: [PATCH 4/9] gnu: Add libime. * gnu/packages/fcitx5.scm(libime): New variable. --- gnu/packages/fcitx5.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index c48eafbad5..9f031a1289 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -189,3 +189,28 @@ of Fcitx.") (synopsis "Lua support for Fcitx 5") (description "Fcitx5-lua allow user to write Fcitx5 extension in Lua.") (license license:lgpl2.1+))) + +(define-public libime + (package + (name "libime") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" + version "_dict.tar.xz")) + (sha256 + (base32 "0kymzn0srdmpbn43rg4zpz09baz3bcw18v648jsqsb2j488s2paq")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("boost" ,boost))) + (native-inputs + `(("gcc" ,gcc-9) ;for #include and ld support + ("extra-cmake-modules" ,extra-cmake-modules) + ("python" ,python))) ;needed to run test + (home-page "https://github.com/fcitx/libime") + (synopsis "Library supports generic input method implmentation") + (description "Libime is a library, being used to implment various input +methods for Fcitx 5.") + (license license:lgpl2.1+))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0005-gnu-Add-fcitx5-qt.patch >From 8af5ff96d20a5fd2b3faa43b05935f9755880959 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:24:20 +0800 Subject: [PATCH 5/9] gnu: Add fcitx5-qt. * gnu/packages/fcitx5.scm(fcitx5-qt): New variable. --- gnu/packages/fcitx5.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 9f031a1289..4e3ba010ef 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -214,3 +214,39 @@ of Fcitx.") (description "Libime is a library, being used to implment various input methods for Fcitx 5.") (license license:lgpl2.1+))) + +(define-public fcitx5-qt + (package + (name "fcitx5-qt") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-qt/fcitx5-qt-" + version ".tar.xz")) + (sha256 + (base32 "0s0spjr8m7dw2f18xxqg6lwn3y575g411j9j9w8xv1cqsm9fm49f")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=" + %output "/lib/qt5/plugins") + "-DENABLE_QT4=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("qtbase" ,qtbase) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-qt") + (synopsis "Qt library and IM module for Fcitx 5") + (description "Fcitx5-qt provides Qt library for development and IM module +for Qt5 based application.") + (license (list license:lgpl2.1+ + ;; Files under qt4/ which include Fcitx5Qt4DBusAddons Library + ;; and input context plugin and files under qt5/dbusaddons + ;; and qt5/platforminputcontext + license:bsd-3)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0006-gnu-Add-fcitx5-gtk.patch >From 9a4111139bc059fbacc2f6aa8a3d5922d4f837fd Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:19 +0800 Subject: [PATCH 6/9] gnu: Add fcitx5-gtk. * gnu/packages/fcitx5.scm(fcitx5-gtk): New variable. --- gnu/packages/fcitx5.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 4e3ba010ef..9673ff2c47 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -215,6 +215,56 @@ of Fcitx.") methods for Fcitx 5.") (license license:lgpl2.1+))) +(define-public fcitx5-gtk + (package + (name "fcitx5-gtk") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-gtk/fcitx5-gtk-" + version ".tar.xz")) + (sha256 + (base32 "0k09f3ca4jm4y33xr642wrbf2zfjqr7gjx1i28z0vwb1rmjn026y")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;No test + #:configure-flags + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=" + %output "/share/gir-1.0") + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=" + %output "/lib/girepository-1.0")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gtk3 (assoc-ref outputs "gtk3"))) + + (substitute* "gtk3/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk3 "/lib"))))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxkbcommon" ,libxkbcommon) + ("gobject-introspection" ,gobject-introspection) + ("gtk2" ,gtk+-2) + ("gtk3" ,gtk+) + ("glib" ,glib) + ("libx11" ,libx11) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("glib" ,glib "bin"))) ;for glib-genmarshal + (outputs '("out" "gtk3")) + (home-page "https://github.com/fcitx/fcitx5-gtk") + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") + (description "Fcitx5-qt provides a Glib based D-Bus client for development +and IM module for GTK+2/GTK+3 application.") + (license license:lgpl2.1+))) + (define-public fcitx5-qt (package (name "fcitx5-qt") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0007-gnu-Add-fcitx5-chinese-addons.patch >From f0905307b179d478475a0433cbebf1532ecf6a95 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:37 +0800 Subject: [PATCH 7/9] gnu: Add fcitx5-chinese-addons. * gnu/packages/fcitx5.scm(fcitx5-chinese-addons): New variable. --- gnu/packages/fcitx5.scm | 79 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 9673ff2c47..076a96992d 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -300,3 +300,82 @@ for Qt5 based application.") ;; and input context plugin and files under qt5/dbusaddons ;; and qt5/platforminputcontext license:bsd-3)))) + +(define-public fcitx5-chinese-addons + (package + (name "fcitx5-chinese-addons") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-chinese-addons/fcitx5-chinese-addons-" + version "_dict.tar.xz")) + (sha256 + (base32 "015yx7wwhyjnhbrx2akc90nnzvmyhv1jv2n0mv7x7hsj05m62q8l")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DFEM_INCLUDE_INSTALL_DIR=" %output "/include") + (string-append "-DFEM_LIB_INSTALL_DIR=" %output "/lib") + ;; "-DENABLE_GUI=Off" + ) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (x) + (format #t "patch-install-prefix: Fixing install prefix in ~a~%" + x) + (substitute* x + (("\\$\\{FCITX_INSTALL_PKGDATADIR\\}") + (string-append (assoc-ref outputs "out") + "/share/fcitx5")))) + (find-files "." "CMakeLists\\.txt$")) + #t)) + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package closure + ;; by 800M on x86_64, so place it under another output. + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append (assoc-ref outputs "gui") "/lib")))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-lua" ,fcitx5-lua) + ("boost" ,boost) + ("libime",libime) + ("curl" ,curl) + ("gettext" ,gettext-minimal) + ("fmt" ,fmt) + ("libpthread-stubs" ,libpthread-stubs) + ("opencc" ,opencc) + ("qtbase" ,qtbase) + ("fcitx5-qt" ,fcitx5-qt) + ("qtwebkit" ,qtwebkit))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (outputs '("out" "gui")) + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") + (synopsis "Chinese related addons for Fcitx 5") + (description "Fcitx5-chinese-addons provides Chinese related addons, +including input methods previous bundled inside Fcitx 4: + +@itemize +@item Bingchan +@item Cangjie +@item Erbi +@item Pinyin +@item Shuangpin +@item Wanfeng +@item Wubi +@item Wubi Pinyin +@item Ziranma +@end itemize\n") + (license (list license:lgpl2.1+ + license:gpl2+ + ;; im/pinyin/emoji.txt + license:unicode)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0008-gnu-Add-fcitx5-configtool.patch >From 95c20d878565cb3ff7870187e1806743d7e526f3 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:55 +0800 Subject: [PATCH 8/9] gnu: Add fcitx5-configtool. * gnu/packages/fcitx5.scm(fcitx5-configtool): New variable. --- gnu/packages/fcitx5.scm | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 076a96992d..bc8fa5d7dc 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -379,3 +379,45 @@ including input methods previous bundled inside Fcitx 4: license:gpl2+ ;; im/pinyin/emoji.txt license:unicode)))) + +(define-public fcitx5-configtool + (let ((revision "0") + (commit "9c01bfc7477c203443ed073397670df52d1a6fc0")) + (package + (name "fcitx5-configtool") + (version (git-version "5.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fcitx/fcitx5-configtool") + (commit commit))) + (sha256 + (base32 "03hfbr97953alxax3db1x16h17cgqx30xvqs070iz8rj232iiaia")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + ;; KDE is currently not working on Guix, KCM supports doesn't make sense. + '("-DENABLE_KCM=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-qt" ,fcitx5-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libx11" ,libx11) + ("xkeyboard-config" ,xkeyboard-config) + ("libxkbfile" ,libxkbfile) + ("gettext" ,gettext-minimal) + ("iso-codes" ,iso-codes))) + (native-inputs + `(("gcc" ,gcc-9) + ("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/fcitx5-configtool") + (synopsis "Graphical configuration tool for Fcitx 5") + (description "Fcitx5-configtool is a graphical configuration tool +written in Qt, design for managing different input methods running under +Fcitx 5.") + (license license:gpl2+)))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0009-gnu-Add-fcitx5-material-color-theme.patch >From 32f4fef151807a0620fec7654094ed3945a02bcf Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:27:08 +0800 Subject: [PATCH 9/9] gnu: Add fcitx5-material-color-theme. * gnu/packages/fcitx5.scm(fcitx5-material-color-theme): New variable. --- gnu/packages/fcitx5.scm | 70 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index bc8fa5d7dc..80fb989408 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -421,3 +421,73 @@ including input methods previous bundled inside Fcitx 4: written in Qt, design for managing different input methods running under Fcitx 5.") (license license:gpl2+)))) + +(define-public fcitx5-material-color-theme + (package + (name "fcitx5-material-color-theme") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hosxy/Fcitx5-Material-Color") + (commit version))) + (sha256 + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + + (let* ((out (assoc-ref outputs "out")) + (assets-dir (string-append + out "/share/fcitx5-material-color-theme")) + (themes-prefix (string-append out "/share/fcitx5/themes"))) + + (define (install-theme-variant variant target) + (let ((dir (string-append themes-prefix "/" target)) + (png (string-append "panel-" variant ".png")) + (conf (string-append "theme-" variant ".conf"))) + (format #t "install: Installing color variant \"~a\" to ~a~%" + variant dir) + (substitute* conf + (("^Name=.*") + (string-append "Name=" target "\n"))) + (mkdir-p dir) + (install-file png dir) + (copy-file conf (string-append dir "/theme.conf")) + (symlink (string-append assets-dir "/arrow.png") + (string-append dir "/arrow.png")))) + + (mkdir-p assets-dir) + (install-file "arrow.png" assets-dir) + (for-each + (lambda (x) + (install-theme-variant + x (string-append "Material-Color-" (string-capitalize x)))) + '("black" "blue" "brown" "indigo" + "orange" "pink" "red" "teal")) + + (install-theme-variant + "deepPurple" "Material-Color-DeepPurple") + #t)))))) + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") + (synopsis "Fcitx 5 theme use Material Design") + (description "Fcitx5-material-color-theme contains Material Design theme +with following color variants: + +@itemize +@item Black +@item Blue +@item Brown +@item Indigo +@item Orange +@item Pink +@item Red +@item teal +@item DeepPurple +@end itemize\n") + (license license:asl2.0))) -- 2.29.2 --=-=-= Content-Type: text/plain -- Retrieve my PGP public key: https://meta.sr.ht/~citreu.pgp Zihao --=-=-=-- ------------=_1607431021-12331-1-- From unknown Sat Sep 20 08:59:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#44920] [PATCH]: Add fcitx5. Resent-From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 08 Dec 2020 12:43:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44920 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Zhu Zihao Cc: 44920@debbugs.gnu.org Received: via spool by 44920-submit@debbugs.gnu.org id=B44920.160743136113170 (code B ref 44920); Tue, 08 Dec 2020 12:43:01 +0000 Received: (at 44920) by debbugs.gnu.org; 8 Dec 2020 12:42:41 +0000 Received: from localhost ([127.0.0.1]:56806 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmcKH-0003QJ-5T for submit@debbugs.gnu.org; Tue, 08 Dec 2020 07:42:41 -0500 Received: from mail-oln040092255091.outbound.protection.outlook.com ([40.92.255.91]:38015 helo=APC01-HK2-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kmcKF-0003Py-WD for 44920@debbugs.gnu.org; Tue, 08 Dec 2020 07:42:40 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gXNA4hex88zlJAiFYBnx81nCTtCCcl6H1YvLJH/hrxRRDq7jBzFQtqRTg3s/rx6lWG3+MrJuGh5MDAcfcOjxq5R/ZsKUxRfW64VKaIatrbV1Z+VlQZDdEgFTOuMzMry7wngTCO/hlZaKUo6ducH+I+VF6slx1rWrvF8SxKQlnGlAP8Awl+PE9W2mTXsWyJuQ0pWjxpt3MiQTKhGloekE+gWzuckJJ2+7WqRjCnpRSkACkCwzXc4Y1bbr9ViOO/H1R69ebN7a0glfO6JhUA1yYv9v7BcOGvCph/gpsjvt0Y3W+ajuftil8vgJB/SgNAhva2MFTug1geF4TcmlTjNtqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EylNvwMwDZ2iif/rSPg+dZ7jx2CeDZaks/7Z/hTPBV0=; b=Kvm2mkQyjZ9Cn1YVhiGCij6DxaDeYGOGqSGqk45vrRI1/+RuO2eI8pO8Rf5NiLVblUOUIsT5QSlIjIRnTFAM6v/wbJqIfdbk2zJJEEHMcN7swPmpw7swkJfrn9c1hxExct14u0n6rItBamPMjseINivfoWPVMT1ZYPfm5Xu8ycxsKyKKDFGFmJjiEt7qLyBZ7Eaz6OUtz5fxni0Bm6K+lAkIlTcSlOeN/wN9RuA5NKdtqYluXjSCX5oCAr5TLtR4ewc7EYSXaCKarCYbAwnxxFIz0K6DobIDgFYmOS0PWFADoMSrSacG0FkvBcYq9u0gt+VKLDrYskHMM4JEr+a5Tg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EylNvwMwDZ2iif/rSPg+dZ7jx2CeDZaks/7Z/hTPBV0=; b=oyGXdk2/J5V4kCPYVB7Z02V0g2Wpey6QJvPV4UYxYOZaz+5krelTJY6wsKphg0tp53VG+tmtPULoLV5tIJ4A2N5ohwKsPtv0XWszvuEmwQAfHbdxZetfasqbidMY8DHPMz0Koh+xrRRhegsmUOfvAnqcz+xzGPj+HCxVF5lZGEjDUYw2tOEzDDWMjNJ1Uu23ZZjKj98OgUS/3IhoKCZVzFDrihEy3YAW9MReNgiauUkKTGX1BiCOJ4nm975t6goSuYefLBCunUuy76921VA57P9wlUZJap7BUJr0QuzUxz78TLvZ6eAqVJwNOp8shmZABKO+8s6P5ydoExN0EqNWRA== Received: from PU1APC01FT056.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::46) by PU1APC01HT186.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebe::424) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17; Tue, 8 Dec 2020 12:42:28 +0000 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2a01:111:e400:7ebe::42) by PU1APC01FT056.mail.protection.outlook.com (2a01:111:e400:7ebe::354) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Tue, 8 Dec 2020 12:42:28 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:24CCB2EBC542EA69B67C0FB4EE4EFDE4D13659137F3B15FE440D4CEFF917FFE0; UpperCasedChecksum:5CA6F5D23EC487BFC34C8B72A2A4E814B3652BD64607804A34F85E4B230AB148; SizeAsReceived:7820; Count:46 Received: from TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb]) by TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM ([fe80::d802:80c9:f6bd:1fbb%8]) with mapi id 15.20.3632.017; Tue, 8 Dec 2020 12:42:28 +0000 From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= References: <86360uujbf.fsf@163.com> <87zh2v5y40.fsf@riseup.net> <86eek499my.fsf@163.com> <6f3f5dce.29ab.17638b4bb4c.Coremail.all_but_last@163.com> <86sg8gegjh.fsf@163.com> Date: Tue, 08 Dec 2020 20:43:09 +0800 In-Reply-To: <86sg8gegjh.fsf@163.com> (Zhu Zihao's message of "Tue, 08 Dec 2020 18:30:26 +0800") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Content-Type: text/plain X-TMN: [2anxwRJ1kSFCqEJg1hCRF1XvYD+rZSqv+f7a1HfIQhPW/xQrlFjrw58OYbHP+EIG] X-ClientProxiedBy: HK2PR04CA0083.apcprd04.prod.outlook.com (2603:1096:202:15::27) To TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:8038::14) X-Microsoft-Original-Message-ID: <87k0tsqxia.fsf@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost (2409:8a62:372:3600:2f1:f5ff:fe18:6bb) by HK2PR04CA0083.apcprd04.prod.outlook.com (2603:1096:202:15::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17 via Frontend Transport; Tue, 8 Dec 2020 12:42:27 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 844ee001-f586-4d6f-c09c-08d89b76b8c8 X-MS-TrafficTypeDiagnostic: PU1APC01HT186: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5gn4EO8Zy+inEvwejPnaPvFrfBgD1ilI4h6ZDyGxqt2xT3IT311RNvXvniNZdywwK4Sspnh3TDpawrIE15jREGlLQWnq5lKQdZHpzs6gSL8P949alYmF80rnmnbc2yYtMWmvemAdloEaXqaKDz9od7A4JzTsyP2fOaR7kmZRkL0czfJfwRIiSGq6+8Uxntnny+hXJRgpipOdOii/vAXvXQ== X-MS-Exchange-AntiSpam-MessageData: aATiiHtWSVETAEymZi9rr+SBvCPs0JrWsoE9pmcVgcZjdG8w7znSrrxw3mgs0KLAUGnp0Zb2bTLKn0fDL0kbJDo13pzjIIjLhJ37MhKl+eHajo5AXCJkaJO0d3ktI2tK6k7gV5bbxE+eVhDt0S5u0/F2jaPv0qI1BR1ZRTWtb9ibaTunAdIjLGB3MNZgvFhTCoeCegGVx8DhimUQg8Gj5w== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 844ee001-f586-4d6f-c09c-08d89b76b8c8 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2020 12:42:28.5269 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: PU1APC01FT056.eop-APC01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PU1APC01HT186 X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Zhu Zihao writes: > Thanks to upstream maintainer, Fcitx5 now allow us to install addon in > separated prefix without many hacks. (Though some are still needed) > Oh, sorry for my ignorance, I missed this one, as the previous patches already pushed, could you rebase this patch for master? Thank you!