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 © 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-imdkit/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))) -- 2.29.2