Subject: [bug#42958] Big changes from wip-desktop.

From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:37:19 -0500

Hi Danny!

I have split and re-worked remaining patches for current core-updates. 
Please find them attached.

Regards,
RG.
From 47a7641d83784fcf60f5b07aa1385791cab06474 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 09:59:44 -0500
Subject: [PATCH 01/68] gnu: gobject-introspection: Modify arguments and
 inputs.

* gnu/packages/glib.scm (gobject-introspection) [arguments]
<#:glib-or-gtk?>: New argument.
[inputs]: Move glib to ...
[propagated-inputs]: ... here.
---
 gnu/packages/glib.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 07e65e49f5..974315f642 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -359,7 +359,8 @@ functions for strings and common data structures.")
                        "gobject-introspection-absolute-shlib-path.patch"))))
     (build-system meson-build-system)
     (arguments
-     `(#:phases
+     `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+       #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'do-not-use-/usr/bin/env
            (lambda _
@@ -373,11 +374,11 @@ functions for strings and common data structures.")
     (inputs
      `(("bison" ,bison)
        ("flex" ,flex)
-       ("glib" ,glib)
        ("python" ,python-wrapper)
        ("zlib" ,zlib)))
     (propagated-inputs
-     `(;; In practice, GIR users will need libffi when using
+     `(("glib" ,glib)
+       ;; In practice, GIR users will need libffi when using
        ;; gobject-introspection.
        ("libffi" ,libffi)))
     (native-search-paths
-- 
2.30.1

From 989da48d12be90ca3af152141cd5091fd8d76cd7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:11:10 -0500
Subject: [PATCH 02/68] gnu: pango: Add missing arguments.

* gnu/packages/gtk.scm (pango) [arguments]<#:glib-or-gtk?>: New argument.
---
 gnu/packages/gtk.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 111171f65a..ce5a0b7520 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -325,7 +325,8 @@ applications.")
               "07qvxa2sk90chp1l12han6vxvy098mc37sdqcznyywyv2g6bd9b6"))))
    (build-system meson-build-system)
    (arguments
-    '(#:phases (modify-phases %standard-phases
+    '(#:glib-or-gtk? ; To wrap binaries and/or compile schemas
+      #:phases (modify-phases %standard-phases
                  (add-after 'unpack 'disable-cantarell-tests
                    (lambda _
                      (substitute* "tests/meson.build"
-- 
2.30.1

From 25008dfaf167760cd2c7c795833fc18251c8d58b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:17:09 -0500
Subject: [PATCH 03/68] gnu: pango: Re-arrange inputs in alphabetical order.

* gnu/packages/gtk.scm (pango) [propagated-inputs]: Modify.
[native-inputs]: Modify.
---
 gnu/packages/gtk.scm | 35 +++++++++++++++++------------------
 1 file changed, 17 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index ce5a0b7520..5a07d133b4 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -336,24 +336,23 @@ applications.")
                        (("\\[ 'test-itemize'.*") "")
                        (("\\[ 'test-layout'.*") ""))
                      #t)))))
-   (propagated-inputs
-    ;; These are all in Requires or Requires.private of the '.pc' files.
-    `(("cairo" ,cairo)
-      ("fribidi" ,fribidi)
-      ("fontconfig" ,fontconfig)
-      ("freetype" ,freetype)
-      ("glib" ,glib)
-      ("harfbuzz" ,harfbuzz)
-
-      ;; Some packages, such as Openbox, expect Pango to be built with the
-      ;; optional libxft support.
-      ("libxft" ,libxft)))
-   (inputs
-    `(("zlib" ,zlib)))
-   (native-inputs
-    `(("pkg-config" ,pkg-config)
-      ("glib" ,glib "bin")                               ; glib-mkenums, etc.
-      ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
+    (propagated-inputs
+     ;; These are all in Requires or Requires.private of the '.pc' files.
+     `(("cairo" ,cairo)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("fribidi" ,fribidi)
+       ("glib" ,glib)
+       ("harfbuzz" ,harfbuzz)
+       ;; Some packages, such as Openbox, expect Pango to be built with the
+       ;; optional libxft support.
+       ("libxft" ,libxft)))
+    (inputs
+     `(("zlib" ,zlib)))
+    (native-inputs
+     `(("glib" ,glib "bin")             ; glib-mkenums, etc.
+       ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
+       ("pkg-config" ,pkg-config)))
    (synopsis "GNOME text and font handling library")
    (description
     "Pango is the core text and font handling library used in GNOME
-- 
2.30.1

From 1b82fe58c040735560fca0d461abcfcac2f64719 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:18:37 -0500
Subject: [PATCH 04/68] gnu: pango: Fix indentation.

* gnu/packages/gtk.scm (pango): Fix indentation.
---
 gnu/packages/gtk.scm | 58 ++++++++++++++++++++++----------------------
 1 file changed, 29 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5a07d133b4..97d9ef6fd3 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -312,30 +312,30 @@ applications.")
 
 (define-public pango
   (package
-   (name "pango")
-   (version "1.44.7")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/pango/"
-                                (version-major+minor version) "/"
-                                name "-" version ".tar.xz"))
-            (patches (search-patches "pango-skip-libthai-test.patch"))
-            (sha256
-             (base32
-              "07qvxa2sk90chp1l12han6vxvy098mc37sdqcznyywyv2g6bd9b6"))))
-   (build-system meson-build-system)
-   (arguments
-    '(#:glib-or-gtk? ; To wrap binaries and/or compile schemas
-      #:phases (modify-phases %standard-phases
-                 (add-after 'unpack 'disable-cantarell-tests
-                   (lambda _
-                     (substitute* "tests/meson.build"
-                       ;; XXX FIXME: These tests require "font-cantarell", but
-                       ;; adding it here would introduce a circular dependency.
-                       (("\\[ 'test-harfbuzz'.*") "")
-                       (("\\[ 'test-itemize'.*") "")
-                       (("\\[ 'test-layout'.*") ""))
-                     #t)))))
+    (name "pango")
+    (version "1.44.7")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/pango/"
+                                  (version-major+minor version) "/"
+                                  name "-" version ".tar.xz"))
+              (patches (search-patches "pango-skip-libthai-test.patch"))
+              (sha256
+               (base32
+                "07qvxa2sk90chp1l12han6vxvy098mc37sdqcznyywyv2g6bd9b6"))))
+    (build-system meson-build-system)
+    (arguments
+     '(#:glib-or-gtk?        ; To wrap binaries and/or compile schemas
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'disable-cantarell-tests
+                    (lambda _
+                      (substitute* "tests/meson.build"
+                        ;; XXX FIXME: These tests require "font-cantarell", but
+                        ;; adding it here would introduce a circular dependency.
+                        (("\\[ 'test-harfbuzz'.*") "")
+                        (("\\[ 'test-itemize'.*") "")
+                        (("\\[ 'test-layout'.*") ""))
+                      #t)))))
     (propagated-inputs
      ;; These are all in Requires or Requires.private of the '.pc' files.
      `(("cairo" ,cairo)
@@ -353,13 +353,13 @@ applications.")
      `(("glib" ,glib "bin")             ; glib-mkenums, etc.
        ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
        ("pkg-config" ,pkg-config)))
-   (synopsis "GNOME text and font handling library")
-   (description
-    "Pango is the core text and font handling library used in GNOME
+    (synopsis "GNOME text and font handling library")
+    (description
+     "Pango is the core text and font handling library used in GNOME
 applications.  It has extensive support for the different writing systems
 used throughout the world.")
-   (license license:lgpl2.0+)
-   (home-page "https://developer.gnome.org/pango/")))
+    (license license:lgpl2.0+)
+    (home-page "https://developer.gnome.org/pango/")))
 
 (define-public pango-1.42
   (package
-- 
2.30.1

From 8f1d1541b946dba83413cad33c719d8f2163b464 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:21:03 -0500
Subject: [PATCH 05/68] gnu: pango: Add missing inputs.

* gnu/packages/gtk.scm (pango) [propagated-inputs]: Add libthai
and libxrender.
[native-inputs]: Add help2man, perl and python-wrapper.
---
 gnu/packages/gtk.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 97d9ef6fd3..f5e1634e87 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -344,15 +344,20 @@ applications.")
        ("fribidi" ,fribidi)
        ("glib" ,glib)
        ("harfbuzz" ,harfbuzz)
+       ("libthai" ,libthai)
        ;; Some packages, such as Openbox, expect Pango to be built with the
        ;; optional libxft support.
-       ("libxft" ,libxft)))
+       ("libxft" ,libxft)
+       ("libxrender" ,libxrender)))
     (inputs
      `(("zlib" ,zlib)))
     (native-inputs
      `(("glib" ,glib "bin")             ; glib-mkenums, etc.
        ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
-       ("pkg-config" ,pkg-config)))
+       ("help2man" ,help2man)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
     (synopsis "GNOME text and font handling library")
     (description
      "Pango is the core text and font handling library used in GNOME
-- 
2.30.1

From 71428da03a71d2a3f531f772b423b892f654d286 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:24:42 -0500
Subject: [PATCH 06/68] gnu: pango: Update synopsis, description and home-page.

* gnu/packages/gtk.scm (pango) [synopsis]: Modify.
[description]: Modify.
[home-page]: Modify.
---
 gnu/packages/gtk.scm | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index f5e1634e87..548e46f191 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -358,13 +358,14 @@ applications.")
        ("perl" ,perl)
        ("pkg-config" ,pkg-config)
        ("python" ,python-wrapper)))
-    (synopsis "GNOME text and font handling library")
-    (description
-     "Pango is the core text and font handling library used in GNOME
-applications.  It has extensive support for the different writing systems
-used throughout the world.")
-    (license license:lgpl2.0+)
-    (home-page "https://developer.gnome.org/pango/")))
+    (synopsis "Text and font handling library")
+    (description "Pango is a library for laying out and rendering of text, with
+an emphasis on internationalization.  Pango can be used anywhere that text
+layout is needed, though most of the work on Pango so far has been done in the
+context of the GTK+ widget toolkit.  Pango forms the core of text and font
+handling for GTK+-2.x.")
+    (home-page "https://pango.gnome.org/")
+    (license license:lgpl2.0+)))
 
 (define-public pango-1.42
   (package
-- 
2.30.1

From 444a2be133a2e52e54645ba03aa88df1c87ca835 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:29:02 -0500
Subject: [PATCH 07/68] gnu: gdk-pixbuf: Fix indentation.

* gnu/packages/gtk.scm (gdk-pixbuf): Fix indentation.
---
 gnu/packages/gtk.scm | 80 ++++++++++++++++++++++----------------------
 1 file changed, 40 insertions(+), 40 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 548e46f191..b744837cbe 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -577,50 +577,50 @@ highlighting and other features typical of a source code editor.")
 
 (define-public gdk-pixbuf
   (package
-   (name "gdk-pixbuf")
-   (version "2.42.2")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "05ggmzwvrxq9w4zcvmrnnd6qplsmb4n95lj4q607c7arzlf6mil3"))))
-   (build-system meson-build-system)
-   (arguments
-    `(#:meson ,meson-0.55
-      #:configure-flags '("-Dinstalled_tests=false")
-      #:phases
-      (modify-phases %standard-phases
-        ;; The slow tests take longer than the specified timeout.
-        ,@(if (any (cute string=? <> (%current-system))
-                   '("armhf-linux" "aarch64-linux"))
-            '((replace 'check
-              (lambda _
-                (invoke "meson" "test" "--timeout-multiplier" "5"))))
-            '()))))
-   (propagated-inputs
-    `(;; Required by gdk-pixbuf-2.0.pc
-      ("glib" ,glib)
-      ("libpng" ,libpng)
-      ;; Used for testing and required at runtime.
-      ("shared-mime-info" ,shared-mime-info)))
-   (inputs
-    `(("libjpeg" ,libjpeg-turbo)
-      ("libtiff" ,libtiff)
-      ("libx11"  ,libx11)))
-   (native-inputs
+    (name "gdk-pixbuf")
+    (version "2.42.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "05ggmzwvrxq9w4zcvmrnnd6qplsmb4n95lj4q607c7arzlf6mil3"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:meson ,meson-0.55
+       #:configure-flags '("-Dinstalled_tests=false")
+       #:phases
+       (modify-phases %standard-phases
+         ;; The slow tests take longer than the specified timeout.
+         ,@(if (any (cute string=? <> (%current-system))
+                    '("armhf-linux" "aarch64-linux"))
+               '((replace 'check
+                   (lambda _
+                     (invoke "meson" "test" "--timeout-multiplier" "5"))))
+               '()))))
+    (propagated-inputs
+     `( ;; Required by gdk-pixbuf-2.0.pc
+       ("glib" ,glib)
+       ("libpng" ,libpng)
+       ;; Used for testing and required at runtime.
+       ("shared-mime-info" ,shared-mime-info)))
+    (inputs
+     `(("libjpeg" ,libjpeg-turbo)
+       ("libtiff" ,libtiff)
+       ("libx11"  ,libx11)))
+    (native-inputs
      `(("pkg-config" ,pkg-config)
        ("gettext" ,gettext-minimal)
-       ("glib" ,glib "bin")                               ; glib-mkenums, etc.
+       ("glib" ,glib "bin")             ; glib-mkenums, etc.
        ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
-   (synopsis "GNOME image loading and manipulation library")
-   (description
-    "GdkPixbuf is a library for image loading and manipulation developed
+    (synopsis "GNOME image loading and manipulation library")
+    (description
+     "GdkPixbuf is a library for image loading and manipulation developed
 in the GNOME project.")
-   (license license:lgpl2.0+)
-   (home-page "https://developer.gnome.org/gdk-pixbuf/")))
+    (license license:lgpl2.0+)
+    (home-page "https://developer.gnome.org/gdk-pixbuf/")))
 
 ;; To build gdk-pixbuf with SVG support, we need librsvg, and librsvg depends
 ;; on gdk-pixbuf, so this new varibale.  Also, librsvg adds 90MiB to the
-- 
2.30.1

From d39e7470248a026c2aee9e6c1b52ec4f40c204b5 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:31:32 -0500
Subject: [PATCH 08/68] gnu: gdk-pixbuf: Add missing arguments.

* gnu/packages/gtk.scm (gdk-pixbuf) [arguments]<#:glib-or-gtk?>: New argument.
---
 gnu/packages/gtk.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index b744837cbe..11f05cf6fa 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -590,6 +590,7 @@ highlighting and other features typical of a source code editor.")
     (build-system meson-build-system)
     (arguments
      `(#:meson ,meson-0.55
+       #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
        #:configure-flags '("-Dinstalled_tests=false")
        #:phases
        (modify-phases %standard-phases
-- 
2.30.1

From 6ae5ea1284a241076a6e9fa60c3189527405beec Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:35:56 -0500
Subject: [PATCH 09/68] gnu: gdk-pixbuf: Correct inputs.

* gnu/packages/gtk.scm (gdk-pixbuf) [propagated-inputs]: Add libx11.
Remove libpng.
[inputs]: Add libpng. Remove libx11.
---
 gnu/packages/gtk.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 11f05cf6fa..63ee17d7b4 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -604,13 +604,14 @@ highlighting and other features typical of a source code editor.")
     (propagated-inputs
      `( ;; Required by gdk-pixbuf-2.0.pc
        ("glib" ,glib)
-       ("libpng" ,libpng)
+       ;; Required by gdk-pixbuf-xlib-2.0.pc
+       ("libx11" ,libx11)
        ;; Used for testing and required at runtime.
        ("shared-mime-info" ,shared-mime-info)))
     (inputs
      `(("libjpeg" ,libjpeg-turbo)
-       ("libtiff" ,libtiff)
-       ("libx11"  ,libx11)))
+       ("libpng"  ,libpng)
+       ("libtiff" ,libtiff)))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("gettext" ,gettext-minimal)
-- 
2.30.1

From 274ea76c5a3e36380037b26a7a6975189f0391f2 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:41:10 -0500
Subject: [PATCH 10/68] gnu: gdk-pixbuf: Enable jasper support.

* gnu/packages/gtk.scm (gdk-pixbuf) [arguments]<#:configure-flags>[-Djasper]: New flag.
[inputs]: Add jasper.
---
 gnu/packages/gtk.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 63ee17d7b4..192a5b60f5 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -591,7 +591,7 @@ highlighting and other features typical of a source code editor.")
     (arguments
      `(#:meson ,meson-0.55
        #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
-       #:configure-flags '("-Dinstalled_tests=false")
+       #:configure-flags '("-Dinstalled_tests=false" "-Djasper=true")
        #:phases
        (modify-phases %standard-phases
          ;; The slow tests take longer than the specified timeout.
@@ -609,7 +609,8 @@ highlighting and other features typical of a source code editor.")
        ;; Used for testing and required at runtime.
        ("shared-mime-info" ,shared-mime-info)))
     (inputs
-     `(("libjpeg" ,libjpeg-turbo)
+     `(("jasper" ,jasper)
+       ("libjpeg" ,libjpeg-turbo)
        ("libpng"  ,libpng)
        ("libtiff" ,libtiff)))
     (native-inputs
-- 
2.30.1

From ebfd8acd539a73871a63c4bc54f97dc35f2d242d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:50:46 -0500
Subject: [PATCH 11/68] gnu: gdk-pixbuf: Fix documentation.

* gnu/packages/gtk.scm (gdk-pixbuf) [arguments]<#:phases>['patch-docbook]: New phase.
[native-inputs]: Add docbook-xml and docbook-xsl.
---
 gnu/packages/gtk.scm | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 192a5b60f5..5bc160be5e 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -590,10 +590,25 @@ highlighting and other features typical of a source code editor.")
     (build-system meson-build-system)
     (arguments
      `(#:meson ,meson-0.55
-       #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+       #:glib-or-gtk? #t     ; To wrap binaries and/or compile schemas
        #:configure-flags '("-Dinstalled_tests=false" "-Djasper=true")
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "docs"
+               (substitute* "meson.build"
+                 (("http://docbook.sourceforge.net/release/xsl/current/")
+                  (string-append (assoc-ref inputs "docbook-xsl")
+                                 "/xml/xsl/docbook-xsl-1.79.2/")))
+               (substitute* '("gdk-pixbuf-csource.xml"
+                              "gdk-pixbuf-from-drawables.xml"
+                              "gdk-pixbuf-query-loaders.xml"
+                              "gdk-pixbuf-rendering.xml" "gdk-pixbuf.xml")
+                 (("http://www.oasis-open.org/docbook/xml/4.3/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))))
+             #t))
          ;; The slow tests take longer than the specified timeout.
          ,@(if (any (cute string=? <> (%current-system))
                     '("armhf-linux" "aarch64-linux"))
@@ -614,10 +629,12 @@ highlighting and other features typical of a source code editor.")
        ("libpng"  ,libpng)
        ("libtiff" ,libtiff)))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("docbook-xml" ,docbook-xml-4.3)
+       ("docbook-xsl" ,docbook-xsl)
        ("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")             ; glib-mkenums, etc.
-       ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
+       ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
+       ("pkg-config" ,pkg-config)))
     (synopsis "GNOME image loading and manipulation library")
     (description
      "GdkPixbuf is a library for image loading and manipulation developed
-- 
2.30.1

From 9f50f7baaf0f69b9d017321a936c33c3c84cabfd Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:53:43 -0500
Subject: [PATCH 12/68] gnu: gdk-pixbuf: Add missing inputs.

* gnu/packages/gtk.scm (gdk-pixbuf) [native-inputs]: Add perl and libxslt.
---
 gnu/packages/gtk.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5bc160be5e..d9509763d2 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -634,7 +634,9 @@ highlighting and other features typical of a source code editor.")
        ("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")             ; glib-mkenums, etc.
        ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
-       ("pkg-config" ,pkg-config)))
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
     (synopsis "GNOME image loading and manipulation library")
     (description
      "GdkPixbuf is a library for image loading and manipulation developed
-- 
2.30.1

From 1d90af0cb85b5c048956ef67f9f6ed34444a8c5b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 10:56:29 -0500
Subject: [PATCH 13/68] gnu: gdk-pixbuf: Update synopsis, description,
 home-page and license.

* gnu/packages/gtk.scm (gdk-pixbuf) [synopsis]: Modify.
[description]: Modify.
[home-page]: Modify.
[license]: Update to lgpl2.1+.
---
 gnu/packages/gtk.scm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index d9509763d2..ff7289e78d 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -637,12 +637,12 @@ highlighting and other features typical of a source code editor.")
        ("perl" ,perl)
        ("pkg-config" ,pkg-config)
        ("xsltproc" ,libxslt)))
-    (synopsis "GNOME image loading and manipulation library")
-    (description
-     "GdkPixbuf is a library for image loading and manipulation developed
-in the GNOME project.")
-    (license license:lgpl2.0+)
-    (home-page "https://developer.gnome.org/gdk-pixbuf/")))
+    (synopsis "Image loading library")
+    (description "GdkPixbuf is a library that loads image data in various
+formats and stores it as linear buffers in memory.  The buffers can then be
+scaled, composited, modified, saved, or rendered.")
+    (home-page "https://wiki.gnome.org/Projects/GdkPixbuf")
+    (license license:lgpl2.1+)))
 
 ;; To build gdk-pixbuf with SVG support, we need librsvg, and librsvg depends
 ;; on gdk-pixbuf, so this new varibale.  Also, librsvg adds 90MiB to the
-- 
2.30.1

From a1e1ab7564d947e6d3aac72f403382f383c8211e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:00:10 -0500
Subject: [PATCH 14/68] gnu: gdk-pixbuf: Disable failing tests.

* gnu/packages/gtk.scm (gdk-pixbuf) [arguments]<#:phases>['disable-failing-tests]: New phase.
---
 gnu/packages/gtk.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index ff7289e78d..c3a007ab23 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -609,6 +609,12 @@ highlighting and other features typical of a source code editor.")
                   (string-append (assoc-ref inputs "docbook-xml")
                                  "/xml/dtd/docbook/"))))
              #t))
+         (add-before 'configure 'disable-failing-tests
+           (lambda _
+             (substitute* "tests/meson.build"
+               (("\\[ 'pixbuf-fail', \\['conform', 'slow'\\], \\],")
+                ""))
+             #t))
          ;; The slow tests take longer than the specified timeout.
          ,@(if (any (cute string=? <> (%current-system))
                     '("armhf-linux" "aarch64-linux"))
-- 
2.30.1

From 8066818b81d68ba749abcb0a3d122c70d9d6a984 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:08:24 -0500
Subject: [PATCH 15/68] gnu: gdk-pixbuf+svg: Correct package definition to
 include changes from gdk-pixbuf.

* gnu/packages/gtk.scm (gdk-pixbuf+svg) [arguments]: Modify.
[synopsis]: Modify.
---
 gnu/packages/gtk.scm | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index c3a007ab23..b34d758f4a 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -660,10 +660,9 @@ scaled, composited, modified, saved, or rendered.")
      `(("librsvg" ,librsvg)
        ,@(package-inputs gdk-pixbuf)))
     (arguments
-     '(#:configure-flags '("-Dinstalled-tests=false")
-       #:tests? #f ; tested by the gdk-pixbuf package already
-       #:phases
-       (modify-phases %standard-phases
+     (substitute-keyword-arguments (package-arguments gdk-pixbuf)
+        ((#:phases phases)
+          `(modify-phases ,phases
          (add-after 'install 'register-svg-loader
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let* ((out     (assoc-ref outputs "out"))
@@ -677,9 +676,8 @@ scaled, composited, modified, saved, or rendered.")
                (apply invoke
                       gdk-pixbuf-query-loaders
                       "--update-cache"
-                      loaders)))))))
-    (synopsis
-     "GNOME image loading and manipulation library, with SVG support")))
+                      loaders))))))))
+    (synopsis "Image loading library, with SVG support")))
 
 (define-public at-spi2-core
   (package
-- 
2.30.1

From 6e06abc97a300d46d73698f348b5a68ca4c45fc1 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:20:37 -0500
Subject: [PATCH 16/68] gnu: vala: Fix indentation.

* gnu/packages/gnome.scm (vala): Fix indentation.
---
 gnu/packages/gnome.scm | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index eaea4c6cb6..01a86a193a 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4267,23 +4267,23 @@ passwords in the GNOME keyring.")
      '(#:phases
        (modify-phases %standard-phases
          (add-before 'check 'pre-check
-                     (lambda _
-                       (setenv "CC" "gcc")
-                       (substitute* "valadoc/tests/libvaladoc\
+           (lambda _
+             (setenv "CC" "gcc")
+             (substitute* "valadoc/tests/libvaladoc\
 /tests-extra-environment.sh"
-                         (("export PKG_CONFIG_PATH=" m)
-                          (string-append m "$PKG_CONFIG_PATH:"))))))))
+               (("export PKG_CONFIG_PATH=" m)
+                (string-append m "$PKG_CONFIG_PATH:"))))))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("flex" ,flex)
        ("bison" ,bison)
        ("xsltproc" ,libxslt)
