unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Danny Milosavljevic <dannym@scratchpost.org>
To: 42958@debbugs.gnu.org
Cc: Raghav Gururajan <raghavgururajan@disroot.org>,
	Danny Milosavljevic <dannym@scratchpost.org>
Subject: [bug#42958] [PATCH core-updates 27/29] gnu: gtk+: Update package definition.
Date: Thu, 20 Aug 2020 17:10:48 +0200	[thread overview]
Message-ID: <20200820151050.9529-27-dannym@scratchpost.org> (raw)
In-Reply-To: <20200820151050.9529-1-dannym@scratchpost.org>

From: Raghav Gururajan <raghavgururajan@disroot.org>

* gnu/packages/gtk.scm (gtk+): Remove inheritance from gtk+-2.
[version]: Update to 3.24.20.
[source]<sha256>: Modify base32.
[arguments]<#:configure-flags>[--enable-cloudproviders]: New flag.
<#:phases>['pre-configure]: Remove phase.
['pre-check]: New phase.
['disable-failing-tests]: New phase.
[native-inputs]: Add docbook-xml, intltool, sassc and libxslt.
[inputs]: Add graphene, harfbuzz, iso-codes, libcloudproviders and papi.
[propagated-inputs]: Add cairo, fribidi, fontconfig, freetype, glib,
libx11, libxcomposite, libxext, libxfixes and libxrender.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
---
 gnu/packages/gtk.scm | 218 ++++++++++++++++++++++++++-----------------
 1 file changed, 132 insertions(+), 86 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 9b69f788bb..fcb0f8a2a7 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -73,6 +73,7 @@
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages iso-codes)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages m4)
@@ -81,11 +82,14 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pretty-print)
+  #:use-module (gnu packages profiling)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages guile-xyz)
   #:use-module (gnu packages cups)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xdisorg)
