From ad6cf3d4adddf39fbd8318b96756abd933ff6735 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:29:58 +0800 Subject: gnu: Add xcb-imdkit. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 gnu/packages/fcitx5.scm (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..1c81e35862 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,62 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 build-system cmake) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages pkg-config) + #: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))) -- cgit v1.2.3 From aa5cfb39a5e4d2c5d394d013d222e0d56bb6b0a1 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:38:35 +0800 Subject: gnu: Add fcitx5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 73 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 1c81e35862..41d163c45b 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -22,8 +22,21 @@ #:use-module (guix build-system cmake) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #: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 pkg-config) + #:use-module (gnu packages pretty-print) + #: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 @@ -60,3 +73,63 @@ 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+))) -- cgit v1.2.3 From 2d07803be80d36c90fcc9ec44a796e4f09a37ebd Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:39:29 +0800 Subject: gnu: Add fcitx5-lua. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-lua): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 41d163c45b..0a71f68534 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -31,6 +31,7 @@ #: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 unicode) @@ -133,3 +134,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"))))))) + (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+))) -- cgit v1.2.3 From 69d3419ca3b60f4f7edfbd424edbcbd0a73cd976 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:40:41 +0800 Subject: gnu: Add libime. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (libime): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 0a71f68534..d9d98b4794 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -21,9 +21,11 @@ #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages boost) #:use-module (gnu packages datastructures) #:use-module (gnu packages enchant) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) @@ -34,6 +36,7 @@ #: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 unicode) #:use-module (gnu packages web) #:use-module (gnu packages xdisorg) @@ -178,3 +181,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+))) -- cgit v1.2.3 From 4394d3721a25eb103bff24404e90e1a6c7049166 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:42:43 +0800 Subject: gnu: Add fcitx5-qt. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-qt): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index d9d98b4794..ee479156b9 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -37,6 +37,7 @@ #: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 unicode) #:use-module (gnu packages web) #:use-module (gnu packages xdisorg) @@ -206,3 +207,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)))) -- cgit v1.2.3 From d4aca38b50d75cff9bd065a855e7368a51843db4 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:43:47 +0800 Subject: gnu: Add fcitx5-gtk. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-gtk): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index ee479156b9..bdebe579a9 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -208,6 +208,57 @@ 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")) + (gtk2 (assoc-ref outputs "gtk2"))) + ;; Install GTK+ 2 input method module to its own output. + (substitute* "gtk2/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk2 "/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 + ;; TODO: Add "lib" output to reduce the closure size of "gtk2". + (outputs '("out" "gtk2")) + (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") -- cgit v1.2.3 From 9a23698ecd1f444bb63a3829f6a69ec8b3c5ea8e Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sat, 28 Nov 2020 13:25:37 +0800 Subject: gnu: Add fcitx5-chinese-addons. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-chinese-addons): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 78 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index bdebe579a9..5de32e3c71 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -22,6 +22,7 @@ #:use-module (guix build-system cmake) #:use-module ((guix licenses) #:prefix license:) #: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) @@ -38,6 +39,7 @@ #: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) @@ -293,3 +295,79 @@ 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$")))) + (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)))) -- cgit v1.2.3 From ac1c7530d84aa80dedae60ca0737c270852d8d07 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:46:03 +0800 Subject: gnu: Add fcitx5-configtool. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-configtool): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 5de32e3c71..69632d8511 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -371,3 +371,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+))) -- cgit v1.2.3 From af34f757ced016956cc73e1d9ddc52d4d79620f2 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 7 Dec 2020 22:45:06 +0800 Subject: gnu: Add fcitx5-material-color-theme. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-material-color-theme): New variable. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 71 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 69632d8511..b14385d9b2 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -19,7 +19,9 @@ (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 boost) #:use-module (gnu packages curl) @@ -410,3 +412,72 @@ 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"))))))) + (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))) -- cgit v1.2.3 From adbb62f16e09f219c465dcaffc321eb311eaed86 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 8 Dec 2020 18:14:31 +0200 Subject: gnu: fcitx5-material-color-theme: Add source file-name. * gnu/packages/fcitx5.scm (fcitx5-material-color-theme)[source]: Add file-name field. --- gnu/packages/fcitx5.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index b14385d9b2..89de7b4dcf 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -423,6 +423,7 @@ to manage different input methods in Fcitx 5.") (uri (git-reference (url "https://github.com/hosxy/Fcitx5-Material-Color") (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) (build-system copy-build-system) -- cgit v1.2.3 From 2639a99cf31e3ce2970645badf11f15679c893b5 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Tue, 8 Dec 2020 21:44:38 +0800 Subject: gnu: fcitx5-lua: Remove stale build steps. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx-lua)[arguments]: Remove it. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 19 ------------------- 1 file changed, 19 deletions(-) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 89de7b4dcf..431aeceb02 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -156,25 +156,6 @@ client.") (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"))))))) (inputs `(("fcitx5" ,fcitx5) ("lua" ,lua) -- cgit v1.2.3 From 91e35e32a4938e0e37499c64fa8ed3e7cf51dce3 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Tue, 8 Dec 2020 21:45:56 +0800 Subject: gnu: fcitx5-chinese-addons: Remove stale build steps. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fcitx5.scm (fcitx5-chinese-addons)[arguments] : Remove it. : Remove phase 'patch-install-prefix'. Signed-off-by: 宋文武 --- gnu/packages/fcitx5.scm | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) (limited to 'gnu/packages/fcitx5.scm') diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 431aeceb02..ed0d928fc7 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -293,23 +293,8 @@ for Qt based application.") (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 + `(#: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$")))) (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. -- cgit v1.2.3