-       ("dbus" ,dbus)                                     ; for dbus tests
+       ("dbus" ,dbus)                   ; for dbus tests
        ("gobject-introspection" ,gobject-introspection))) ; for gir tests
     (inputs
      `(("graphviz" ,graphviz)))
     (propagated-inputs
-     `(("glib" ,glib))) ; required by libvala-0.40.pc
+     `(("glib" ,glib)))                 ; required by libvala-0.40.pc
     (home-page "https://wiki.gnome.org/Projects/Vala/")
     (synopsis "Compiler for the GObject type system")
     (description
-- 
2.30.1

From f9dcc88185226a83b6d63f610962121a83ce80cf Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:21:35 -0500
Subject: [PATCH 17/68] gnu: vala: Change build-system.

* gnu/packages/gnome.scm (vala) [build-system]: Change from gnu to glib-or-gtk.
---
 gnu/packages/gnome.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 01a86a193a..6e2d9165e9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4262,7 +4262,7 @@ passwords in the GNOME keyring.")
               (sha256
                (base32
                 "1nx5xjarpkl9hgy0qbqfczx7d7clh5g1r8xr5xp8b97c5fsc2rb1"))))
-    (build-system gnu-build-system)
+    (build-system glib-or-gtk-build-system)
     (arguments
      '(#:phases
        (modify-phases %standard-phases
-- 
2.30.1

From 8a42fb2902f92602e8c4a452e2cf620806e0fa96 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:23:56 -0500
Subject: [PATCH 18/68] gnu: vala: Enable coverage support.

* gnu/packages/gnome.scm (vala) [arguments]<#:configure-flags>
[--enable-coverage]: New flag.
---
 gnu/packages/gnome.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 6e2d9165e9..d8b8fdb3e8 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4264,7 +4264,8 @@ passwords in the GNOME keyring.")
                 "1nx5xjarpkl9hgy0qbqfczx7d7clh5g1r8xr5xp8b97c5fsc2rb1"))))
     (build-system glib-or-gtk-build-system)
     (arguments
-     '(#:phases
+     '(#:configure-flags '("--enable-coverage")
+       #:phases
        (modify-phases %standard-phases
          (add-before 'check 'pre-check
            (lambda _
-- 
2.30.1

From 49aa1c38fd457c01fb82a13bf13a8c9afed24ac6 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:30:26 -0500
Subject: [PATCH 19/68] gnu: vala: Fix documentation.

* gnu/packages/gnome.scm (vala) [arguments]<#:phases>['patch-docbook-xml]: New phase.
[native-inputs]: Add docbook-xml and docbook-xsl.
---
 gnu/packages/gnome.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d8b8fdb3e8..733d2ac1e3 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4267,6 +4267,14 @@ passwords in the GNOME keyring.")
      '(#:configure-flags '("--enable-coverage")
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "doc/manual"
+               (substitute* '("manual.xml" "version.xml.in")
+                 (("http://www.oasis-open.org/docbook/xml/4.4/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))))
+             #t))
          (add-before 'check 'pre-check
            (lambda _
              (setenv "CC" "gcc")
@@ -4276,6 +4284,8 @@ passwords in the GNOME keyring.")
                 (string-append m "$PKG_CONFIG_PATH:"))))))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
+       ("docbook-xml" ,docbook-xml-4.4)
+       ("docbook-xsl" ,docbook-xsl)
        ("flex" ,flex)
        ("bison" ,bison)
        ("xsltproc" ,libxslt)
-- 
2.30.1

From 9b657b9ae9db9262d88c28910b88f18f59bc2ffa Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:34:48 -0500
Subject: [PATCH 20/68] gnu: vala: Add missing inputs and propagate libgvc.

* gnu/packages/gnome.scm (vala) [native-inputs]: Add help2man and perl.
[inputs]: Move graphviz to ...
[propagated-inputs]: ... here.
---
 gnu/packages/gnome.scm | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 733d2ac1e3..db014f9b34 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4283,18 +4283,19 @@ passwords in the GNOME keyring.")
                (("export PKG_CONFIG_PATH=" m)
                 (string-append m "$PKG_CONFIG_PATH:"))))))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("bison" ,bison)
+       ("dbus" ,dbus)                   ; for dbus tests
        ("docbook-xml" ,docbook-xml-4.4)
        ("docbook-xsl" ,docbook-xsl)
        ("flex" ,flex)
-       ("bison" ,bison)
-       ("xsltproc" ,libxslt)
-       ("dbus" ,dbus)                   ; for dbus tests
-       ("gobject-introspection" ,gobject-introspection))) ; for gir tests
-    (inputs
-     `(("graphviz" ,graphviz)))
+       ("gobject-introspection" ,gobject-introspection) ; for gir tests
+       ("help2man" ,help2man)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
     (propagated-inputs
-     `(("glib" ,glib)))                 ; required by libvala-0.40.pc
+     `(("glib" ,glib)                   ; required by libvala-0.40.pc
+       ("libgvc" ,graphviz)))
     (home-page "https://wiki.gnome.org/Projects/Vala/")
     (synopsis "Compiler for the GObject type system")
     (description
-- 
2.30.1

From 4680aceb9d240b1e261d98d4a3735562dad5dc4d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:38:26 -0500
Subject: [PATCH 21/68] gnu: vala: Update synopsis and description.

* gnu/packages/gnome.scm (vala) [synopsis]: Modify.
[description]: Modify.
---
 gnu/packages/gnome.scm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index db014f9b34..d02a7c5591 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4297,12 +4297,12 @@ passwords in the GNOME keyring.")
      `(("glib" ,glib)                   ; required by libvala-0.40.pc
        ("libgvc" ,graphviz)))
     (home-page "https://wiki.gnome.org/Projects/Vala/")
-    (synopsis "Compiler for the GObject type system")
-    (description
-     "Vala is a programming language that aims to bring modern programming
-language features to GNOME developers without imposing any additional runtime
-requirements and without using a different ABI compared to applications and
-libraries written in C.")
+    (synopsis "Compiler using the GObject type system")
+    (description "Vala is a programming language using modern high level
+abstractions without imposing additional runtime requirements and without using
+a different ABI compared to applications and libraries written in C.  Vala uses
+the GObject type system and has additional code generation routines that make
+targeting the GNOME stack simple.")
     (license license:lgpl2.1+)))
 
 (define-public vte
-- 
2.30.1

From f32446d337046c1b9534d8971ac5b38302178cba Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:53:42 -0500
Subject: [PATCH 22/68] gnu: libgsf: Change build-system.

* gnu/packages/gnome.scm (libgsf) [build-system]: Change from gnu to glib-or-gtk.
---
 gnu/packages/gnome.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d02a7c5591..3d9e98d0c9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3257,7 +3257,7 @@ XML/CSS rendering engine.")
               (sha256
                (base32
                 "0kbpp9ksl7977xiga37sk1gdw1r039v6zviqznl7alvvg39yp26i"))))
-    (build-system gnu-build-system)
+    (build-system glib-or-gtk-build-system)
     (arguments
      '(#:configure-flags '("--disable-static")))
     (native-inputs
-- 
2.30.1

From f18792280f1f267f3639ec893144f040ee66d96d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 11:56:04 -0500
Subject: [PATCH 23/68] gnu: libgsf: Make separate output for binaries.

* gnu/packages/gnome.scm (libgsf) [outputs]: New output "bin".
---
 gnu/packages/gnome.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 3d9e98d0c9..384535412f 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3258,6 +3258,7 @@ XML/CSS rendering engine.")
                (base32
                 "0kbpp9ksl7977xiga37sk1gdw1r039v6zviqznl7alvvg39yp26i"))))
     (build-system glib-or-gtk-build-system)
+    (outputs '("out" "bin"))
     (arguments
      '(#:configure-flags '("--disable-static")))
     (native-inputs
-- 
2.30.1

From 10b20548acc1978077761acf5ec2a7f9e989ef51 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:02:14 -0500
Subject: [PATCH 24/68] gnu: libgsf: Re-arrange inputs in alphabetical order.

* gnu/packages/gnome.scm (libgsf) [native-inputs]: Modify.
[inputs]: Modify.
---
 gnu/packages/gnome.scm | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 384535412f..ea37d4a7ca 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3262,15 +3262,13 @@ XML/CSS rendering engine.")
     (arguments
      '(#:configure-flags '("--disable-static")))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("gettext" ,gettext-minimal)
-
-       ;; For tests.
+     `(("gettext" ,gettext-minimal)
        ("perl" ,perl)
-       ("perl-xml-parser" ,perl-xml-parser)))
+       ("perl-xml-parser" ,perl-xml-parser)
+       ("pkg-config" ,pkg-config)))
     (inputs
-     `(("zlib" ,zlib)
-       ("bzip2" ,bzip2)))
+     `(("bzip2" ,bzip2)
+       ("zlib" ,zlib)))
     (propagated-inputs
      `(("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
-- 
2.30.1

From 7df7e488def2c6b70ada87fd2c1fdeb66888f020 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:08:10 -0500
Subject: [PATCH 25/68] gnu: libgsf: Enable missing features.

* gnu/packages/gnome.scm (libgsf) [arguments]<#:configure-flag>[--enable-introspection]: New flag.
[--with-gir-dir=]: New flag.
[--with-typelib-dir=]: New flag.
[--with-zlib]: New flag.
[--with-bz2]: New flag.
[native-inputs]: Add gobject-introspection.
---
 gnu/packages/gnome.scm | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index ea37d4a7ca..d4c20de8b0 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3260,9 +3260,27 @@ XML/CSS rendering engine.")
     (build-system glib-or-gtk-build-system)
     (outputs '("out" "bin"))
     (arguments
-     '(#:configure-flags '("--disable-static")))
+     `(#:configure-flags
+       (list
+        "--disable-static"
+        "--enable-introspection"
+        (string-append "--with-gir-dir="
+                       (assoc-ref %outputs "out")
+                       "/share/gir-"
+                       ,(version-major
+                         (package-version gobject-introspection))
+                       ".0")
+        (string-append "--with-typelib-dir="
+                       (assoc-ref %outputs "out")
+                       "/lib/girepository-"
+                       ,(version-major
+                         (package-version gobject-introspection))
+                       ".0")
+        "--with-zlib"
+        "--with-bz2")))
     (native-inputs
      `(("gettext" ,gettext-minimal)
+       ("gobject-introspection" ,gobject-introspection)
        ("perl" ,perl)
        ("perl-xml-parser" ,perl-xml-parser)
        ("pkg-config" ,pkg-config)))
-- 
2.30.1

From 34317800dd1d0016ea787b7cfcb58680935064c7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:11:02 -0500
Subject: [PATCH 26/68] gnu: libgsf: Correct inputs.

* gnu/packages/gnome.scm (libgsf) [native-inputs]: Add python-wrapper.
[propagated-inputs]: Move gdk-pixbuf to ...
[inputs]: ... here.
---
 gnu/packages/gnome.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d4c20de8b0..5cd1396d6c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3283,13 +3283,14 @@ XML/CSS rendering engine.")
        ("gobject-introspection" ,gobject-introspection)
        ("perl" ,perl)
        ("perl-xml-parser" ,perl-xml-parser)
-       ("pkg-config" ,pkg-config)))
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
     (inputs
      `(("bzip2" ,bzip2)
+       ("gdk-pixbuf" ,gdk-pixbuf)
        ("zlib" ,zlib)))
     (propagated-inputs
-     `(("gdk-pixbuf" ,gdk-pixbuf)
-       ("glib" ,glib)
+     `(("glib" ,glib)
        ("libxml2" ,libxml2)))
     (home-page "https://www.gnome.org/projects/libgsf")
     (synopsis "GNOME's Structured File Library")