@@ -833,92 +837,134 @@ application suites.")
     (license license:lgpl2.0+)))
 
 (define-public gtk+
-  (package (inherit gtk+-2)
-   (name "gtk+")
-   (version "3.24.20")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "1wqxkd3xnqwihcawncp9mkf9bv5a5fg5i4ahm6klpl782vvnkb1d"))
-            (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
+    (name "gtk+")
+    (version "3.24.20")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "mirror://gnome/sources/" name "/"
+                       (version-major+minor version)  "/"
+                       name "-" version ".tar.xz"))
+       (sha256
+        (base32 "1wqxkd3xnqwihcawncp9mkf9bv5a5fg5i4ahm6klpl782vvnkb1d"))
+       (patches
+        (search-patches
+         "gtk3-respect-GUIX_GTK3_PATH.patch"
+         "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
+    (build-system gnu-build-system)
+    (outputs '("out" "bin" "doc"))
+    (arguments
+     `(#:configure-flags
+       (list
+        "--enable-x11-backend"
+        "--enable-broadway-backend"
+        "--enable-wayland-backend"
+        "--enable-cloudproviders"
+        (string-append "--with-html-dir=" (assoc-ref %outputs "doc")
+                       "/share/gtk-doc/html"))
+       #:phases
+       (modify-phases %standard-phases
+         (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 '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))
+         ;; Move desktop files into 'bin' to avoid cycle references.
+         (add-after 'install 'move-desktop-files
+           (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-inputs
+     `(("docbook-xml" ,docbook-xml-4.1.2)
+       ("gettext" ,gettext-minimal)
+       ("glib" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("intltool" ,intltool)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python-wrapper" ,python-wrapper)
+       ("sassc" ,sassc)
+       ("xorg-server" ,xorg-server-for-tests)
+       ("xsltproc" ,libxslt)))
+    (inputs
+     `(("colord" ,colord)
+       ("cups" ,cups)
+       ("graphene" ,graphene)
+       ("harfbuzz" ,harfbuzz)
+       ("iso-codes" ,iso-codes)
+       ("json-glib" ,json-glib)
+       ("libcloudproviders" ,libcloudproviders)
+       ("libxml2" ,libxml2)
+       ("papi" ,papi)
+       ("rest" ,rest)))
+    (propagated-inputs
+     `(("atk" ,atk)
+       ("at-spi2-atk" ,at-spi2-atk)
+       ("cairo" ,cairo)
+       ("fribidi" ,fribidi)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf+svg)
+       ("glib" ,glib)
+       ("libepoxy" ,libepoxy)
+       ("libx11" ,libx11)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxinerama" ,libxinerama)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("mesa" ,mesa)
+       ("pango" ,pango)
+       ("wayland" ,wayland)
+       ("wayland-protocols" ,wayland-protocols)))
+    (native-search-paths
+     (list
+      (search-path-specification
+       (variable "GUIX_GTK3_PATH")
+       (files '("lib/gtk-3.0")))))
+    (search-paths native-search-paths)
+    (synopsis "Cross-platform toolkit for creating graphical user interfaces")
+    (description "GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating
+graphical user interfaces.  Offering a complete set of widgets, GTK+ is
+suitable for projects ranging from small one-off tools to complete
+application suites.")
+    (home-page "https://www.gtk.org/")
+    (license license:lgpl2.0+)))
 
 ;;;
 ;;; Guile bindings.




  parent reply	other threads:[~2020-08-20 15:13 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-20 15:09 [bug#42958] [PATCH core-updates 00/29] Big changes from wip-desktop Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 01/29] gnu: yelp-xsl: Update package definition Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 02/29] gnu: yelp-tools: " Danny Milosavljevic
2020-08-30 20:54     ` Ludovic Courtès
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 04/29] gnu: glib-with-documentation: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 05/29] gnu: gobject-introspection: " Danny Milosavljevic
2020-09-23 13:40     ` Danny Milosavljevic
2020-09-23 13:45       ` Danny Milosavljevic
2020-09-24 11:36         ` Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 06/29] gnu: gobject-introspection: Propagate glib Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 07/29] gnu: gobject-introspection: Add patches back Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 08/29] gnu: pixman: Update package definition Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 09/29] gnu: openjpeg: " Danny Milosavljevic
2020-08-20 16:45     ` Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 10/29] gnu: cairo: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 11/29] gnu: pango: " Danny Milosavljevic
2020-08-20 16:27     ` Danny Milosavljevic
2020-08-20 16:29       ` Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 12/29] gnu: gdk-pixbuf: " Danny Milosavljevic
2020-08-24  0:19     ` Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 13/29] gnu: gdk-pixbuf: Disable failing tests Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 14/29] gnu: gdk-pixbuf+svg: Update package definition Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 15/29] gnu: vala: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 16/29] gnu: libgsf: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 17/29] gnu: librsvg@2.40.21: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 18/29] gnu: atk: Update to 2.36.0 Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 19/29] gnu: gtk+-2: Update package definition Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 20/29] gnu: wayland: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 21/29] gnu: wayland-protocols: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 22/29] gnu: atkmm: " Danny Milosavljevic
2020-08-20 16:45     ` Danny Milosavljevic
2020-08-20 16:48     ` Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 23/29] gnu: gtk-doc: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 24/29] gnu: json-glib: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 25/29] gnu: at-spi2-core: " Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 26/29] gnu: at-spi2-atk: Update to 2.34.2 Danny Milosavljevic
2020-08-20 15:10   ` Danny Milosavljevic [this message]
2020-08-20 16:44     ` [bug#42958] [PATCH core-updates 27/29] gnu: gtk+: Update package definition Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 28/29] gnu: gtk+: Propagate libcloudproviders Danny Milosavljevic
2020-08-20 15:10   ` [bug#42958] [PATCH core-updates 29/29] gnu: gtk+: Add missing input Danny Milosavljevic
2020-09-24 12:26 ` [bug#42958] [PATCH core-updates 01/29] gnu: yelp-xsl: Update package definition Raghav Gururajan
2020-09-24 12:27 ` [bug#42958] [PATCH core-updates 02/29] gnu: yelp-tools: " Raghav Gururajan
2020-09-24 12:28 ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: " Raghav Gururajan
2020-09-24 12:55   ` Efraim Flashner
2020-11-29 12:21     ` Danny Milosavljevic
2020-12-04  6:08     ` [bug#42958] Raghav Gururajan via Guix-patches via
2020-09-27 10:12   ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: Update package definition Danny Milosavljevic
2020-09-24 12:41 ` [bug#42958] [PATCH core-updates 04/29] gnu: glib-with-documentation: Update, " Raghav Gururajan
2020-09-24 12:50   ` Efraim Flashner
2020-09-24 13:14 ` [bug#42958] [PATCH core-updates 05/29] gnu: gobject-introspection: Update package, definition Raghav Gururajan
2020-09-24 13:32   ` Raghav Gururajan
2020-09-24 13:52   ` Danny Milosavljevic
2020-09-24 14:17     ` Raghav Gururajan
2020-09-24 13:20 ` [bug#42958] [PATCH core-updates 06/29] gnu: gobject-introspection: Propagate glib Raghav Gururajan
2020-09-24 13:33 ` [bug#42958] [PATCH core-updates 07/29] gnu: gobject-introspection: Add patches, back Raghav Gururajan
2020-09-24 14:33 ` [bug#42958] [PATCH core-updates 08/29] gnu: pixman: Update package definition Raghav Gururajan
2020-09-24 15:03 ` [bug#42958] [PATCH core-updates 09/29] gnu: openjpeg: " Raghav Gururajan
2020-09-24 15:35 ` [bug#42958] [PATCH core-updates 10/29] gnu: cairo: " Raghav Gururajan
     [not found] ` <handler.42958.B.159793618623098.ack@debbugs.gnu.org>
2020-12-01 21:07   ` [bug#42958] ([PATCH core-updates 00/29] Big changes from wip-desktop.) Danny Milosavljevic
2021-03-11 14:45 ` [bug#42958] Raghav Gururajan via Guix-patches via
2021-03-12 16:37 ` [bug#42958] Big changes from wip-desktop Raghav Gururajan via Guix-patches via
2021-03-12 17:19   ` Raghav Gururajan via Guix-patches via
2021-03-25 12:08     ` Raghav Gururajan via Guix-patches via
2021-03-26  1:00       ` Raghav Gururajan via Guix-patches via
2021-03-26 20:12         ` Raghav Gururajan via Guix-patches via
2021-03-26 20:38           ` Raghav Gururajan via Guix-patches via
2021-03-26 21:22             ` bug#42958: " Léo Le Bouter via Guix-patches via

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200820151050.9529-27-dannym@scratchpost.org \
    --to=dannym@scratchpost.org \
    --cc=42958@debbugs.gnu.org \
    --cc=raghavgururajan@disroot.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).