diff options
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/glib.scm | 16 | ||||
-rw-r--r-- | gnu/packages/patches/glib-respect-datadir.patch | 21 |
3 files changed, 28 insertions, 10 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index a36c671ee9..cf8007a051 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -653,6 +653,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ + %D%/packages/patches/glib-respect-datadir.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \ %D%/packages/patches/glibc-CVE-2015-7547.patch \ diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 9065e2426e..6fcc5ae91d 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -137,7 +137,7 @@ shared NFS home directories.") (define glib (package (name "glib") - (version "2.52.3") + (version "2.54.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" @@ -145,8 +145,9 @@ shared NFS home directories.") name "-" version ".tar.xz")) (sha256 (base32 - "0a71wkkhkvad84gm30w13micxxgqqw3sxhybj7nd9z60lwspdvi5")) - (patches (search-patches "glib-tests-timer.patch")))) + "18s7rw127wrvb107bkmxd1lmh62b2v19ww5rz7xi0krj34a1ph2h")) + (patches (search-patches "glib-respect-datadir.patch" + "glib-tests-timer.patch")))) (build-system gnu-build-system) (outputs '("out" ; everything "bin" ; glib-mkenums, gtester, etc.; depends on Python @@ -247,12 +248,7 @@ shared NFS home directories.") ("gio/tests/gdbus-unix-addresses.c" (;; Requires /etc/machine-id. - "/gdbus/x11-autolaunch")) - - ("glib/tests/gdatetime.c" - (;; Assumes that the Brasilian time zone is named 'BRT', - ;; which is no longer true as of tzdata-2017a. - "/GDateTime/new_full"))))) + "/gdbus/x11-autolaunch"))))) (and-map (lambda (x) (apply disable x)) failing-tests))))) ;; Note: `--docdir' and `--htmldir' are not honored, so work around it. @@ -284,7 +280,7 @@ shared NFS home directories.") and interfaces for such runtime functionality as an event loop, threads, dynamic loading, and an object system.") (home-page "https://developer.gnome.org/glib/") - (license license:lgpl2.0+))) ; some files are under lgpl2.1+ + (license license:lgpl2.1+))) (define gobject-introspection (package diff --git a/gnu/packages/patches/glib-respect-datadir.patch b/gnu/packages/patches/glib-respect-datadir.patch new file mode 100644 index 0000000000..309ce9fc0b --- /dev/null +++ b/gnu/packages/patches/glib-respect-datadir.patch @@ -0,0 +1,21 @@ +On Guix, Python modules are in a different output from the executables, +so searching "../share/glib-2.0" will not work. + +This patch restores behaviour prior to this commit: +<https://git.gnome.org/browse/glib/commit/?id=fe2a9887a8ccb14f2386e01b14834e97a33bc2d7> + +--- a/gio/gdbus-2.0/codegen/gdbus-codegen.in ++++ b/gio/gdbus-2.0/codegen/gdbus-codegen.in +@@ -25,9 +25,12 @@ + + srcdir = os.getenv('UNINSTALLED_GLIB_SRCDIR', None) + filedir = os.path.dirname(__file__) ++datadir = os.path.join('@datadir@', 'glib-2.0') + + if srcdir is not None: + path = os.path.join(srcdir, 'gio', 'gdbus-2.0') ++elif os.path.exists(os.path.join(datadir, 'codegen')): ++ path = datadir + elif os.path.basename(filedir) == 'bin': + # Make the prefix containing gdbus-codegen 'relocatable' at runtime by + # adding /some/prefix/bin/../share/glib-2.0 to the python path |