-- 
2.30.1

From c0eda744064e6ed69f75803b87ca66100bd58fa9 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:20:52 -0500
Subject: [PATCH 27/68] gnu: libgsf: Enable documentation.

* gnu/packages/gnome.scm (libgsf) [outputs]: New output "doc".
[arguments]<#:configure-flags>[--with-html-dir]: New flag.
[native-inputs]: Add docbook-xml.
---
 gnu/packages/gnome.scm | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 5cd1396d6c..8965365855 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3258,7 +3258,7 @@ XML/CSS rendering engine.")
                (base32
                 "0kbpp9ksl7977xiga37sk1gdw1r039v6zviqznl7alvvg39yp26i"))))
     (build-system glib-or-gtk-build-system)
-    (outputs '("out" "bin"))
+    (outputs '("out" "bin" "doc"))
     (arguments
      `(#:configure-flags
        (list
@@ -3276,10 +3276,24 @@ XML/CSS rendering engine.")
                        ,(version-major
                          (package-version gobject-introspection))
                        ".0")
+        (string-append "--with-html-dir="
+                       (assoc-ref %outputs "doc")
+                       "/share/gtk-doc/html")
         "--with-zlib"
-        "--with-bz2")))
+        "--with-bz2")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "doc"
+               (substitute* "gsf-docs.xml"
+                 (("http://www.oasis-open.org/docbook/xml/4.5/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))))
+             #t)))))
     (native-inputs
-     `(("gettext" ,gettext-minimal)
+     `(("docbook-xml" ,docbook-xml)
+       ("gettext" ,gettext-minimal)
        ("gobject-introspection" ,gobject-introspection)
        ("perl" ,perl)
        ("perl-xml-parser" ,perl-xml-parser)
-- 
2.30.1

From d7472bbaa3b07fce0e2dbb11948b21b03c3cea4a Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:22:54 -0500
Subject: [PATCH 28/68] gnu: libgsf: Update synopsis, description, home-page
 and license.

* gnu/packages/gnome.scm (libgsf) [synopsis]: Modify.
[home-page]: Modify.
[description]: Modify.
[license]: Modify.
---
 gnu/packages/gnome.scm | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 8965365855..cbda2a93a7 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3306,14 +3306,16 @@ XML/CSS rendering engine.")
     (propagated-inputs
      `(("glib" ,glib)
        ("libxml2" ,libxml2)))
-    (home-page "https://www.gnome.org/projects/libgsf")
-    (synopsis "GNOME's Structured File Library")
-    (description
-     "Libgsf aims to provide an efficient extensible I/O abstraction for
-dealing with different structured file formats.")
-
-    ;; LGPLv2.1-only.
-    (license license:lgpl2.1)))
+    (synopsis "G Structured File Library")
+    (description "Libgsf aims to provide an efficient extensible I/O abstraction
+for dealing with different structured file formats.")
+    (home-page "https://gitlab.gnome.org/GNOME/libgsf")
+    (license
+     (list
+      ;; Library
+      license:lgpl2.1+
+      ;; Others
+      license:lgpl2.0+))))
 
 (define-public librsvg
   (package
-- 
2.30.1

From 7175184691380f747db8517988e1e859c022303b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:39:47 -0500
Subject: [PATCH 29/68] gnu: atk: Fix indentation.

* gnu/packages/gtk.scm (atk): Fix indentation.
---
 gnu/packages/gtk.scm | 44 ++++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index b34d758f4a..9e2759bd06 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -96,30 +96,30 @@
 
 (define-public atk
   (package
-   (name "atk")
-   (version "2.34.1")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "1jwp16r6p5z66k4b2v8zlzhyshhwlmyi27ippkrgqr8jsary7w6l"))))
-   (build-system meson-build-system)
-   (propagated-inputs `(("glib" ,glib))) ; required by atk.pc
-   (native-inputs
-    `(("pkg-config" ,pkg-config)
-      ("gettext" ,gettext-minimal)
-      ("glib" ,glib "bin")                               ; glib-mkenums, etc.
-      ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
-   (synopsis "GNOME accessibility toolkit")
-   (description
-    "ATK provides the set of accessibility interfaces that are implemented
+    (name "atk")
+    (version "2.34.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1jwp16r6p5z66k4b2v8zlzhyshhwlmyi27ippkrgqr8jsary7w6l"))))
+    (build-system meson-build-system)
+    (propagated-inputs `(("glib" ,glib))) ; required by atk.pc
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("gettext" ,gettext-minimal)
+       ("glib" ,glib "bin")             ; glib-mkenums, etc.
+       ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
+    (synopsis "GNOME accessibility toolkit")
+    (description
+     "ATK provides the set of accessibility interfaces that are implemented
 by other toolkits and applications.  Using the ATK interfaces, accessibility
 tools have full access to view and control running applications.")
-   (license license:lgpl2.0+)
-   (home-page "https://developer.gnome.org/atk/")))
+    (license license:lgpl2.0+)
+    (home-page "https://developer.gnome.org/atk/")))
 
 (define-public cairo
   (package
-- 
2.30.1

From c427a68ec7a2a596c7991f1bfac7ddb313b41ec2 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:41:46 -0500
Subject: [PATCH 30/68] gnu: atk: Re-arrange inputs in alphabetical order.

* gnu/packages/gtk.scm (atk) [native-inputs]: Modify.
---
 gnu/packages/gtk.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 9e2759bd06..3d1c32b952 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -109,10 +109,10 @@
     (build-system meson-build-system)
     (propagated-inputs `(("glib" ,glib))) ; required by atk.pc
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("gettext" ,gettext-minimal)
+     `(("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")             ; glib-mkenums, etc.
-       ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
+       ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
+       ("pkg-config" ,pkg-config)))
     (synopsis "GNOME accessibility toolkit")
     (description
      "ATK provides the set of accessibility interfaces that are implemented
-- 
2.30.1

From 1e4cfea7d94f75a6e346af0929305985a815f98a Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:44:36 -0500
Subject: [PATCH 31/68] gnu: atk: Update to 2.36.0.

* gnu/packages/gtk.scm (atk) [version]: Update to 2.36.0.
[arguments]<#:glib-or-gtk?>: New argument.
---
 gnu/packages/gtk.scm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 3d1c32b952..5cfe5bf8a4 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -97,7 +97,7 @@
 (define-public atk
   (package
     (name "atk")
-    (version "2.34.1")
+    (version "2.36.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -105,8 +105,10 @@
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1jwp16r6p5z66k4b2v8zlzhyshhwlmyi27ippkrgqr8jsary7w6l"))))
+                "1217cmmykjgkkim0zr1lv5j13733m4w5vipmy4ivw0ll6rz28xpv"))))
     (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t))  ; To wrap binaries and/or compile schemas
     (propagated-inputs `(("glib" ,glib))) ; required by atk.pc
     (native-inputs
      `(("gettext" ,gettext-minimal)
-- 
2.30.1

From 7dea981e3d214181618aba96bc95cfe31fe7e4c5 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:46:00 -0500
Subject: [PATCH 32/68] gnu: atk: Update home-page and license.

* gnu/packages/gtk.scm (atk) [home-page]: Modify.
[license]: Update to lgpl2.1+.
---
 gnu/packages/gtk.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5cfe5bf8a4..e12049a109 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -120,8 +120,8 @@
      "ATK provides the set of accessibility interfaces that are implemented
 by other toolkits and applications.  Using the ATK interfaces, accessibility
 tools have full access to view and control running applications.")
-    (license license:lgpl2.0+)
-    (home-page "https://developer.gnome.org/atk/")))
+    (license license:lgpl2.1+)
+    (home-page "https://wiki.gnome.org/Accessibility")))
 
 (define-public cairo
   (package
-- 
2.30.1

From 9e2ed951e36cfcf26f9593602cb6de7071941756 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:50:53 -0500
Subject: [PATCH 33/68] gnu: atkmm: Fix indentation.

* gnu/packages/gtk.scm (atkmm): Fix indentation.
---
 gnu/packages/gtk.scm | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index e12049a109..9cfeb69889 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1381,13 +1381,13 @@ library.")
     (name "atkmm")
     (version "2.28.0")
     (source (origin
-             (method url-fetch)
-             (uri (string-append "mirror://gnome/sources/" name "/"
-                                 (version-major+minor version)  "/"
-                                 name "-" version ".tar.xz"))
-             (sha256
-              (base32
-               "0fnxrspxkhhbrjphqrpvl3zjm66n50s4cywrrrwkhbflgy8zqk2c"))))
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0fnxrspxkhhbrjphqrpvl3zjm66n50s4cywrrrwkhbflgy8zqk2c"))))
     (build-system gnu-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)))
     (propagated-inputs
-- 
2.30.1

From 0f229b440be5837ec30f996891593969518f9248 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:52:35 -0500
Subject: [PATCH 34/68] gnu: atkmm: Change build-system.

* gnu/packages/gtk.scm (atkmm) [build-system]: Change from gnu to glib-or-gtk.
---
 gnu/packages/gtk.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 9cfeb69889..1d3e7542ed 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1388,7 +1388,7 @@ library.")
               (sha256
                (base32
                 "0fnxrspxkhhbrjphqrpvl3zjm66n50s4cywrrrwkhbflgy8zqk2c"))))
-    (build-system gnu-build-system)
+    (build-system glib-or-gtk-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)))
     (propagated-inputs
      `(("glibmm" ,glibmm) ("atk" ,atk)))
