[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
80/125: gnu: gtk+: Enable tests.
From: |
guix-commits |
Subject: |
80/125: gnu: gtk+: Enable tests. |
Date: |
Sat, 3 Jul 2021 21:17:35 -0400 (EDT) |
raghavgururajan pushed a commit to branch wip-gnome
in repository guix.
commit 3edb6c844d190b239a5d33906d651a75e57ce418
Author: Raghav Gururajan <rg@raghavgururajan.name>
AuthorDate: Fri Mar 26 10:53:09 2021 -0400
gnu: gtk+: Enable tests.
* gnu/packages/gtk.scm (gtk+) [arguments]<#:phases>['pre-configure]: Remove
phase.
['disable-failing-tests]: New phase.
['pre-check]: New phase.
Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
---
gnu/packages/gtk.scm | 197 +++++++++++++++++++++++++++++----------------------
1 file changed, 111 insertions(+), 86 deletions(-)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 69760de..30b94e7 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -926,92 +926,117 @@ application suites.")
(home-page "https://www.gtk.org/")))
(define-public gtk+
- (package (inherit gtk+-2)
- (name "gtk+")
- (version "3.24.24")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "12ipk1d376bai9v820qzhxba93kkh5abi6mhyqr4hwjvqmkl77fc"))
- (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
-
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
- (propagated-inputs
- `(("at-spi2-atk" ,at-spi2-atk)
- ("atk" ,atk)
- ("gdk-pixbuf" ,gdk-pixbuf+svg)
- ("libepoxy" ,libepoxy)
- ("libxcursor" ,libxcursor)
- ("libxi" ,libxi)
- ("libxinerama" ,libxinerama)
- ("libxkbcommon" ,libxkbcommon)
- ("libxdamage" ,libxdamage)
- ("libxrandr" ,libxrandr)
- ("mesa" ,mesa)
- ("pango" ,pango)
- ("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols)))
- (inputs
- `(("libxml2" ,libxml2)
- ;; XXX: colord depends on mozjs (through polkit), which fails on
- ;; on non-intel systems now.
- ;;("colord" ,colord)
- ("cups" ,cups) ;for printing support
- ;; XXX: rest depends on p11-kit, which fails on mips64el now.
- ;;("rest" ,rest)
- ("json-glib" ,json-glib)))
- (native-inputs
- `(("perl" ,perl)
- ("glib" ,glib "bin")
- ("gettext" ,gettext-minimal)
- ("pkg-config" ,pkg-config)
- ("gobject-introspection" ,gobject-introspection)
- ("python-wrapper" ,python-wrapper)
- ;; By using a special xorg-server for GTK+'s tests, we reduce the impact
- ;; of updating xorg-server directly on the master branch.
- ("xorg-server" ,xorg-server-for-tests)))
- (arguments
- `(#:disallowed-references (,xorg-server-for-tests)
- ;; 47 MiB goes to "out" (24 of which is locale data!), and 26 MiB goes
- ;; to "doc".
- #:configure-flags (list (string-append "--with-html-dir="
- (assoc-ref %outputs "doc")
- "/share/gtk-doc/html")
- ;; The header file <gdk/gdkwayland.h> is required
- ;; by gnome-control-center
- "--enable-wayland-backend"
- ;; This is necessary to build both backends.
- "--enable-x11-backend"
- ;; This enables the HTML5 websocket backend.
- "--enable-broadway-backend")
- #:phases (modify-phases %standard-phases
- (add-before 'configure 'pre-configure
- (lambda _
- ;; Disable most tests, failing in the chroot with the message:
- ;; D-Bus library appears to be incorrectly set up; failed to read
- ;; machine uuid: Failed to open "/etc/machine-id": No such file or
- ;; directory.
- ;; See the manual page for dbus-uuidgen to correct this issue.
- (substitute* "testsuite/Makefile.in"
- (("SUBDIRS = gdk gtk a11y css reftests")
- "SUBDIRS = gdk"))
- #t))
- (add-after 'install 'move-desktop-files
- ;; Move desktop files into 'bin' to avoid cycle references.
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (bin (assoc-ref outputs "bin")))
- (mkdir-p (string-append bin "/share"))
- (rename-file (string-append out "/share/applications")
- (string-append bin "/share/applications"))
- #t))))))
- (native-search-paths
- (list (search-path-specification
- (variable "GUIX_GTK3_PATH")
- (files '("lib/gtk-3.0")))))))
+ (package
+ (inherit gtk+-2)
+ (name "gtk+")
+ (version "3.24.24")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "12ipk1d376bai9v820qzhxba93kkh5abi6mhyqr4hwjvqmkl77fc"))
+ (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
+
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
+ (propagated-inputs
+ `(("at-spi2-atk" ,at-spi2-atk)
+ ("atk" ,atk)
+ ;; SVG support is optional and requires librsvg, which pulls in rust.
+ ;; Rust is not supported well on every architecture yet.
+ ("gdk-pixbuf" ,(if (string-prefix? "x86_64" (or (%current-target-system)
+ (%current-system)))
+ gdk-pixbuf+svg
+ gdk-pixbuf))
+ ("libepoxy" ,libepoxy)
+ ("libxcursor" ,libxcursor)
+ ("libxi" ,libxi)
+ ("libxinerama" ,libxinerama)
+ ("libxkbcommon" ,libxkbcommon)
+ ("libxdamage" ,libxdamage)
+ ("libxrandr" ,libxrandr)
+ ("mesa" ,mesa)
+ ("pango" ,pango)
+ ("wayland" ,wayland)
+ ("wayland-protocols" ,wayland-protocols)))
+ (inputs
+ `(("libxml2" ,libxml2)
+ ;; XXX: colord depends on mozjs (through polkit), which fails on
+ ;; on non-intel systems now.
+ ;;("colord" ,colord)
+ ("cups" ,cups) ;for printing support
+ ;; XXX: rest depends on p11-kit, which fails on mips64el now.
+ ;;("rest" ,rest)
+ ("json-glib" ,json-glib)))
+ (native-inputs
+ `(("perl" ,perl)
+ ("glib" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)
+ ("python-wrapper" ,python-wrapper)
+ ;; By using a special xorg-server for GTK+'s tests, we reduce the impact
+ ;; of updating xorg-server directly on the master branch.
+ ("xorg-server" ,xorg-server-for-tests)))
+ (arguments
+ `(#:disallowed-references (,xorg-server-for-tests)
+ ;; 47 MiB goes to "out" (24 of which is locale data!), and 26 MiB goes
+ ;; to "doc".
+ #:configure-flags (list (string-append "--with-html-dir="
+ (assoc-ref %outputs "doc")
+ "/share/gtk-doc/html")
+ ;; The header file <gdk/gdkwayland.h> is
required
+ ;; by gnome-control-center
+ "--enable-wayland-backend"
+ ;; This is necessary to build both backends.
+ "--enable-x11-backend"
+ ;; This enables the HTML5 websocket backend.
+ "--enable-broadway-backend")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (substitute* "testsuite/gtk/Makefile.in"
+ (("builderparser cellarea check-icon-names check-cursor-names")
+ "builderparser cellarea check-cursor-names")
+ (("notify no-gtk-init object objects-finalize papersize rbtree")
+ "no-gtk-init papersize rbtree")
+ (("stylecontext templates textbuffer textiter treemodel
treepath")
+ "stylecontext textbuffer textiter treemodel treepath"))
+ (substitute* "testsuite/a11y/Makefile.in"
+ (("accessibility-dump tree-performance text children derive")
+ "tree-performance text children derive"))
+ (substitute* "testsuite/reftests/Makefile.in"
+ (("TEST_PROGS = gtk-reftest")
+ "TEST_PROGS = "))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; Tests write to $HOME.
+ (setenv "HOME" (getcwd))
+ ;; Tests look for $XDG_RUNTIME_DIR.
+ (setenv "XDG_RUNTIME_DIR" (getcwd))
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t))
+ (add-after 'install 'move-desktop-files
+ ;; Move desktop files into 'bin' to avoid cycle references.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (bin (assoc-ref outputs "bin")))
+ (mkdir-p (string-append bin "/share"))
+ (rename-file (string-append out "/share/applications")
+ (string-append bin "/share/applications"))
+ #t))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUIX_GTK3_PATH")
+ (files '("lib/gtk-3.0")))))))
;;;
;;; Guile bindings.
- 53/125: gnu: libgsf: Enable missing features., (continued)
- 53/125: gnu: libgsf: Enable missing features., guix-commits, 2021/07/03
- 60/125: gnu: atkmm: Update to 2.36.0., guix-commits, 2021/07/03
- 31/125: gnu: pango: Re-arrange inputs in alphabetical order., guix-commits, 2021/07/03
- 33/125: gnu: pango: Update synopsis, description and home-page., guix-commits, 2021/07/03
- 44/125: gnu: gdk-pixbuf+svg: Correct package definition to include changes from gdk-pixbuf., guix-commits, 2021/07/03
- 45/125: gnu: vala: Change build-system., guix-commits, 2021/07/03
- 49/125: gnu: vala: Update synopsis and description., guix-commits, 2021/07/03
- 56/125: gnu: libgsf: Update synopsis, description, home-page and license., guix-commits, 2021/07/03
- 63/125: gnu: Add atkmm-2.28., guix-commits, 2021/07/03
- 76/125: gnu: yelp-xsl: Enable documentation., guix-commits, 2021/07/03
- 80/125: gnu: gtk+: Enable tests.,
guix-commits <=
- 66/125: gnu: at-spi2-core: Update home-page and license., guix-commits, 2021/07/03
- 50/125: gnu: libgsf: Change build-system., guix-commits, 2021/07/03
- 55/125: gnu: libgsf: Enable documentation., guix-commits, 2021/07/03
- 46/125: gnu: vala: Enable coverage support., guix-commits, 2021/07/03
- 47/125: gnu: vala: Fix documentation., guix-commits, 2021/07/03
- 52/125: gnu: libgsf: Re-arrange inputs in alphabetical order., guix-commits, 2021/07/03
- 57/125: gnu: atk: Re-arrange inputs in alphabetical order., guix-commits, 2021/07/03
- 59/125: gnu: atk: Update home-page and license., guix-commits, 2021/07/03
- 62/125: gnu: atkmm: Update synopsis, description, home-page and license., guix-commits, 2021/07/03
- 61/125: gnu: atkmm: Enable documentation., guix-commits, 2021/07/03