;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
-;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (gnu packages)
+ #:use-module (gnu packages anthy)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages emacs)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages libbsd)
+ #:use-module (gnu packages libedit)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages m4)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-crypto)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages spice)
#:use-module (gnu packages video)
#:use-module (gnu packages xiph)
("xproto" ,xproto)))
(arguments
`(#:phases
- (alist-cons-after
- 'install 'install-data
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((cf-files (assoc-ref inputs "xorg-cf-files"))
- (out (assoc-ref outputs "out"))
- (unpack (assoc-ref %standard-phases 'unpack))
- (patch-source-shebangs
- (assoc-ref %standard-phases 'patch-source-shebangs)))
- (mkdir "xorg-cf-files")
- (with-directory-excursion "xorg-cf-files"
- (apply unpack (list #:source cf-files))
- (apply patch-source-shebangs (list #:source cf-files))
- (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
- "linux.cf" "Amoeba.cf" "cygwin.cf")
- (("/bin/sh") (which "bash")))
- (and (zero? (system* "./configure"
- (string-append "SHELL=" (which "bash"))
- (string-append "--prefix=" out)))
- (zero? (system* "make" "install"))))))
- %standard-phases)))
- (home-page "http://www.x.org")
+ (modify-phases %standard-phases
+ (add-after 'install 'install-data
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((cf-files (assoc-ref inputs "xorg-cf-files"))
+ (out (assoc-ref outputs "out"))
+ (unpack (assoc-ref %standard-phases 'unpack))
+ (patch-source-shebangs
+ (assoc-ref %standard-phases 'patch-source-shebangs)))
+ (mkdir "xorg-cf-files")
+ (with-directory-excursion "xorg-cf-files"
+ (apply unpack (list #:source cf-files))
+ (apply patch-source-shebangs (list #:source cf-files))
+ (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
+ "linux.cf" "Amoeba.cf" "cygwin.cf")
+ (("/bin/sh") (which "bash")))
+ (and (zero? (system* "./configure"
+ (string-append "SHELL=" (which "bash"))
+ (string-append "--prefix=" out)))
+ (zero? (system* "make" "install"))))))))))
+ (home-page "https://www.x.org/")
(synopsis "Source code configuration and build system")
(description
"Imake is a deprecated source code configuration and build system which
`(("pkg-config" ,pkg-config)))
(inputs
`(("xproto" ,xproto)))
- (home-page "http://www.x.org")
+ (home-page "https://www.x.org/")
(synopsis "Symlink directory into tree")
(description "Create a shadow directory of symbolic links to another
directory tree.")
(define-public bdftopcf
(package
(name "bdftopcf")
- (version "1.0.5")
+ (version "1.1")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "09i03sk878cmx2i40lkpsysn7zqcvlczb30j7x3lryb11jz4gx1q"))))
+ "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"))))
(build-system gnu-build-system)
(inputs
- `(("libxfont" ,libxfont)))
+ `(("libxfont" ,libxfont2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://www.x.org/wiki/")
(define-public editres
(package
(name "editres")
- (version "1.0.6")
+ (version "1.0.7")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "1w2d5hb5pw9ii2jlf4yjlp899402zfwc8hdkpdr3i1fy1cjd2riv"))))
+ "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(define-public iceauth
(package
(name "iceauth")
- (version "1.0.7")
+ (version "1.0.8")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "02izdyzhwpgiyjd8brzilwvwnfr72ncjb6mzz3y1icwrxqnsy5hj"))))
+ "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"))))
(build-system gnu-build-system)
(inputs
`(("libice" ,libice)))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("xproto" ,xproto)))
- (home-page "http://xorg.freedesktop.org")
+ (home-page "https://www.x.org/")
(synopsis "Xorg shared memory fences library")
(description
"This library provides an interface to shared-memory fences for
(define-public libpciaccess
(package
(name "libpciaccess")
- (version "0.13.5")
+ (version "0.14")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "16dr80rdw5bzdyhahvilfjrflj7scs2yl2mmghsb84f3nglm8b3m"))))
+ "197jbcpvp4z4x6j705mq2y4fsnnypy6f85y8xalgwhgx5bhl7x9x"))))
(build-system gnu-build-system)
(arguments
'(;; Make sure libpciaccess can read compressed 'pci.ids' files as
(define-public libxres
(package
(name "libxres")
- (version "1.0.7")
+ (version "1.2.0")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "1rd0bzn67cpb2qkc946gch2183r4bdjfhs6cpqbipy47m9a91296"))))
+ "1m0jr0lbz9ixpp9ihk68349q0i7ry2379lnfzdy4mrl86ijc2xgz"))))
(build-system gnu-build-system)
(inputs
`(("xproto" ,xproto)
(define-public xf86-video-intel
- (let ((commit "c89905754b929f0421db7ea6d60b8942ccdbd8af")
- (revision "8"))
+ (let ((commit "af6d8e9e8f546e5cba60e3a62765c2dbd0328e83")
+ (revision "9"))
(package
(name "xf86-video-intel")
(version (string-append "2.99.917-" revision "-"
(commit commit)))
(sha256
(base32
- "1xiyxhlq88vvgjavhxdkk933b5q7vm4jn6db144a6sqzifwaj672"))
+ "0f6sbkgykvvdggy8z6y7blf7yharg9vmiixxy190643bjxlnpp2s"))
(file-name (string-append name "-" version))))
(build-system gnu-build-system)
(inputs `(("mesa" ,mesa)
(define-public xf86-video-vesa
(package
(name "xf86-video-vesa")
- (version "2.3.4")
+ (version "2.4.0")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "1haiw8r1z8ihk68d0jqph2wsld13w4qkl86biq46fvyxg7cg9pbv"))))
+ "1373vsxn6qh00na0s9c09kf09gj78rzi98zq93id8v5zsya3qi5z"))))
(build-system gnu-build-system)
(inputs `(("xorg-server" ,xorg-server)))
(native-inputs `(("pkg-config" ,pkg-config)))
(define-public xkeyboard-config
(package
(name "xkeyboard-config")
- (version "2.21")
+ (version "2.22")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "1iffxpchy6dfgbby23nfsqqk17h9lfddlmjnhwagqag1z94p1h9h"))))
+ "1garmbyfjp0han04l2l90zzwlfbdgdxl6r1qnic36i5wkycckbny"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
`(("xproto" ,xproto)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://www.x.org/wiki/")
+ (home-page "https://www.x.org/wiki/")
(synopsis "X color name database")
(description
"This package provides the X color name database.")
common definitions and porting layer.")
(license license:x11)))
+(define-public xorgproto
+ (package
+ (name "xorgproto")
+ (version "2018.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://xorg/individual/proto/"
+ name "-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "180mqkp70i44rkmj430pmn9idssvffrgv4y5h19fm698a7h8bs7y"))))
+ (build-system gnu-build-system)
+ (propagated-inputs
+ ;; To get util-macros in (almost?) all package inputs.
+ `(("util-macros" ,util-macros)))
+ (home-page "https://cgit.freedesktop.org/xorg/proto/xorgproto")
+ (synopsis "Xorg protocol headers")
+ (description
+ "This package provides the headers and specification documents defining
+the core protocol and (many) extensions for the X Window System.")
+ (license license:x11)))
;; packages of height 2 in the propagated-inputs tree
(define-public libxfont
(package
(name "libxfont")
- (version "1.5.2")
+ (version "1.5.4")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "0w8d07bkmjiarkx09579bl8zsq903mn8javc7qpi0ix4ink5x502"))))
+ "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"))))
(build-system gnu-build-system)
(propagated-inputs
`(("fontsproto" ,fontsproto)
(define-public libxfont2
(package
(inherit libxfont)
- (version "2.0.1")
+ (version "2.0.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://xorg/individual/lib/libXfont2-"
version ".tar.bz2"))
(sha256
(base32
- "0znvwk36nhmyqpmhbm9mzisgixp1mp5qkfald8x1n5yxbm3vpyz9"))))))
+ "0klwmimmhm3axpj8pwn5l41lbggh47r5aazhw63zxkbwfgyvg2hf"))))))
(define-public libxi
(package
(define-public xorg-server
(package
(name "xorg-server")
- (version "1.19.3")
+ (version "1.19.6")
(source
(origin
(method url-fetch)
name "-" version ".tar.bz2"))
(sha256
(base32
- "162s1v901djr57gxmmk4airk8hiwcz79dqyz72972x1lw1k82yk7"))
+ "15y13ihgkggmly5s07vzvpn35gzx1w0hrkbnlcvcy05h3lpm0cm7"))
(patches
- (cons
+ (list
;; See:
;; https://lists.fedoraproject.org/archives/list/devel@lists.
;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
(sha256
(base32
"0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
- (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))
- (search-patches "xorg-server-CVE-2017-10971.patch"
- "xorg-server-CVE-2017-10972.patch")))))
+ (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))))))
(build-system gnu-build-system)
(propagated-inputs
`(("dri2proto" ,dri2proto)
;; It's not used anyway, so set it to empty.
"--with-default-font-path="
+ ;; The default is to use "uname -srm", which captures the kernel
+ ;; version and makes builds non-reproducible.
+ "--with-os-name=GNU"
+
+ "--with-os-vendor=GuixSD" ;not strictly needed, but looks nice
+
;; For the log file, etc.
"--localstatedir=/var"
#:phases
(modify-phases %standard-phases
- (add-before
- 'configure 'pre-configure
- (lambda _
- (substitute* (find-files "." "\\.c$")
- (("/bin/sh") (which "sh")))
-
- ;; Don't try to 'mkdir /var'.
- (substitute* "hw/xfree86/Makefile.in"
- (("\\$\\(MKDIR_P\\).*logdir.*")
- "true\n"))
- #t)))))
+ (add-before 'configure 'pre-configure
+ (lambda _
+ (substitute* (find-files "." "\\.c$")
+ (("/bin/sh") (which "sh")))
+
+ ;; Don't try to 'mkdir /var'.
+ (substitute* "hw/xfree86/Makefile.in"
+ (("\\$\\(MKDIR_P\\).*logdir.*")
+ "true\n"))
+
+ ;; Strip timestamps that would otherwise end up in the 'Xorg'
+ ;; binary.
+ (substitute* "configure"
+ (("^BUILD_DATE=.*$")
+ "BUILD_DATE=19700101\n")
+ (("^BUILD_TIME=.*$")
+ "BUILD_TIME=000001\n"))
+
+ #t)))))
(home-page "https://www.x.org/wiki/")
(synopsis "Xorg implementation of the X Window System")
(description
(define-public libxcursor
(package
(name "libxcursor")
- (version "1.1.14")
+ (version "1.1.15")
(source
(origin
(method url-fetch)
".tar.bz2"))
(sha256
(base32
- "1prkdicl5y5yx32h1azh6gjfbijvjp415javv8dsakd13jrarilv"))))
+ "0syzlfvh29037p0vnlc8f3jxz8nl55k65blswsakklkwsc6nfki9"))))
(build-system gnu-build-system)
(propagated-inputs
`(("libx11" ,libx11)
("xproto" ,xproto)))
(native-inputs
`(("pkg-config" ,pkg-config)))
+;; TODO: add XCURSOR_PATH=.../share/icons to profile search paths, so
+;; libXcursor finds cursors installed into a profile. If we solve bugs
+;; <http://bugs.gnu.org/20255> and <http://bugs.gnu.org/22138>, we can fix
+;; this with a search-path as follows:
+;;
+;; (native-search-paths
+;; (list (search-path-specification
+;; (variable "XCURSOR_PATH")
+;; (files '("share/icons")))))
(home-page "https://www.x.org/wiki/")
(synopsis "Xorg Cursor management library")
(description "Xorg Cursor management library.")
(license license:x11)))
-
(define-public libxt
(package
(name "libxt")
`(("pkg-config" ,pkg-config)))
(propagated-inputs
`(("xauth" ,xauth)))
- (home-page "http://x.org")
+ (home-page "https://www.x.org/")
(synopsis "Commands to start the X Window server")
(description
"The xinit program is used to start the X Window System server and a
(define-public xterm
(package
(name "xterm")
- (version "330")
+ (version "331")
(source (origin
(method url-fetch)
- (uri (string-append "ftp://ftp.invisible-island.net/xterm/"
- "xterm-" version ".tgz"))
+ (uri (list
+ (string-append "http://invisible-mirror.net/archives/xterm/"
+ name "-" version ".tgz")
+ (string-append "ftp://ftp.invisible-island.net/xterm/"
+ name "-" version ".tgz")))
(sha256
(base32
- "1psnfmqd23v9gxj8a98nzrgvymrk0p1whwqi92gy15bbkzrgkvks"))))
+ "047gk58hvj64974sg259ss5gixj7pac6halmjfz4cc6r1yimds4s"))))
(build-system gnu-build-system)
(arguments
- '(#:configure-flags '("--enable-wide-chars" "--enable-256-color"
- "--enable-load-vt-fonts" "--enable-i18n"
- "--enable-doublechars" "--enable-luit"
- "--enable-mini-luit")
+ '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
+ "--enable-i18n" "--enable-doublechars"
+ "--enable-luit" "--enable-mini-luit")
#:tests? #f))
(native-inputs
`(("pkg-config" ,pkg-config)))
("libXt" ,libxt)
("xproto" ,xproto)
("libXaw" ,libxaw)))
- (home-page "http://invisible-island.net/xterm")
+ (home-page "https://invisible-island.net/xterm/")
(synopsis "Terminal emulator for the X Window System")
(description
"The xterm program is a terminal emulator for the X Window System. It
(define-public perl-x11-xcb
(package
(name "perl-x11-xcb")
- (version "0.16")
+ (version "0.17")
(source (origin
(method url-fetch)
(uri (string-append
"X11-XCB-" version ".tar.gz"))
(sha256
(base32
- "14mnvr1001py2z1n43l18yaw0plwvjg5pcsyc7k81sa0amw8ahzw"))))
+ "12qyf98s5hbybmh0mblpz50c00i68srq73w5rw31m2dhclj8n96q"))))
(build-system perl-build-system)
(arguments
'(;; Disable parallel build to prevent a race condition.
(define-public xpra
(package
(name "xpra")
- (version "2.1.1")
+ (version "2.2.5")
(source
(origin
(method url-fetch)
version ".tar.xz"))
(sha256
(base32
- "0fgdddhafxnpjlw5nhfyfyimxp43hdn4yhp1vbsjrz3ypfsfhxq7"))))
+ "1q2l00nc3bgwlhjzkbk4a8x2l8z9w1799yn31icsx5hrgh98a1js"))))
(build-system python-build-system)
- (inputs `(("ffmpeg", ffmpeg)
- ("flac", flac)
+ (inputs `(("ffmpeg" ,ffmpeg)
+ ("flac" ,flac)
("gtk+-2" ,gtk+-2) ;; no full GTK3 support yet
- ("libjpeg", libjpeg)
- ("libpng", libpng)
- ("libvpx", libvpx)
- ("libx264", libx264)
- ("libxcomposite", libxcomposite)
- ("libxdamage", libxdamage)
- ("libxkbfile", libxkbfile)
- ("libxrandr", libxrandr)
- ("libxtst", libxtst)
- ("lzo", lzo)
- ("python2-cryptography", python2-cryptography)
- ("python2-dbus", python2-dbus)
- ("python2-lz4", python2-lz4)
- ("python2-lzo", python2-lzo)
- ("python2-numpy", python2-numpy)
+ ("libjpeg" ,libjpeg)
+ ("libpng" ,libpng)
+ ("libvpx" ,libvpx)
+ ("libx264" ,libx264)
+ ("libxcomposite" ,libxcomposite)
+ ("libxdamage" ,libxdamage)
+ ("libxkbfile" ,libxkbfile)
+ ("libxrandr" ,libxrandr)
+ ("libxtst" ,libxtst)
+ ("lzo" ,lzo)
+ ("python2-cryptography" ,python2-cryptography)
+ ("python2-dbus" ,python2-dbus)
+ ("python2-lz4" ,python2-lz4)
+ ("python2-lzo" ,python2-lzo)
+ ("python2-netifaces" ,python2-netifaces)
+ ("python2-numpy" ,python2-numpy)
("python2-pillow" ,python2-pillow)
- ("python2-pycairo", python2-pycairo)
- ("python2-pycrypto", python2-pycrypto)
- ("python2-pygobject", python2-pygobject)
- ("python2-pyopengl", python2-pyopengl)
- ("python2-pygtk", python2-pygtk)
- ("python2-rencode", python2-rencode)
- ("xorg-server", xorg-server)))
+ ("python2-pycairo" ,python2-pycairo)
+ ("python2-pycrypto" ,python2-pycrypto)
+ ("python2-pygobject" ,python2-pygobject)
+ ("python2-pyopengl" ,python2-pyopengl)
+ ("python2-pyopengl-accelerate" ,python2-pyopengl-accelerate)
+ ("python2-pygtk" ,python2-pygtk)
+ ("python2-rencode" ,python2-rencode)
+ ("xorg-server" ,xorg-server)))
(native-inputs `(("pkg-config" ,pkg-config)
("python2-cython", python2-cython)))
(arguments
`(#:python ,python-2 ;; no full Python 3 support yet
#:configure-flags '("--with-tests"
"--with-bundle_tests"
+ "--without-Xdummy" ;; We use Xvfb instead.
+ "--without-Xdummy_wrapper"
"--without-strict")
#:modules ((guix build python-build-system)
(guix build utils))
(substitute* "setup.py"
(("/usr/lib/")
(string-append (assoc-ref outputs "out") "/lib/")))
- (substitute* "./etc/xpra/conf.d/55_server_x11.conf.in"
- (("xvfb = %.*")
- (string-append "xvfb = "
- (assoc-ref inputs "xorg-server")
- "/bin/Xvfb +extension Composite -nolisten tcp"
- " -noreset -auth $XAUTHORITY"
- " -screen 0 5760x2560x24+32")))
+ ;; Use Xvfb with '-nolisten local' to disable abstract X11 sockets.
+ (substitute* "./xpra/scripts/config.py"
+ ((":.*join.*xvfb.*")
+ (string-append ": \"" (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb +extension Composite"
+ " -screen 0 5760x2560x24+32 -dpi 96 -nolisten"
+ " tcp -nolisten local -noreset -auth"
+ " $XAUTHORITY\",\n")))
+ (substitute* "./xpra/scripts/config.py"
+ (("socket-dir.*: \"\",")
+ "socket-dir\" : \"~/.xpra\","))
#t)))))
(home-page "https://www.xpra.org/")
(synopsis "Remote access to individual applications or full desktops")
without losing any state. It can also be used to forward full desktops from
X11 servers, Windows, or macOS.")
(license license:gpl2+)))
+
+(define-public uim
+ (package
+ (name "uim")
+ (version "1.8.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/uim/uim/releases/download/uim-"
+ version "/uim-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0pr3rfqpxha8p6cxzdjsxbbmmr76riklzw36f68phd1zqw1sh7kv"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("anthy" ,anthy)
+ ("libedit" ,libedit)
+ ("libxft" ,libxft)
+ ("m17n-lib" ,m17n-lib)))
+ (native-inputs
+ `(("emacs" ,emacs-minimal)
+ ("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-utils))
+ #:configure-flags
+ (list "--with-anthy-utf8"
+ (string-append "--with-lispdir=" %output
+ "/share/emacs/site-lisp/guix.d")
+ ;; Set proper runpath
+ (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ ;; Set path of uim-el-agent and uim-el-helper-agent executables
+ (add-after 'configure 'configure-uim-el
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "emacs/uim-var.el"
+ (("\"(uim-el-agent|uim-el-helper-agent)\"" _ executable)
+ (string-append "\"" (assoc-ref outputs "out")
+ "/bin/" executable "\"")))
+ #t))
+ ;; Generate emacs autoloads for uim.el
+ (add-after 'install 'make-autoloads
+ (lambda* (#:key outputs #:allow-other-keys)
+ (emacs-generate-autoloads
+ ,name (string-append (assoc-ref outputs "out")
+ "/share/emacs/site-lisp"))
+ #t)))))
+ (home-page "https://github.com/uim/uim")
+ (synopsis "Multilingual input method framework")
+ (description "Uim is a multilingual input method library and environment.
+It provides a simple, easily extensible and high code-quality input method
+development platform, and useful input method environment for users of desktop
+and embedded platforms.")
+ (license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
+ license:gpl2+ ; scm/pinyin-big5.scm
+ license:gpl3+ ; scm/elatin-rules.cm
+ license:public-domain ; scm/input-parse.scm, scm/match.scm
+ ;; gtk2/toolbar/eggtrayicon.{ch},
+ ;; qt3/chardict/kseparator.{cpp,h},
+ ;; qt3/pref/kseparator.{cpp,h}
+ license:lgpl2.0+
+ ;; pixmaps/*.{svg,png} (see pixmaps/README),
+ ;; all other files
+ license:bsd-3))))
+
+(define-public uim-gtk
+ (package
+ (inherit uim)
+ (name "uim-gtk")
+ (inputs
+ `(("gtk" ,gtk+)
+ ("gtk" ,gtk+-2)
+ ,@(package-inputs uim)))
+ (synopsis "Multilingual input method framework (GTK+ support)")))
+
+(define-public uim-qt
+ (package
+ (inherit uim)
+ (name "uim-qt")
+ (inputs
+ `(("qt" ,qt-4)
+ ,@(package-inputs uim)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments uim)
+ ((#:configure-flags configure-flags)
+ (append configure-flags (list "--with-qt4-immodule"
+ "--with-qt4")))))
+ (synopsis "Multilingual input method framework (Qt support)")))