-- 
2.30.1

From 79430041366d67e81b614bfa531aa949ff146db8 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:55:27 -0500
Subject: [PATCH 35/68] gnu: atkmm: Add missing inputs.

* gnu/packages/gtk.scm (atkmm) [native-inputs]: Add m4, mm-common,
perl and libxslt.
---
 gnu/packages/gtk.scm | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 1d3e7542ed..894757f2df 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -77,6 +77,7 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages m4)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -1389,7 +1390,12 @@ library.")
                (base32
                 "0fnxrspxkhhbrjphqrpvl3zjm66n50s4cywrrrwkhbflgy8zqk2c"))))
     (build-system glib-or-gtk-build-system)
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs
+     `(("m4" ,m4)
+       ("mm-common" ,mm-common)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
     (propagated-inputs
      `(("glibmm" ,glibmm) ("atk" ,atk)))
     (home-page "https://www.gtkmm.org")
-- 
2.30.1

From 6ee34e17aba042ba4d51ae818065e97f945811ca Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 12:59:21 -0500
Subject: [PATCH 36/68] gnu: atkmm: Enable documentation.

* gnu/packages/gtk.scm (atkmm) [outputs]: Add new output "doc".
[arguments]<#:phases>['move-doc]: New phase.
[native-inputs]: Add graphviz, doxygen.
---
 gnu/packages/gtk.scm | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 894757f2df..611b0736aa 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1390,8 +1390,23 @@ library.")
                (base32
                 "0fnxrspxkhhbrjphqrpvl3zjm66n50s4cywrrrwkhbflgy8zqk2c"))))
     (build-system glib-or-gtk-build-system)
