summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMathieu Othacehe <othacehe@gnu.org>2021-08-19 11:12:14 +0200
committerMathieu Othacehe <othacehe@gnu.org>2021-08-19 16:01:27 +0200
commit004cab1bf6f211adb4afe3a0fec39bf5c7c81d35 (patch)
tree76d9827336c96e51b89efc2d82361e071d66d29b /gnu
parent2ecd8b2e0ed36864e842396c20b17a0833c03172 (diff)
downloadguix-004cab1bf6f211adb4afe3a0fec39bf5c7c81d35.tar.gz
gnu: glade3: Update to 3.38.2.
* gnu/packages/patches/glade-gls-set-script-name.patch: New patch.
* gnu/packages/patches/glade-test-widget-null-icon.patch: New patch.
* gnu/local.mk (DIST_PATCH_DATA): Add them.
* gnu/packages/gnome.scm (glade3): Update to 3.38.2.
[source]: Apply the patches.
[arguments]: Add new skip-gtk-update-icon-cache and fix-tests phases.
Adapt the fix-docbook phase to the meson build system.
[native-inputs]: Add glib, python-pyobject, gobject-introspection and
gjs. Remove python 2.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/gnome.scm27
-rw-r--r--gnu/packages/patches/glade-gls-set-script-name.patch32
-rw-r--r--gnu/packages/patches/glade-test-widget-null-icon.patch30
4 files changed, 86 insertions, 5 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 6e5dc94998..11b002b66e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1107,6 +1107,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/ghostscript-no-header-uuid.patch		\
   %D%/packages/patches/ghostscript-no-header-creationdate.patch \
   %D%/packages/patches/giara-fix-login.patch                      \
+  %D%/packages/patches/glade-gls-set-script-name.patch	        \
+  %D%/packages/patches/glade-test-widget-null-icon.patch	\
   %D%/packages/patches/glib-appinfo-watch.patch			\
   %D%/packages/patches/glib-networking-gnutls-binding.patch	\
   %D%/packages/patches/glib-skip-failing-test.patch		\
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 49587dd427..d5ef8a331b 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3169,7 +3169,7 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
 (define-public glade3
   (package
     (name "glade")
-    (version "3.36.0")
+    (version "3.38.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3177,14 +3177,28 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "023gx8rj51njn8fsb6ma5kz1irjpxi4js0n8rwy22inc4ysldd8r"))))
-    (build-system glib-or-gtk-build-system)
+                "1dxsiz9ahqkxg2a1dw9sbd8jg59y5pdz4c1gvnbmql48gmj8gz4q"))
+              (patches (search-patches
+                        "glade-gls-set-script-name.patch"
+                        "glade-test-widget-null-icon.patch"))))
+    (build-system meson-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'skip-gtk-update-icon-cache
+           ;; Don't create 'icon-theme.cache'.
+           (lambda _
+             (substitute* "meson_post_install.py"
+               (("gtk-update-icon-cache") "true"))))
+         ;; XXX: Remove it once this issue is fixed:
+         ;; https://issues.guix.gnu.org/50105.
+         (add-after 'unpack 'fix-tests
+           (lambda _
+             (substitute* "tests/meson.build"
+               (("\\['modules") "#['modules"))))
          (add-before 'configure 'fix-docbook
            (lambda* (#:key inputs #:allow-other-keys)
-             (substitute* "man/Makefile.in"
+             (substitute* "man/meson.build"
                (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
                 (string-append (assoc-ref inputs "docbook-xsl")
                                "/xml/xsl/docbook-xsl-"
@@ -3208,7 +3222,10 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
        ("libxslt" ,libxslt) ;for xsltproc
        ("docbook-xml" ,docbook-xml-4.2)
        ("docbook-xsl" ,docbook-xsl)
-       ("python" ,python-2)
+       ("glib:bin" ,glib "bin")
+       ("python-pygobject" ,python-pygobject)
+       ("gobject-introspection" ,gobject-introspection)
+       ("gjs" ,gjs)
        ("pkg-config" ,pkg-config)
        ("xorg-server" ,xorg-server-for-tests)))
     (home-page "https://glade.gnome.org")
diff --git a/gnu/packages/patches/glade-gls-set-script-name.patch b/gnu/packages/patches/glade-gls-set-script-name.patch
new file mode 100644
index 0000000000..61fbdf3914
--- /dev/null
+++ b/gnu/packages/patches/glade-gls-set-script-name.patch
@@ -0,0 +1,32 @@
+Taken from upstream:
+https://gitlab.gnome.org/GNOME/glade/-/commit/eb0429d318c017b57b9e59de1d5b3f142a0f455e.
+
+From 6cf1d3e11d4f8035f33c3003d33f6465896025a5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Tue, 18 May 2021 19:54:50 +0200
+Subject: [PATCH] plugins: Define an invalid but non-null file path as script
+ path
+
+This is following the gjs applications behaviors, setting a valid string
+as the script path that will be shown in JS stack traces, even though
+won't load a real file through g_file_new_for_commandline_arg()
+---
+ plugins/gjs/glade-gjs.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plugins/gjs/glade-gjs.c b/plugins/gjs/glade-gjs.c
+index e1779665..aeae9906 100644
+--- a/plugins/gjs/glade-gjs.c
++++ b/plugins/gjs/glade-gjs.c
+@@ -93,7 +93,7 @@ glade_gjs_init (const gchar *name)
+ 
+   /* Importing the module will create all the GTypes so that glade can use them at runtime */
+   retval = gjs_context_eval (gjs_context_get_current (),
+-                             import_sentence, -1, NULL,
++                             import_sentence, -1, "<glade-gjs>",
+                              &exit_status,
+                              &error);
+   if (!retval && error)
+-- 
+GitLab
+
diff --git a/gnu/packages/patches/glade-test-widget-null-icon.patch b/gnu/packages/patches/glade-test-widget-null-icon.patch
new file mode 100644
index 0000000000..75668a2f68
--- /dev/null
+++ b/gnu/packages/patches/glade-test-widget-null-icon.patch
@@ -0,0 +1,30 @@
+Taken from upstream:
+https://gitlab.gnome.org/GNOME/glade/-/commit/6cf1d3e11d4f8035f33c3003d33f6465896025a5.
+
+From eb0429d318c017b57b9e59de1d5b3f142a0f455e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Wed, 19 May 2021 00:10:29 +0200
+Subject: [PATCH] tests: Do not create a file icon when no filename is provided
+
+This would fail otherwise as GFileIcon requires a GFile parameter on
+construction.
+---
+ tests/create-widgets.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tests/create-widgets.c b/tests/create-widgets.c
+index 2094059d..db8311f8 100644
+--- a/tests/create-widgets.c
++++ b/tests/create-widgets.c
+@@ -106,6 +106,8 @@ main (int   argc,
+       if (G_TYPE_IS_INSTANTIATABLE (adaptor_type) && !G_TYPE_IS_ABSTRACT (adaptor_type) &&
+           /* FIXME: can not create a themed icon without a name */
+           !g_type_is_a (adaptor_type, G_TYPE_THEMED_ICON) &&
++          /* FIXME: can not create a file icon without a file name */
++          !g_type_is_a (adaptor_type, G_TYPE_FILE_ICON) &&
+           /* FIXME: GtkPopoverMenu gives a few warnings */
+           !g_type_is_a (adaptor_type, GTK_TYPE_POPOVER_MENU) &&
+           /* FIXME: GtkFileChooserNative is hard to test here */
+-- 
+GitLab
+