Archived
1
0
Fork 0

gnu: ibus: Update to 1.5.27, use gexps and remove input labels.

* gnu/packages/ibus.scm (ibus): Update to 1.5.27.
[arguments]: Use gexps.
[configure-flags]: Use search-input-file.  Add '--disable-systemd-services'.
[make-flags]: Add the DISABLE_GUI_TEST variable.
[phases]{patch-docbook-xml}: Use this-package-native-input.
{patch-python-target-directories}: Break line.
{fix-paths}: Use format to double quote command.
[inputs, native-inputs]: Delete labels.
[inputs]: Add bash-minimal.
This commit is contained in:
Maxim Cournoyer 2022-08-22 23:21:08 -04:00
parent 46d50efd09
commit e631e122e3
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -41,6 +41,7 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages anthy) #:use-module (gnu packages anthy)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
@ -71,7 +72,7 @@
(define-public ibus (define-public ibus
(package (package
(name "ibus") (name "ibus")
(version "1.5.24") (version "1.5.27")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/ibus/ibus/" (uri (string-append "https://github.com/ibus/ibus/"
@ -79,28 +80,38 @@
version "/ibus-" version ".tar.gz")) version "/ibus-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"07s2ly75xv50bqg37mn37i9akqvcfd45k2mbplxrsqk3a2b3mwxb")))) "1pwppcy0xpidxa7db9lykjjjj1rcjrqf5l88f77hgxlnvdddmyvf"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(arguments (arguments
`(#:parallel-build? #f ; race condition discovered with emoji support (list
#:configure-flags (list "--enable-python-library" #:configure-flags #~(list "--enable-python-library"
"--enable-gtk-doc" "--enable-gtk-doc"
"--enable-memconf" "--enable-memconf"
(string-append (string-append
"--with-unicode-emoji-dir=" "--with-unicode-emoji-dir="
(assoc-ref %build-inputs "unicode-emoji") (search-input-directory %build-inputs
"/share/unicode/emoji") "share/unicode/emoji"))
(string-append (string-append
"--with-emoji-annotation-dir=" "--with-emoji-annotation-dir="
(assoc-ref %build-inputs "unicode-cldr-common") (search-input-directory
"/share/unicode/cldr/common/annotations") %build-inputs
(string-append "--with-ucd-dir=" "share/unicode/cldr/common/annotations"))
(assoc-ref %build-inputs "ucd") (string-append
"/share/ucd") "--with-ucd-dir="
"--enable-wayland") (search-input-directory %build-inputs
"share/ucd"))
"--enable-wayland"
"--disable-systemd-services")
#:make-flags
;; The GUI tests not only require a DISPLAY, but also a window manager
;; since IBus needs to receive focus-in/out events to test IBus with GTK
;; applications (see: https://github.com/ibus/ibus/issues/2307).
#~(list (string-append "DISABLE_GUI_TESTS=ibus-compose "
"ibus-inputcontext-create "
"xkb-latin-layouts "))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests (add-after 'unpack 'disable-failing-tests
(lambda _ (lambda _
;; These tests require /etc/machine-id. ;; These tests require /etc/machine-id.
@ -113,13 +124,14 @@
(with-directory-excursion "docs/reference/ibus" (with-directory-excursion "docs/reference/ibus"
(substitute* "ibus-docs.sgml.in" (substitute* "ibus-docs.sgml.in"
(("http://www.oasis-open.org/docbook/xml/4.1.2/") (("http://www.oasis-open.org/docbook/xml/4.1.2/")
(string-append (assoc-ref inputs "docbook-xml") (string-append #$(this-package-native-input "docbook-xml")
"/xml/dtd/docbook/")))))) "/xml/dtd/docbook/"))))))
(add-after 'unpack 'patch-python-target-directories (add-after 'unpack 'patch-python-target-directories
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let ((root (string-append (assoc-ref outputs "out") (let ((root (string-append #$output
"/lib/python" "/lib/python"
,(version-major+minor (package-version python)) #$(version-major+minor
(package-version python))
"/site-packages"))) "/site-packages")))
(substitute* "configure" (substitute* "configure"
(("(py2?overridesdir)=.*" _ var) (("(py2?overridesdir)=.*" _ var)
@ -142,14 +154,11 @@
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/ibusenginesimple.c" (substitute* "src/ibusenginesimple.c"
(("/usr/share/X11/locale") (("/usr/share/X11/locale")
(search-input-directory inputs (search-input-directory inputs "share/X11/locale")))
"share/X11/locale")))
(substitute* "ui/gtk3/xkblayout.vala" (substitute* "ui/gtk3/xkblayout.vala"
(("\"(setxkbmap|xmodmap)\"" _ prog) (("\"(setxkbmap|xmodmap)\"" _ prog)
(string-append "\"" (format #f "~s" (search-input-file
(search-input-file inputs inputs (string-append "bin/" prog)))))))
(string-append "bin/" prog))
"\"")))))
(add-before 'check 'pre-check (add-before 'check 'pre-check
(lambda _ (lambda _
;; Tests write to $HOME. ;; Tests write to $HOME.
@ -164,58 +173,56 @@
;; Tests require running iBus daemon. ;; Tests require running iBus daemon.
(system "./bus/ibus-daemon --daemonize"))) (system "./bus/ibus-daemon --daemonize")))
(add-after 'install 'move-doc (add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (mkdir-p (string-append #$output:doc "/share"))
(doc (assoc-ref outputs "doc")))
(mkdir-p (string-append doc "/share"))
(rename-file (rename-file
(string-append out "/share/gtk-doc") (string-append #$output "/share/gtk-doc")
(string-append doc "/share/gtk-doc"))))) (string-append #$output:doc "/share/gtk-doc"))))
(add-after 'wrap-program 'wrap-with-additional-paths (add-after 'wrap-program 'wrap-with-additional-paths
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and ;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and
;; GI_TYPELIB_PATH. ;; GI_TYPELIB_PATH.
(let ((out (assoc-ref outputs "out"))) (wrap-program (search-input-file outputs "bin/ibus-setup")
(wrap-program (string-append out "/bin/ibus-setup")
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH"))) `("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" ":" prefix `("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH") (,(getenv "GI_TYPELIB_PATH")
,(string-append out "/lib/girepository-1.0")))))))))) ,(string-append #$output "/lib/girepository-1.0")))))))))
(inputs (inputs
`(("dbus" ,dbus) (list bash-minimal
("dconf" ,dconf) dbus
("glib" ,glib) dconf
("gtk2" ,gtk+-2) glib
("gtk+" ,gtk+) gtk+-2
("iso-codes" ,iso-codes) gtk+
("json-glib" ,json-glib) iso-codes
("libnotify" ,libnotify) json-glib
("libx11" ,libx11) libnotify
("libxkbcommon" ,libxkbcommon) libx11
("libxtst" ,libxtst) libxkbcommon
("pygobject" ,python-pygobject) libxtst
("python" ,python) python-pygobject
("python-dbus" ,python-dbus) python
("setxkbmap" ,setxkbmap) python-dbus
("ucd" ,ucd) setxkbmap
("unicode-cldr-common" ,unicode-cldr-common) ucd
("unicode-emoji" ,unicode-emoji) unicode-cldr-common
("wayland" ,wayland) unicode-emoji
("xmodmap" ,xmodmap))) wayland
xmodmap))
(native-inputs (native-inputs
`(("docbook-xml" ,docbook-xml-4.1.2) (list docbook-xml-4.1.2
("glib" ,glib "bin") ; for glib-genmarshal `(,glib "bin") ;for glib-genmarshal
("gettext" ,gettext-minimal) gettext-minimal
("gnome-common" ,gnome-common) gnome-common
("gobject-introspection" ,gobject-introspection) ; for g-ir-compiler gobject-introspection ;for g-ir-compiler
("gtk+:bin" ,gtk+ "bin") `(,gtk+ "bin")
("gtk-doc" ,gtk-doc) gtk-doc
("perl" ,perl) perl
("pkg-config" ,pkg-config) pkg-config
("python-wrapper" ,python-wrapper) python-wrapper
("vala" ,vala) vala
("which" ,which) which
("xorg-server" ,xorg-server-for-tests))) xorg-server-for-tests))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "IBUS_COMPONENT_PATH") (variable "IBUS_COMPONENT_PATH")