+    (outputs '("out" "doc"))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'move-doc
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (assoc-ref outputs "doc")))
+               (mkdir-p (string-append doc "/share"))
+               (rename-file
+                (string-append out "/share/doc")
+                (string-append doc "/share/doc"))
+               #t))))))
     (native-inputs
-     `(("m4" ,m4)
+     `(("dot" ,graphviz)
+       ("doxygen" ,doxygen)
+       ("m4" ,m4)
        ("mm-common" ,mm-common)
        ("perl" ,perl)
        ("pkg-config" ,pkg-config)
-- 
2.30.1

From 093687871537d1be22ccc741b5513339211a565b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:01:19 -0500
Subject: [PATCH 37/68] gnu: atkmm: Update synopsis, description, home-page and
 license.

* gnu/packages/gtk.scm (atkmm) [synopsis]: Modify.
[description]: Modify.
[home-page]: Modify.
[license]: Add gpl2+.
---
 gnu/packages/gtk.scm | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 611b0736aa..c8eab2c0aa 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1413,12 +1413,15 @@ library.")
        ("xsltproc" ,libxslt)))
     (propagated-inputs
      `(("glibmm" ,glibmm) ("atk" ,atk)))
-    (home-page "https://www.gtkmm.org")
-    (synopsis "C++ interface to the ATK accessibility library")
-    (description
-     "ATKmm provides a C++ programming interface to the ATK accessibility
-toolkit.")
-    (license license:lgpl2.1+)))
+    (synopsis "C++ bindings for ATK")
+    (description "ATKmm is the C++ binding for the ATK library.")
+    (home-page "https://wiki.gnome.org/Accessibility")
+    (license
+     (list
+      ;; Library
+      license:lgpl2.1+
+      ;; Tools
+      license:gpl2+))))
 
 (define-public gtkmm
   (package
-- 
2.30.1

From b9c89edebe1c3db923fe6cc8354a79d1d1c37ab3 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:17:35 -0500
Subject: [PATCH 38/68] gnu: at-spi2-core: Update to 2.36.0.

* gnu/packages/gtk.scm (at-spi2-core) [version]: Update to 2.36.0.
[arguments]<#:glib-or-gtk?>: New argument.
---
 gnu/packages/gtk.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index c8eab2c0aa..f3038ea02c 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -685,7 +685,7 @@ scaled, composited, modified, saved, or rendered.")
 (define-public at-spi2-core
   (package
    (name "at-spi2-core")
-   (version "2.34.0")
+   (version "2.36.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -693,11 +693,12 @@ scaled, composited, modified, saved, or rendered.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1ihixwhh3c16q6253qj9gf69741rb2pi51822a4rylsfcyywsafn"))))
+              "0nn0lnf07ayysq8c8irmvc91c2dszn04m5qs6jy60g3y1bg5gnl8"))))
    (build-system meson-build-system)
    (outputs '("out" "doc"))
    (arguments
-    '(#:configure-flags
+    '(#:glib-or-gtk? #t    ; To wrap binaries and/or compile schemas
+      #:configure-flags
       (list "-Ddocs=true")
       #:phases
       (modify-phases %standard-phases
-- 
2.30.1

From 19f6684abd8128ef5668b5dde50ed74fe88c0ddb Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:20:37 -0500
Subject: [PATCH 39/68] gnu: at-spi2-core: Add missing inputs.

* gnu/packages/gtk.scm (at-spi2-core) [native-inputs]: Add python-wrapper.
[propagated-inputs]: Add libx11.
---
 gnu/packages/gtk.scm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index f3038ea02c..ad0d1144fc 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -737,14 +737,16 @@ scaled, composited, modified, saved, or rendered.")
     ;; atspi-2.pc refers to all these.
     `(("dbus" ,dbus)
       ("glib" ,glib)
+      ("libx11" ,libx11)
       ("libxi" ,libxi)
       ("libxtst" ,libxtst)))
    (native-inputs
     `(("gettext" ,gettext-minimal)
+      ("glib" ,glib "bin")
       ("gobject-introspection" ,gobject-introspection)
       ("gtk-doc" ,gtk-doc)
-      ("glib" ,glib "bin")
-      ("pkg-config" ,pkg-config)))
+      ("pkg-config" ,pkg-config)
+      ("python" ,python-wrapper)))
    (synopsis "Assistive Technology Service Provider Interface, core components")
    (description
     "The Assistive Technology Service Provider Interface, core components,
-- 
2.30.1

From d080196e9354cc96162c023678c817aaa03ba740 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:22:41 -0500
Subject: [PATCH 40/68] gnu: at-spi2-core: Fix intendation.

* gnu/packages/gtk.scm (at-spi2-core): Fix indentation.
---
 gnu/packages/gtk.scm | 134 +++++++++++++++++++++----------------------
 1 file changed, 67 insertions(+), 67 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index ad0d1144fc..02cdc30911 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -684,75 +684,75 @@ scaled, composited, modified, saved, or rendered.")
 
 (define-public at-spi2-core
   (package
-   (name "at-spi2-core")
-   (version "2.36.0")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "0nn0lnf07ayysq8c8irmvc91c2dszn04m5qs6jy60g3y1bg5gnl8"))))
-   (build-system meson-build-system)
-   (outputs '("out" "doc"))
-   (arguments
-    '(#:glib-or-gtk? #t    ; To wrap binaries and/or compile schemas
-      #:configure-flags
-      (list "-Ddocs=true")
-      #:phases
-      (modify-phases %standard-phases
-        (add-after 'unpack 'set-documentation-path
-          (lambda* (#:key outputs #:allow-other-keys)
-            ;; Ensure that the cross-references point to the "doc" output.
-            (substitute* "doc/libatspi/meson.build"
-              (("docpath =.*")
-               (string-append "docpath = '" (assoc-ref outputs "doc") "/share/gtk-doc/html'\n")))
-            #t))
-        (add-before 'install 'prepare-doc-directory
-          (lambda* (#:key outputs #:allow-other-keys)
-            (mkdir-p (string-append (assoc-ref outputs "doc") "/share"))
-            #t))
-        (add-after 'install 'move-documentation
-          (lambda* (#:key outputs #:allow-other-keys)
-            (let ((out (assoc-ref outputs "out"))
-                  (doc (assoc-ref outputs "doc")))
-              (copy-recursively
-               (string-append out "/share/gtk-doc")
-               (string-append doc "/share/gtk-doc"))
-              (delete-file-recursively
-               (string-append out "/share/gtk-doc")))
-            #t))
-        (add-after 'install 'check
-          (lambda _
-            (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
-            ;; Run test-suite under a dbus session.
-            (setenv "XDG_DATA_DIRS"     ; for finding org.xfce.Xfconf.service
-                    (string-append %output "/share"))
-            ;; Don't fail on missing  '/etc/machine-id'.
-            (setenv "DBUS_FATAL_WARNINGS" "0") ;
-            (invoke "dbus-launch" "ninja" "test")))
+    (name "at-spi2-core")
+    (version "2.36.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0nn0lnf07ayysq8c8irmvc91c2dszn04m5qs6jy60g3y1bg5gnl8"))))
+    (build-system meson-build-system)
+    (outputs '("out" "doc"))
+    (arguments
+     '(#:glib-or-gtk? #t     ; To wrap binaries and/or compile schemas
+       #:configure-flags
+       (list "-Ddocs=true")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-documentation-path
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Ensure that the cross-references point to the "doc" output.
+             (substitute* "doc/libatspi/meson.build"
+               (("docpath =.*")
+                (string-append "docpath = '" (assoc-ref outputs "doc") "/share/gtk-doc/html'\n")))
+             #t))
+         (add-before 'install 'prepare-doc-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p (string-append (assoc-ref outputs "doc") "/share"))
+             #t))
+         (add-after 'install 'move-documentation
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (doc (assoc-ref outputs "doc")))
+               (copy-recursively
+                (string-append out "/share/gtk-doc")
+                (string-append doc "/share/gtk-doc"))
+               (delete-file-recursively
+                (string-append out "/share/gtk-doc")))
+             #t))
+         (add-after 'install 'check
+           (lambda _
+             (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
+             ;; Run test-suite under a dbus session.
+             (setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service
+                     (string-append %output "/share"))
+             ;; Don't fail on missing  '/etc/machine-id'.
+             (setenv "DBUS_FATAL_WARNINGS" "0") ;
+             (invoke "dbus-launch" "ninja" "test")))
          (delete 'check))))
-   (propagated-inputs
-    ;; atspi-2.pc refers to all these.
-    `(("dbus" ,dbus)
-      ("glib" ,glib)
-      ("libx11" ,libx11)
-      ("libxi" ,libxi)
-      ("libxtst" ,libxtst)))
-   (native-inputs
-    `(("gettext" ,gettext-minimal)
-      ("glib" ,glib "bin")
-      ("gobject-introspection" ,gobject-introspection)
-      ("gtk-doc" ,gtk-doc)
-      ("pkg-config" ,pkg-config)
-      ("python" ,python-wrapper)))
-   (synopsis "Assistive Technology Service Provider Interface, core components")
-   (description
-    "The Assistive Technology Service Provider Interface, core components,
+    (propagated-inputs
+     ;; atspi-2.pc refers to all these.
+     `(("dbus" ,dbus)
+       ("glib" ,glib)
+       ("libx11" ,libx11)
+       ("libxi" ,libxi)
+       ("libxtst" ,libxtst)))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("gtk-doc" ,gtk-doc)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
+    (synopsis "Assistive Technology Service Provider Interface, core components")
+    (description
+     "The Assistive Technology Service Provider Interface, core components,
 is part of the GNOME accessibility project.")
-   (license license:lgpl2.0+)
-   (home-page "https://projects.gnome.org/accessibility/")))
+    (license license:lgpl2.0+)
+    (home-page "https://projects.gnome.org/accessibility/")))
 
 ;;; A minimal variant used to prevent a cycle with Inkscape.
 (define at-spi2-core-minimal
-- 
2.30.1

From 02dafcff4d4e7ecbd486cdd4dde153f14387427c Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:24:57 -0500
Subject: [PATCH 41/68] gnu: at-spi2-core: Fix documentation.

* gnu/packages/gtk.scm (at-spi2-core) [arguments]<#:phases>['patch-docbook-sgml]: New phase.
[native-inputs]: Add docbook-xml.
---
 gnu/packages/gtk.scm | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 02cdc30911..1d1bd6ca42 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -713,6 +713,14 @@ scaled, composited, modified, saved, or rendered.")
            (lambda* (#:key outputs #:allow-other-keys)
              (mkdir-p (string-append (assoc-ref outputs "doc") "/share"))
              #t))
+         (add-after 'unpack 'patch-docbook-sgml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((xmldoc (string-append (assoc-ref inputs "docbook-xml")
+                                           "/xml/dtd/docbook")))
+               (substitute* "doc/libatspi/libatspi-docs.sgml"
+                 (("http://.*/docbookx\\.dtd")
+                  (string-append xmldoc "/docbookx.dtd")))
+               #t)))
          (add-after 'install 'move-documentation
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out"))
@@ -741,7 +749,8 @@ scaled, composited, modified, saved, or rendered.")
        ("libxi" ,libxi)
        ("libxtst" ,libxtst)))
     (native-inputs
-     `(("gettext" ,gettext-minimal)
+     `(("docbook-xml" ,docbook-xml-4.3)
+       ("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
        ("gtk-doc" ,gtk-doc)
-- 
2.30.1

From 9c268d642ad78b48bd332d6511ddac296cdf086f Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:26:26 -0500
Subject: [PATCH 42/68] gnu: at-spi2-core: Update home-page and license.

* gnu/packages/gtk.scm (at-spi2-core) [home-page]: Modify.
[license]: Update to lgpl2.1+.
---
 gnu/packages/gtk.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 1d1bd6ca42..1d404e0ae7 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -760,8 +760,8 @@ scaled, composited, modified, saved, or rendered.")
     (description
      "The Assistive Technology Service Provider Interface, core components,
 is part of the GNOME accessibility project.")
-    (license license:lgpl2.0+)
-    (home-page "https://projects.gnome.org/accessibility/")))
+    (license license:lgpl2.1+)
+    (home-page "https://wiki.gnome.org/Accessibility/")))
 
 ;;; A minimal variant used to prevent a cycle with Inkscape.
 (define at-spi2-core-minimal
-- 
2.30.1

From f3b1ce08d80cfa81120b788502e77a05b19a7b14 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:29:52 -0500
Subject: [PATCH 43/68] gnu: at-spi2-atk: Fix indentation.

* gnu/packages/gtk.scm (at-spi2-atk): Fix indentation.
---
 gnu/packages/gtk.scm | 70 ++++++++++++++++++++++----------------------
 1 file changed, 35 insertions(+), 35 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 1d404e0ae7..5cd22bdd0c 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -783,42 +783,42 @@ is part of the GNOME accessibility project.")
 
 (define-public at-spi2-atk
   (package
-   (name "at-spi2-atk")
-   (version "2.34.1")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "05ncp7s5nddjinffs26mcvpbd63vk1m3cv5y530p3plgfhqgjvbp"))))
-   (build-system meson-build-system)
-   (arguments
-    '(#:phases
-      (modify-phases %standard-phases
-        (replace 'check
-                 ;; Run test-suite under a dbus session.
-                 (lambda _
-                   (setenv "DBUS_FATAL_WARNINGS" "0")
-                   (invoke "dbus-launch" "meson" "test"))))))
-   (propagated-inputs
-    ;; TODO: Replace by at-spi2-core-minimal in the next staging window, or
-    ;; when Inkscape 0.92 is upgraded to 1.0 to avoid a cycle.
-    `(("at-spi2-core" ,at-spi2-core))) ; required by atk-bridge-2.0.pc
-   (inputs
-    `(("atk" ,atk)))
-   (native-inputs
-    `(("pkg-config" ,pkg-config)
-      ;; For tests.
-      ("dbus" ,dbus)
-      ("libxml2" ,libxml2)))
-   (synopsis "Assistive Technology Service Provider Interface, ATK bindings")
-   (description
-    "The Assistive Technology Service Provider Interface
+    (name "at-spi2-atk")
+    (version "2.34.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "05ncp7s5nddjinffs26mcvpbd63vk1m3cv5y530p3plgfhqgjvbp"))))
+    (build-system meson-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           ;; Run test-suite under a dbus session.
+           (lambda _
+             (setenv "DBUS_FATAL_WARNINGS" "0")
+             (invoke "dbus-launch" "meson" "test"))))))
+    (propagated-inputs
+     ;; TODO: Replace by at-spi2-core-minimal in the next staging window, or
+     ;; when Inkscape 0.92 is upgraded to 1.0 to avoid a cycle.
+     `(("at-spi2-core" ,at-spi2-core))) ; required by atk-bridge-2.0.pc
+    (inputs
+     `(("atk" ,atk)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ;; For tests.
+       ("dbus" ,dbus)
+       ("libxml2" ,libxml2)))
+    (synopsis "Assistive Technology Service Provider Interface, ATK bindings")
+    (description
+     "The Assistive Technology Service Provider Interface
 is part of the GNOME accessibility project.")
-   (license license:lgpl2.0+)
-   (home-page "https://projects.gnome.org/accessibility/")))
+    (license license:lgpl2.0+)
+    (home-page "https://projects.gnome.org/accessibility/")))
 
 (define-public gtk+-2
   (package
-- 
2.30.1

From e5bc0f107216fedac6ce6eb3e2769ecf9955885a Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:33:47 -0500
Subject: [PATCH 44/68] gnu: at-spi2-atk: Update to 2.34.2.

* gnu/packages/gtk.scm (at-spi2-atk) [version]: Update to 2.34.2.
[arguments]<#:glib-or-gtk?>: New argument.
[native-inputs]: Add gobject-introspection.
[inputs]: Add glib.
---
 gnu/packages/gtk.scm | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5cd22bdd0c..98c30cf4e5 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -784,7 +784,7 @@ is part of the GNOME accessibility project.")
 (define-public at-spi2-atk
   (package
     (name "at-spi2-atk")
-    (version "2.34.1")
+    (version "2.34.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -792,10 +792,11 @@ is part of the GNOME accessibility project.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "05ncp7s5nddjinffs26mcvpbd63vk1m3cv5y530p3plgfhqgjvbp"))))
+                "1w7l4xg00qx3dwhn0zaa64daiv5f073hdvjdxh0mrw7fw37264wh"))))
     (build-system meson-build-system)
     (arguments
-     '(#:phases
+     `(#:glib-or-gtk? #t     ; To wrap binaries and/or compile schemas
+       #:phases
        (modify-phases %standard-phases
          (replace 'check
            ;; Run test-suite under a dbus session.
@@ -807,12 +808,13 @@ is part of the GNOME accessibility project.")
      ;; when Inkscape 0.92 is upgraded to 1.0 to avoid a cycle.
      `(("at-spi2-core" ,at-spi2-core))) ; required by atk-bridge-2.0.pc
     (inputs
-     `(("atk" ,atk)))
+     `(("atk" ,atk)
+       ("glib" ,glib)))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ;; For tests.
-       ("dbus" ,dbus)
-       ("libxml2" ,libxml2)))
+     `(("dbus" ,dbus)                ; For tests
+       ("gobject-introspection" ,gobject-introspection)
+       ("libxml2" ,libxml2)
+       ("pkg-config" ,pkg-config)))
     (synopsis "Assistive Technology Service Provider Interface, ATK bindings")
     (description
      "The Assistive Technology Service Provider Interface
-- 
2.30.1

From aca1f7f18725383d25166ec8e3d3a37450c81063 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Thu, 11 Mar 2021 13:35:04 -0500
Subject: [PATCH 45/68] gnu: at-spi2-atk: Update home-page and license.

* gnu/packages/gtk.scm (at-spi2-atk) [home-page]: Modify.
[license]: Update to lgpl2.1+.
---
 gnu/packages/gtk.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 98c30cf4e5..c45bbb6d2f 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -819,8 +819,8 @@ is part of the GNOME accessibility project.")
     (description
      "The Assistive Technology Service Provider Interface
 is part of the GNOME accessibility project.")
-    (license license:lgpl2.0+)
-    (home-page "https://projects.gnome.org/accessibility/")))
+    (license license:lgpl2.1+)
+    (home-page "https://wiki.gnome.org/Accessibility/")))
 
 (define-public gtk+-2
   (package
-- 
2.30.1

From 010b14081e7d1292ffc8affd105a74644cd9c43f Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 07:54:08 -0500
Subject: [PATCH 46/68] gnu: gtk+-2: Fix indentation.

* gnu/packages/gtk.scm (gtk+-2): Fix indentation.
---
 gnu/packages/gtk.scm | 132 +++++++++++++++++++++----------------------
 1 file changed, 66 insertions(+), 66 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index c45bbb6d2f..84d20ecafb 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -824,77 +824,77 @@ is part of the GNOME accessibility project.")
 
 (define-public gtk+-2
   (package
-   (name "gtk+")
-   (version "2.24.32")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnome/sources/" name "/"
-                                (version-major+minor version)  "/"
-                                name "-" version ".tar.xz"))
-            (sha256
-             (base32
-              "0bjq7ja9gwcv6n5q4qkvdjjx40wsdiikksz1zqxvxsm5vlyskj5n"))
-            (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
-                                     "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
-                                     "gtk2-theme-paths.patch"))))
-   (build-system gnu-build-system)
-   (outputs '("out" "bin" "doc"))
-   (propagated-inputs
-    `(("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))
-      ("pango" ,pango)))
-   (inputs
-    `(("cups" ,cups)
-      ("libxcomposite" ,libxcomposite)
-      ("libxcursor" ,libxcursor)
-      ("libxdamage" ,libxdamage)
-      ("libxi" ,libxi)
-      ("libxinerama" ,libxinerama)
-      ("libxrandr" ,libxrandr)))
-   (native-inputs
-    `(("perl" ,perl)
-      ("gettext" ,gettext-minimal)
-      ("glib" ,glib "bin")
-      ("gobject-introspection" ,gobject-introspection)
-      ("pkg-config" ,pkg-config)
-      ("python-wrapper" ,python-wrapper)))
-   (arguments
-    `(#:configure-flags
-      (list "--with-xinput=yes"
-            (string-append "--with-html-dir="
-                           (assoc-ref %outputs "doc")
-                           "/share/gtk-doc/html"))
-      #:phases
-      (modify-phases %standard-phases
-        (add-before 'configure 'disable-tests
-          (lambda _
-            ;; FIXME: re-enable tests requiring an X server
-            (substitute* "gtk/Makefile.in"
-              (("SUBDIRS = theme-bits . tests") "SUBDIRS = theme-bits ."))
-            #t))
-        (add-after 'install 'remove-cache
-          (lambda* (#:key outputs #:allow-other-keys)
-	    (for-each
+    (name "gtk+")
+    (version "2.24.32")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0bjq7ja9gwcv6n5q4qkvdjjx40wsdiikksz1zqxvxsm5vlyskj5n"))
+              (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
+                                       "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
+                                       "gtk2-theme-paths.patch"))))
+    (build-system gnu-build-system)
+    (outputs '("out" "bin" "doc"))
+    (propagated-inputs
+     `(("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))
+       ("pango" ,pango)))
+    (inputs
+     `(("cups" ,cups)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxi" ,libxi)
+       ("libxinerama" ,libxinerama)
+       ("libxrandr" ,libxrandr)))
+    (native-inputs
+     `(("perl" ,perl)
+       ("gettext" ,gettext-minimal)
+       ("glib" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("pkg-config" ,pkg-config)
+       ("python-wrapper" ,python-wrapper)))
+    (arguments
+     `(#:configure-flags
+       (list "--with-xinput=yes"
+             (string-append "--with-html-dir="
+                            (assoc-ref %outputs "doc")
+                            "/share/gtk-doc/html"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'disable-tests
+           (lambda _
+             ;; FIXME: re-enable tests requiring an X server
+             (substitute* "gtk/Makefile.in"
+               (("SUBDIRS = theme-bits . tests") "SUBDIRS = theme-bits ."))
+             #t))
+         (add-after 'install 'remove-cache
+           (lambda* (#:key outputs #:allow-other-keys)
+	     (for-each
 	      delete-file
 	      (find-files (assoc-ref outputs "out") "immodules.cache"))
-            #t)))))
-   (native-search-paths
-    (list (search-path-specification
-           (variable "GUIX_GTK2_PATH")
-           (files '("lib/gtk-2.0")))))
-   (synopsis "Cross-platform toolkit for creating graphical user interfaces")
-   (description
-    "GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating
+             #t)))))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "GUIX_GTK2_PATH")
+            (files '("lib/gtk-2.0")))))
+    (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.")
-   (license license:lgpl2.0+)
-   (home-page "https://www.gtk.org/")))
+    (license license:lgpl2.0+)
+    (home-page "https://www.gtk.org/")))
 
 (define-public gtk+
   (package (inherit gtk+-2)
-- 
2.30.1

From 7ee4f778ed433feab8a07225b6c40d5ac77bfe66 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 07:58:04 -0500
Subject: [PATCH 47/68] gnu: gtk+-2: Enable tests.

* gnu/packages/gtk.scm (gtk+-2) [arguments]<#:phases>['disable-tests]: Remove phase.
['disable-failing-tests]: New phase.
['pre-check]: New phase.
[native-inputs]: Add xorg-server-for-tests.
---
 gnu/packages/gtk.scm | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 84d20ecafb..227cdff7f4 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -862,7 +862,8 @@ is part of the GNOME accessibility project.")
        ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
        ("pkg-config" ,pkg-config)
-       ("python-wrapper" ,python-wrapper)))
+       ("python-wrapper" ,python-wrapper)
+       ("xorg-server" ,xorg-server-for-tests)))
     (arguments
      `(#:configure-flags
        (list "--with-xinput=yes"
@@ -871,11 +872,26 @@ is part of the GNOME accessibility project.")
                             "/share/gtk-doc/html"))
        #:phases
        (modify-phases %standard-phases
-         (add-before 'configure 'disable-tests
+         (add-after 'unpack 'disable-failing-tests
            (lambda _
-             ;; FIXME: re-enable tests requiring an X server
-             (substitute* "gtk/Makefile.in"
-               (("SUBDIRS = theme-bits . tests") "SUBDIRS = theme-bits ."))
+             (substitute* "gtk/tests/recentmanager.c"
+               (("g_test_add_func \\(\"/recent-manager/add-many\", recent_manager_add_many\\);")
+                ""))
+             (substitute* "gtk/tests/defaultvalue.c"
+               (("return g_test_run\\(\\);")
+                ""))
+             #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 'remove-cache
            (lambda* (#:key outputs #:allow-other-keys)
-- 
2.30.1

From f6171cef8d4f758be1c8d307bf54ea7f4e208c83 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:05:28 -0500
Subject: [PATCH 48/68] gnu: gtk+-2: Add missing inputs and search-path.

* gnu/packages/gtk.scm (gtk+-2) [native-inputs]: Add intltool.
[inputs]: Add libx11, libxext, libxkbcommon, libxrender and libxshmfence.
[propagated-inputs]: Add cairo and glib.
[search-paths]: New field.
---
 gnu/packages/gtk.scm | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 227cdff7f4..77bb0d4656 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -841,26 +841,34 @@ is part of the GNOME accessibility project.")
     (outputs '("out" "bin" "doc"))
     (propagated-inputs
      `(("atk" ,atk)
+       ("cairo" ,cairo)
        ;; 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))
+       ("glib" ,glib)
        ("pango" ,pango)))
     (inputs
      `(("cups" ,cups)
+       ("libx11" ,libx11)
        ("libxcomposite" ,libxcomposite)
        ("libxcursor" ,libxcursor)
+       ("libxext" ,libxext)
        ("libxdamage" ,libxdamage)
        ("libxi" ,libxi)
        ("libxinerama" ,libxinerama)
-       ("libxrandr" ,libxrandr)))
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxshmfence" ,libxshmfence)))
     (native-inputs
-     `(("perl" ,perl)
-       ("gettext" ,gettext-minimal)
+     `(("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
+       ("intltool" ,intltool)
+       ("perl" ,perl)
        ("pkg-config" ,pkg-config)
        ("python-wrapper" ,python-wrapper)
        ("xorg-server" ,xorg-server-for-tests)))
@@ -903,6 +911,7 @@ is part of the GNOME accessibility project.")
      (list (search-path-specification
             (variable "GUIX_GTK2_PATH")
             (files '("lib/gtk-2.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
-- 
2.30.1

From eafeffe88843bed56671a108fa1e3e7d890d9533 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:15:52 -0500
Subject: [PATCH 49/68] gnu: gtk+: Fix indentation.

* gnu/packages/gtk.scm (gtk+): Fix indentation.
---
 gnu/packages/gtk.scm | 185 ++++++++++++++++++++++---------------------
 1 file changed, 94 insertions(+), 91 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 77bb0d4656..c288a0f1ce 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -922,97 +922,100 @@ 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)
-      ;; 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-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-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")))))))
 
 ;;;
 ;;; Guile bindings.
-- 
2.30.1

From 9a14228eec61f1bbc14b537044d3de4229bcaaa3 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:24:01 -0500
Subject: [PATCH 50/68] gnu: gtk+: Enable tests.

* gnu/packages/gtk.scm (gtk+) [arguments]<#:phases>['pre-configure]: Remove phase.
['disable-failing-tests]: New phase.
['pre-check]: New phase.
---
 gnu/packages/gtk.scm | 35 ++++++++++++++++++++++++++---------
 1 file changed, 26 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index c288a0f1ce..6ee702de2a 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -992,16 +992,33 @@ application suites.")
                                "--enable-broadway-backend")
        #:phases
        (modify-phases %standard-phases
-         (add-before 'configure 'pre-configure
+         (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 _
-             ;; 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"))
+             ;; 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.
-- 
2.30.1

From fc595684db2197067f9c9c7912770f5c0d11e2b6 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:32:10 -0500
Subject: [PATCH 51/68] gnu: gtk+: Add missing inputs.

* gnu/packages/gtk.scm (gtk+) [native-inputs]: Add docbook-xml,
hicolor-icon-theme, intltool, sassc and libxslt.
[inputs]: Add graphene, harfbuzz, iso-codes and papi.
[propagated-inputs]: Add cairo, fribidi, fontconfig, freetype, glib,
libx11, libxcomposite, libxext, libxfixes and libxrender.
---
 gnu/packages/gtk.scm | 45 +++++++++++++++++++++++++++++++-------------
 1 file changed, 32 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 6ee702de2a..aa11271756 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -938,44 +938,63 @@ application suites.")
        (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)
+     `(("atk" ,atk)
+       ("at-spi2-atk" ,at-spi2-atk)
+       ("cairo" ,cairo)
+       ("fribidi" ,fribidi)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
        ;; 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))
+       ("glib" ,glib)
        ("libepoxy" ,libepoxy)
+       ("libx11" ,libx11)
+       ("libxcomposite" ,libxcomposite)
        ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
        ("libxi" ,libxi)
        ("libxinerama" ,libxinerama)
        ("libxkbcommon" ,libxkbcommon)
-       ("libxdamage" ,libxdamage)
        ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
        ("mesa" ,mesa)
        ("pango" ,pango)
        ("wayland" ,wayland)
        ("wayland-protocols" ,wayland-protocols)))
     (inputs
-     `(("libxml2" ,libxml2)
-       ;; XXX: colord depends on mozjs (through polkit), which fails on
+     `(;; XXX: colord depends on mozjs (through polkit), which fails on
        ;;      on non-intel systems now.
-       ;;("colord" ,colord)
-       ("cups" ,cups)                   ;for printing support
+       ("colord" ,colord)
+       ("cups" ,cups)
+       ("graphene" ,graphene)
+       ("harfbuzz" ,harfbuzz)
+       ("iso-codes" ,iso-codes)
+       ("json-glib" ,json-glib)
+       ("libxml2" ,libxml2)
+       ("papi" ,papi)
        ;; XXX: rest depends on p11-kit, which fails on mips64el now.
-       ;;("rest" ,rest)
-       ("json-glib" ,json-glib)))
+       ("rest" ,rest)))
     (native-inputs
-     `(("perl" ,perl)
-       ("glib" ,glib "bin")
+     `(("docbook-xml" ,docbook-xml-4.1.2)
        ("gettext" ,gettext-minimal)
-       ("pkg-config" ,pkg-config)
+       ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
+       ("hicolor-icon-theme" ,hicolor-icon-theme)
+       ("intltool" ,intltool)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
        ("python-wrapper" ,python-wrapper)
+       ("sassc" ,sassc)
        ;; 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)))
+       ("xorg-server" ,xorg-server-for-tests)
+       ("xsltproc" ,libxslt)))
     (arguments
      `(#:disallowed-references (,xorg-server-for-tests)
        ;; 47 MiB goes to "out" (24 of which is locale data!), and 26 MiB goes
-- 
2.30.1

From 6c26205dd5b13471c5e4b2e9bd1ba55c2928ad38 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:36:52 -0500
Subject: [PATCH 52/68] gnu: gtk+: Enable cloud-providers support.

* gnu/packages/gtk.scm (gtk+) [arguments]<#:configure-flags>
[--enable-cloudproviders]: New flag.
[propagated-inputs]: Add libcloudproviders.
---
 gnu/packages/gtk.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index aa11271756..8aaf6dcf00 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -951,6 +951,7 @@ application suites.")
                           gdk-pixbuf+svg
                           gdk-pixbuf))
        ("glib" ,glib)
+       ("libcloudproviders" ,libcloudproviders)
        ("libepoxy" ,libepoxy)
        ("libx11" ,libx11)
        ("libxcomposite" ,libxcomposite)
@@ -1002,6 +1003,7 @@ application suites.")
        #:configure-flags (list (string-append "--with-html-dir="
                                               (assoc-ref %outputs "doc")
                                               "/share/gtk-doc/html")
+                               "--enable-cloudproviders"
                                ;; The header file <gdk/gdkwayland.h> is required
                                ;; by gnome-control-center
                                "--enable-wayland-backend"
-- 
2.30.1

From 397d96d32dbb621826c745a06ddb07b932cb7b7e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:51:02 -0500
Subject: [PATCH 53/68] gnu: gtk-doc: Fix identation.

* gnu/packages/gtk.scm (gtk-doc): Fix identation.
---
 gnu/packages/gtk.scm | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 8aaf6dcf00..bed9765fa5 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1884,16 +1884,16 @@ information.")
          (add-after 'unpack 'patch-gtk-doc-scan
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "gtk-doc.xsl"
-              (("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl")
-               (string-append (assoc-ref inputs "docbook-xsl")
-                              "/xml/xsl/docbook-xsl-"
-                              ,(package-version docbook-xsl)
-                              "/html/chunk.xsl"))
-              (("http://docbook.sourceforge.net/release/xsl/current/common/en.xml")
-               (string-append (assoc-ref inputs "docbook-xsl")
-                              "/xml/xsl/docbook-xsl-"
-                              ,(package-version docbook-xsl)
-                              "/common/en.xml")))
+               (("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl")
+                (string-append (assoc-ref inputs "docbook-xsl")
+                               "/xml/xsl/docbook-xsl-"
+                               ,(package-version docbook-xsl)
+                               "/html/chunk.xsl"))
+               (("http://docbook.sourceforge.net/release/xsl/current/common/en.xml")
+                (string-append (assoc-ref inputs "docbook-xsl")
+                               "/xml/xsl/docbook-xsl-"
+                               ,(package-version docbook-xsl)
+                               "/common/en.xml")))
              #t))
          (add-after 'patch-gtk-doc-scan 'patch-test-out
            (lambda _
@@ -1902,7 +1902,7 @@ information.")
              ;; generator metafont outputs a lot of extra lines, this
              ;; test would always fail.  Disable it for now.
              (substitute* "tests/Makefile.in"
-              (("empty.sh sanity.sh") "empty.sh"))
+               (("empty.sh sanity.sh") "empty.sh"))
              #t))
          (add-before 'configure 'fix-docbook
            (lambda* (#:key inputs #:allow-other-keys)
-- 
2.30.1

From 21210baba744cea8bc5ca53c538d4de3531e1af6 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:52:07 -0500
Subject: [PATCH 54/68] gnu: gtk-doc: Change build-system.

* gnu/packages/gtk.scm (gtk-doc) [build-system]: Change from gnu to glib-or-gtk.
---
 gnu/packages/gtk.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index bed9765fa5..f041c8d6c9 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1876,7 +1876,7 @@ information.")
               (sha256
                (base32
                 "05apmwibkmn1icx05l8aw241lhymcx01zvk5i499cb150bijj7li"))))
-    (build-system gnu-build-system)
+    (build-system glib-or-gtk-build-system)
     (arguments
      `(#:parallel-tests? #f
        #:phases
-- 
2.30.1

From f37a2e57d4c64cbe64d7b0338b7d2c2fe9867351 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 08:58:34 -0500
Subject: [PATCH 55/68] gnu: gtk-doc: Correct inputs.

* gnu/packages/gtk.scm (gtk-doc) [native-inputs]: Add glib:bin,
perl and python-wrapper.
[inputs]: Add python-anytree, python-lxml, python-parameterized,
python-pygments, python-unittest2 and yelp-tools. Remove perl.
---
 gnu/packages/gtk.scm | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index f041c8d6c9..62537d9578 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1932,21 +1932,29 @@ information.")
                             (assoc-ref %build-inputs "docbook-xml")
                             "/xml/dtd/docbook/catalog.xml"))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
        ("itstool" ,itstool)
-       ("libxml" ,libxml2)
-       ("gettext" ,gettext-minimal)
-       ("bc" ,bc)))
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python-wrapper" ,python-wrapper)))
     (inputs
-     `(("perl" ,perl)
-       ("python" ,python)
-       ("xsltproc" ,libxslt)
+     `(("bc" ,bc)
        ("dblatex" ,dblatex)
        ("docbook-xml" ,docbook-xml-4.3)
        ("docbook-xsl" ,docbook-xsl)
-       ("source-highlight" ,source-highlight)
        ("glib" ,glib)
-       ("python-six" ,python-six)))
+       ("libxml2" ,libxml2)
+       ("libxslt" ,libxslt)
+       ("python" ,python)
+       ("python-anytree" ,python-anytree)
+       ("python-lxml" ,python-lxml)
+       ("python-parameterized" ,python-parameterized)
+       ("python-pygments" ,python-pygments)
+       ("python-unittest2" ,python-unittest2)
+       ("source-highlight" ,source-highlight)
+       ("yelp-tools" ,yelp-tools)))
     (home-page "https://www.gtk.org/gtk-doc/")
     (synopsis "Documentation generator from C source code")
     (description
-- 
2.30.1

From 90060d9701e0a47b58e066ef05059be3a85839f7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 09:08:32 -0500
Subject: [PATCH 56/68] gnu: gtk-doc: Update to 1.32.

* gnu/packages/gtk.scm (gtk-doc) [version]: Update to 1.32.
[arguments]<#:phases>['patch-test-out]: Remove phase.
['disable-failing-tests]: New phase.
['set-HOME]: New phase.
---
 gnu/packages/gtk.scm | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 62537d9578..389d54b29a 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1867,7 +1867,7 @@ information.")
 (define-public gtk-doc
   (package
     (name "gtk-doc")
-    (version "1.28")
+    (version "1.32")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -1875,7 +1875,7 @@ information.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "05apmwibkmn1icx05l8aw241lhymcx01zvk5i499cb150bijj7li"))))
+                "0z4h1dggpimygdp719l457jvqilps4qcfpk31jmj3jqpzcsg03ny"))))
     (build-system glib-or-gtk-build-system)
     (arguments
      `(#:parallel-tests? #f
@@ -1895,14 +1895,11 @@ information.")
                                ,(package-version docbook-xsl)
                                "/common/en.xml")))
              #t))
-         (add-after 'patch-gtk-doc-scan 'patch-test-out
+         (add-after 'unpack 'disable-failing-tests
            (lambda _
-             ;; sanity.sh counts the number of status lines.  Since our
-             ;; texlive regenerates the fonts every time and the font
-             ;; generator metafont outputs a lot of extra lines, this
-             ;; test would always fail.  Disable it for now.
              (substitute* "tests/Makefile.in"
-               (("empty.sh sanity.sh") "empty.sh"))
+               (("annotations.sh bugs.sh empty.sh fail.sh gobject.sh program.sh")
+                ""))
              #t))
          (add-before 'configure 'fix-docbook
            (lambda* (#:key inputs #:allow-other-keys)
@@ -1919,6 +1916,12 @@ information.")
                                                 "^catalog.xml$"))
                                " \"http://docbook.sourceforge.net/release/xsl/")))
              #t))
+         (add-before 'build 'set-HOME
+           (lambda _
+             ;; FIXME: dblatex with texlive-union does not find the built
+             ;; metafonts, so it tries to generate them in HOME.
+             (setenv "HOME" "/tmp")
+             #t))
          (add-after 'install 'wrap-executables
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out")))
-- 
2.30.1

From 19ec597cbc98364370c4989fc4c1ea23667df93b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 09:13:14 -0500
Subject: [PATCH 57/68] gnu: gtk-doc: Enable help.

* gnu/packages/gtk.scm (gtk-doc) [outputs]: New output 'help'.
[arguments]<#:configure-flags>[--with-help-dir]: New flag.
---
 gnu/packages/gtk.scm | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 389d54b29a..0ec65ff6cf 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1877,6 +1877,7 @@ information.")
                (base32
                 "0z4h1dggpimygdp719l457jvqilps4qcfpk31jmj3jqpzcsg03ny"))))
     (build-system glib-or-gtk-build-system)
+    (outputs '("out" "help"))
     (arguments
      `(#:parallel-tests? #f
        #:phases
@@ -1933,7 +1934,10 @@ information.")
        #:configure-flags
        (list (string-append "--with-xml-catalog="
                             (assoc-ref %build-inputs "docbook-xml")
-                            "/xml/dtd/docbook/catalog.xml"))))
+                            "/xml/dtd/docbook/catalog.xml")
+             (string-append "--with-help-dir="
+                            (assoc-ref %outputs "help")
+                            "/share/help"))))
     (native-inputs
      `(("gettext" ,gettext-minimal)
        ("glib:bin" ,glib "bin")
-- 
2.30.1

From 2f7ab0dd2d89f3332ee2951ed92bab93a4137d7d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 09:20:40 -0500
Subject: [PATCH 58/68] gnu: gtk-doc: Update synopsis, description, home-page
 and license.

* gnu/packages/gtk.scm (gtk-doc) [home-page]: Modify.
[synopsis]: Modify.
[description]: Modify.
[license]: Add fdl1.1+.
---
 gnu/packages/gtk.scm | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 0ec65ff6cf..2dbf8de452 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1962,13 +1962,19 @@ information.")
        ("python-unittest2" ,python-unittest2)
        ("source-highlight" ,source-highlight)
        ("yelp-tools" ,yelp-tools)))
-    (home-page "https://www.gtk.org/gtk-doc/")
-    (synopsis "Documentation generator from C source code")
-    (description
-     "GTK-Doc generates API documentation from comments added to C code.  It is
-typically used to document the public API of GTK+ and GNOME libraries, but it
-can also be used to document application code.")
-    (license license:gpl2+)))
+    (home-page "https://wiki.gnome.org/DocumentationProject/GtkDoc")
+    (synopsis "GTK+ DocBook Documentation Generator")
+    (description "GtkDoc is a tool used to extract API documentation from C-code
+like Doxygen, but handles documentation of GObject (including signals and
+properties) that makes it very suitable for GTK+ apps and libraries.  It uses
+docbook for intermediate files and can produce html by default and pdf/man-pages
+with some extra work.")
+    (license
+     (list
+      ;; Docs.
+      license:fdl1.1+
+      ;; Others.
+      license:gpl2+))))
 
 (define-public gtk-engines
   (package
-- 
2.30.1

From 197ca1623229118223ad76f82c46f7f358174a3a Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 10:46:18 -0500
Subject: [PATCH 59/68] gnu: json-glib: Add missing argument.

* gnu/packages/gnome.scm (json-glib) [arguments]<#:glib-or-gtk?>: New argument.
---
 gnu/packages/gnome.scm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index cbda2a93a7..d4b3f4aa14 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4544,13 +4544,15 @@ configuration storage systems.")
                (base32
                 "0ixwyis47v5bkx6h8a1iqlw3638cxcv57ivxv4gw2gaig51my33j"))))
     (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t))     ; To wrap binaries and/or compile schemas
     (native-inputs
      `(("gettext" ,gettext-minimal)
-       ("glib" ,glib "bin")              ;for glib-mkenums and glib-genmarshal
+       ("glib" ,glib "bin")      ;for glib-mkenums and glib-genmarshal
        ("gobject-introspection" ,gobject-introspection)
        ("pkg-config" ,pkg-config)))
     (propagated-inputs
-     `(("glib" ,glib)))                         ;according to json-glib-1.0.pc
+     `(("glib" ,glib)))                 ;according to json-glib-1.0.pc
     (home-page "https://wiki.gnome.org/Projects/JsonGlib")
     (synopsis "Compiler for the GObject type system")
     (description
-- 
2.30.1

From dc7f28eac50cdf6c06d36dcdb51732e5aa5dfdf1 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 10:51:35 -0500
Subject: [PATCH 60/68] gnu: json-glib: Enable documentation and man-pages.

* gnu/packages/gnome.scm (json-glib) [outputs]: New output "doc".
[arguments]<#:configure-flags>[-Ddocs]: New flag.
[-Dman]: New flag.
<#:phases>['patch-docbook]: New phase.
['move-doc]: New phase.
[native-inputs]: Add docbook-xml, docbook-xsl, gtk-doc and libxslt.
---
 gnu/packages/gnome.scm | 37 ++++++++++++++++++++++++++++++++++---
 1 file changed, 34 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d4b3f4aa14..887f40f950 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4544,13 +4544,44 @@ configuration storage systems.")
                (base32
                 "0ixwyis47v5bkx6h8a1iqlw3638cxcv57ivxv4gw2gaig51my33j"))))
     (build-system meson-build-system)
+    (outputs '("out" "doc"))
     (arguments
-     `(#:glib-or-gtk? #t))     ; To wrap binaries and/or compile schemas
+     `(#:glib-or-gtk? #t     ; To wrap binaries and/or compile schemas
+       #:configure-flags
+       (list
+        "-Ddocs=true"
+        "-Dman=true")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "doc"
+               (substitute* "json-glib-docs.xml"
+                 (("http://www.oasis-open.org/docbook/xml/4.3/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/")))
+               (substitute* "meson.build"
+                 (("http://docbook.sourceforge.net/release/xsl/current/")
+                  (string-append (assoc-ref inputs "docbook-xsl")
+                                 "/xml/xsl/docbook-xsl-1.79.1/"))))
+             #t))
+         (add-after 'install 'move-docs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (assoc-ref outputs "doc")))
+               (mkdir-p (string-append doc "/share"))
+               (rename-file
+                (string-append out "/share/gtk-doc")
+                (string-append doc "/share/gtk-doc"))
+               #t))))))
     (native-inputs
-     `(("gettext" ,gettext-minimal)
+     `(("docbook-xml" ,docbook-xml-4.3)
+       ("docbook-xsl" ,docbook-xsl)
+       ("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")      ;for glib-mkenums and glib-genmarshal
        ("gobject-introspection" ,gobject-introspection)
-       ("pkg-config" ,pkg-config)))
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
     (propagated-inputs
      `(("glib" ,glib)))                 ;according to json-glib-1.0.pc
     (home-page "https://wiki.gnome.org/Projects/JsonGlib")
-- 
2.30.1

From 6096b42e525b553b18421525cc68f3866a837b9c Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 10:55:57 -0500
Subject: [PATCH 61/68] gnu: json-glib: Update synopsis and description.

* gnu/packages/gnome.scm (json-glib) [synopsis]: Modify.
[description]: Modify.
---
 gnu/packages/gnome.scm | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 887f40f950..9ce07c21c3 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4585,13 +4585,10 @@ configuration storage systems.")
     (propagated-inputs
      `(("glib" ,glib)))                 ;according to json-glib-1.0.pc
     (home-page "https://wiki.gnome.org/Projects/JsonGlib")
-    (synopsis "Compiler for the GObject type system")
-    (description
-     "JSON-GLib is a C library based on GLib providing serialization and
-deserialization support for the JavaScript Object Notation (JSON) format
-described by RFC 4627.  It provides parser and generator GObject classes and
-various wrappers for the complex data types employed by JSON, such as arrays
-and objects.")
+    (synopsis "Glib and GObject implementation of JSON")
+    (description "JSON-GLib is a library providing serialization and
+described by RFC 4627.  It implements a full JSON parser and generator using
+GLib and GObject, and integrates JSON with GLib data types.")
     (license license:lgpl2.1+)))
 
 (define-public libxklavier
-- 
2.30.1

From f5fca8b4ec97f683461d7339b5605bee0e72fc25 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:05:02 -0500
Subject: [PATCH 62/68] gnu: wayland: Fix indentation.

* gnu/packages/freedesktop.scm (wayland): Fix identation.
---
 gnu/packages/freedesktop.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index e00454f7b3..4fcf663602 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -840,7 +840,7 @@ Python.")
        ("docbook-xsl" ,docbook-xsl)
        ("expat" ,expat)
        ("libffi" ,libffi)
-       ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
+       ("libxml2" ,libxml2)))           ; for XML_CATALOG_FILES
     (home-page "https://wayland.freedesktop.org/")
     (synopsis "Display server protocol")
     (description
-- 
2.30.1

From fbca49a82bbae3a2608879f79993a8ad1ee53ea9 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:06:18 -0500
Subject: [PATCH 63/68] gnu: wayland: Change build-system.

* gnu/packages/freedesktop.scm (wayland) [build-system]: Change from gnu to meson.
---
 gnu/packages/freedesktop.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 4fcf663602..ea1324b9f6 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -826,7 +826,7 @@ Python.")
               (sha256
                (base32
                 "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"))))
-    (build-system gnu-build-system)
+    (build-system meson-build-system)
     (arguments
      `(#:parallel-tests? #f))
     (native-inputs
-- 
2.30.1

From 24eace287aa5fefe796a2fe30924ad42cb5d8a47 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:09:46 -0500
Subject: [PATCH 64/68] gnu: wayland: Correct inputs.

* gnu/packages/freedesktop.scm (wayland) [native-inputs]: Move here
docbook-xml and docbook-xsl from ...
[inputs]: ... here. Move libffi to ...
[propagated-inputs]: ... here.
---
 gnu/packages/freedesktop.scm | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index ea1324b9f6..d12fdd46f5 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -830,17 +830,19 @@ Python.")
     (arguments
      `(#:parallel-tests? #f))
     (native-inputs
-     `(("doxygen" ,doxygen)
-       ("graphviz" ,graphviz)
+     `(("docbook-xml-4.2" ,docbook-xml-4.2)
+       ("docbook-xml" ,docbook-xml)
+       ("docbook-xsl" ,docbook-xsl)
+       ("dot" ,graphviz)
+       ("doxygen" ,doxygen)
        ("pkg-config" ,pkg-config)
        ("xmlto" ,xmlto)
        ("xsltproc" ,libxslt)))
     (inputs
-     `(("docbook-xml" ,docbook-xml)
-       ("docbook-xsl" ,docbook-xsl)
-       ("expat" ,expat)
-       ("libffi" ,libffi)
+     `(("expat" ,expat)
        ("libxml2" ,libxml2)))           ; for XML_CATALOG_FILES
+    (propagated-inputs
+     `(("libffi" ,libffi)))
     (home-page "https://wayland.freedesktop.org/")
     (synopsis "Display server protocol")
     (description
-- 
2.30.1

From 108320c35f843874257021d6722ef82f938a23e7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:14:33 -0500
Subject: [PATCH 65/68] gnu: wayland: Fix and move documentation.

* gnu/packages/freedesktop.scm (wayland) [outputs]: New output "doc".
[arguments]<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
---
 gnu/packages/freedesktop.scm | 37 +++++++++++++++++++++++++++++++++++-
 1 file changed, 36 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index d12fdd46f5..9c293bd2fc 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -827,8 +827,43 @@ Python.")
                (base32
                 "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"))))
     (build-system meson-build-system)
+    (outputs '("out" "doc"))
     (arguments
-     `(#:parallel-tests? #f))
+     `(#:parallel-tests? #f
+        #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "doc"
+               (substitute* '("man/wl_display_connect.xml"
+                              "publican/sources/Architecture.xml"
+                              "publican/sources/Author_Group.xml"
+                              "publican/sources/Book_Info.xml"
+                              "publican/sources/Client.xml"
+                              "publican/sources/Compositors.xml"
+                              "publican/sources/Foreword.xml"
+                              "publican/sources/Introduction.xml"
+                              "publican/sources/Preface.xml"
+                              "publican/sources/Protocol.xml"
+                              "publican/sources/Server.xml"
+                              "publican/sources/Wayland.xml"
+                              "publican/sources/Xwayland.xml")
+                 (("http://www.oasis-open.org/docbook/xml/4.5/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))
+                 (("http://www.oasis-open.org/docbook/xml/4.2/")
+                  (string-append (assoc-ref inputs "docbook-xml-4.2")
+                                 "/xml/dtd/docbook/"))))
+             #t))
+         (add-after 'install 'move-doc
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (assoc-ref outputs "doc")))
+               (mkdir-p (string-append doc "/share"))
+               (rename-file
+                (string-append out "/share/doc")
+                (string-append doc "/share/doc"))
+               #t))))))
     (native-inputs
      `(("docbook-xml-4.2" ,docbook-xml-4.2)
        ("docbook-xml" ,docbook-xml)
-- 
2.30.1

From 27cbf051513bc7d2c1d624f1e040d8720014343d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:18:19 -0500
Subject: [PATCH 66/68] gnu: wayland: Update synopsis, description and license.

* gnu/packages/freedesktop.scm (wayland) [synopsis]: Modify.
[description]: Modify.
[license]: Change from x11 to expat.
---
 gnu/packages/freedesktop.scm | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 9c293bd2fc..4e105ac384 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -879,14 +879,14 @@ Python.")
     (propagated-inputs
      `(("libffi" ,libffi)))
     (home-page "https://wayland.freedesktop.org/")
-    (synopsis "Display server protocol")
-    (description
-     "Wayland is a protocol for a compositor to talk to its clients as well as
-a C library implementation of that protocol.  The compositor can be a standalone
-display server running on Linux kernel modesetting and evdev input devices, an X
-application, or a wayland client itself.  The clients can be traditional
-applications, X servers (rootless or fullscreen) or other display servers.")
-    (license license:x11)))
+    (synopsis "Core Wayland window system code and protocol")
+    (description "Wayland is a project to define a protocol for a compositor to
+talk to its clients as well as a library implementation of the protocol.  The
+compositor can be a standalone display server running on Linux kernel
+modesetting and evdev input devices, an X application, or a wayland client
+itself.  The clients can be traditional applications, X servers (rootless or
+fullscreen) or other display servers.")
+    (license license:expat)))
 
 (define-public wayland-protocols
   (package
-- 
2.30.1

From 2143dbcbf5be6be9e60babf0f6a1ce5ff3c4854e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:22:54 -0500
Subject: [PATCH 67/68] gnu: wayland-protocols: Update description.

* gnu/packages/freedesktop.scm (wayland-protocols) [description]: Modify.
---
 gnu/packages/freedesktop.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 4e105ac384..7b06d21769 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -906,7 +906,10 @@ fullscreen) or other display servers.")
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (synopsis "Wayland protocols")
-    (description "This package contains XML definitions of the Wayland protocols.")
+    (description "Wayland-Protocols contains Wayland protocols that add
+functionality not available in the Wayland core protocol.  Such protocols either
+add completely new functionality, or extend the functionality of some other
+protocol either in Wayland core, or some other protocol in wayland-protocols.")
     (home-page "https://wayland.freedesktop.org")
     (license license:expat)))
 
-- 
2.30.1

From 2d54e42cdced31ae84f4162753df3452a45cd535 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Fri, 12 Mar 2021 11:30:38 -0500
Subject: [PATCH 68/68] gnu: yelp-xsl: Enable documentation.

* gnu/packages/gnome.scm (yelp-xsl) [arguments]<#:configure-flag>
[--enable-doc]: New flag.
[native-inputs]: Add mallard-ducktype, intltool and libxslt.
---
 gnu/packages/gnome.scm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 9ce07c21c3..d9332d0add 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -6788,10 +6788,17 @@ of running programs and invoke methods on those interfaces.")
        (sha256
         (base32 "1hsfj3q3a3kca0cf9i02xlq2qd4vy12qsjb89hh4r6mp6c11rrag"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list
+        "--enable-doc")))
     (native-inputs
-     `(("gettext-minimal" ,gettext-minimal)
+     `(("ducktype" ,mallard-ducktype)
+       ("gettext" ,gettext-minimal)
+       ("intltool" ,intltool)
        ("itstool" ,itstool)
-       ("xmllint" ,libxml2)))
+       ("xmllint" ,libxml2)
+       ("xsltproc" ,libxslt)))
     (synopsis "XSL stylesheets for Yelp")
     (description "Yelp-XSL is a collection of programs and data files to help
 you build, maintain, and distribute documentation.  It provides XSLT stylesheets
-- 
2.30.1