summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-09-01 01:52:59 +0200
committerMarius Bakke <marius@gnu.org>2022-09-01 16:08:17 +0200
commit2ebb0383a2d9015cb2fb69dce504dcb8dc0a9be3 (patch)
treeca83703ae2c1970dc15e6b09982446bf5b63e220
parent752ae1f24463d01e3fac932dddde701793aa3855 (diff)
downloadguix-2ebb0383a2d9015cb2fb69dce504dcb8dc0a9be3.tar.gz
gnu: appstream: Update to 0.15.5.
* gnu/packages/freedesktop.scm (appstream): Update to 0.15.2.
[arguments]: Use G-expression.  Add #:meson.  Enable (some) previously failing
tests.  Don't patch docbook file names, and use SEARCH-INPUT-FILE for
libstemmer header.  Add phase to set HOME before tests.
[inputs]: Add CURL and LIBXMLB.
[native-inputs]: Add ITSTOOL and LIBXML2.
[license]: Remove GPL2+.

Co-authored-by: Brendan Tildesley <mail@brendan.scot>
Co-authored-by: phodina <phodina@protonmail.com>
-rw-r--r--gnu/packages/freedesktop.scm105
1 files changed, 40 insertions, 65 deletions
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index d82a4347b1..308f6fed3f 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -9,9 +9,9 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2018, 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
 ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
-;;; Copyright © 2017, 2020, 2021 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2017, 2020, 2021, 2022 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018, 2020–2022 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
@@ -30,6 +30,7 @@
 ;;; Copyright © 2021, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
 ;;; Copyright © 2022 muradm <mail@muradm.net>
+;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -72,6 +73,7 @@
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cryptsetup)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages disk)
   #:use-module (gnu packages docbook)
@@ -125,7 +127,7 @@
 (define-public appstream
   (package
     (name "appstream")
-    (version "0.13.1")
+    (version "0.15.5")
     (source
      (origin
        (method url-fetch)
@@ -134,69 +136,44 @@
                        "appstream/releases/"
                        "AppStream-" version ".tar.xz"))
        (sha256
-        (base32 "09l6ixz1w29pi0nb0flz14m4r3f2hpqpp1fq8y66v9xa4c9fczds"))))
+        (base32 "1hh41r82a2p7anyadfsp9lmylrrj1a6gknx2g4w6ha97riifs5fb"))))
     (build-system meson-build-system)
     (arguments
-     `(#:glib-or-gtk? #t
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'patch-libstemmer
-           (lambda* (#:key inputs #:allow-other-keys)
-             (substitute* "meson.build"
-               (("/usr/include")
-                (string-append (assoc-ref inputs "libstemmer")
-                               "/include")))
-             #t))
-         (add-after 'patch-libstemmer 'patch-docbook-xml
-           (lambda* (#:key inputs #:allow-other-keys)
-             (with-directory-excursion "docs/api"
-               (substitute* "appstream-docs.xml"
-                 (("http://www.oasis-open.org/docbook/xml/4.3/")
-                  (string-append (assoc-ref inputs "docbook-xml-4.3")
-                                 "/xml/dtd/docbook/"))))
-             (for-each (lambda (file)
-                         (substitute* file
-                           (("http://www.oasis-open.org/docbook/xml/4.5/")
-                            (string-append (assoc-ref inputs "docbook-xml")
-                                           "/xml/dtd/docbook/"))))
-                       (find-files "scripts/desc" "\\.xml$"))
-             #t))
-         (add-after 'patch-docbook-xml 'disable-failing-tests
-           (lambda _
-             (substitute* "tests/test-pool.c"
-               (("[ \t]*g_test_add_func \\(\"/AppStream/PoolRead?.*;")
-                "")
-               (("[ \t]*g_test_add_func \\(\"/AppStream/PoolReadAsync?.*;")
-                "")
-               (("[ \t]*g_test_add_func \\(\"/AppStream/PoolEmpty?.*;")
-                "")
-               (("[ \t]*g_test_add_func \\(\"/AppStream/Cache?.*;")
-                "")
-               (("[ \t]*g_test_add_func \\(\"/AppStream/Merges?.*;")
-                ""))
-             #t))
-         (add-after 'disable-failing-tests 'patch-install-dir
-           (lambda* (#:key outputs #:allow-other-keys)
-             (substitute* "data/meson.build"
-               (("/etc")
-                (string-append (assoc-ref outputs "out")
-                               "/etc")))
-             #t)))))
+     (list
+      #:meson meson-0.63
+      #:glib-or-gtk? #t
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-libstemmer
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let ((libstemmer.h (search-input-file inputs
+                                                     "include/libstemmer.h")))
+              (substitute* "meson.build"
+                (("/usr/include")
+                 (dirname libstemmer.h))))))
+          (add-after 'unpack 'disable-failing-tests
+            (lambda _
+              (substitute* "tests/test-pool.c"
+                (("[ \t]*g_test_add_func \\(\"/AppStream/PoolRead?.*;")
+                 ""))))
+          (add-before 'check 'check-setup
+            (lambda _
+              (setenv "HOME" (getcwd)))))))
     (native-inputs
-     `(("cmake" ,cmake)
-       ("docbook-xml-4.3" ,docbook-xml-4.3)
-       ("docbook-xml" ,docbook-xml)
-       ("docbook-xsl" ,docbook-xsl)
-       ("gettext" ,gettext-minimal)
-       ("glib:bin" ,glib "bin")
-       ("gobject-introspection" ,gobject-introspection)
-       ("gperf" ,gperf)
-       ("gtk-doc" ,gtk-doc/stable)
-       ("pkg-config" ,pkg-config)
-       ("python" ,python-wrapper)
-       ("xsltproc" ,libxslt)))
+     (list docbook-xml-4.3
+           docbook-xml
+           docbook-xsl
+           gettext-minimal
+           `(,glib "bin")
+           gobject-introspection
+           gperf
+           gtk-doc/stable
+           itstool
+           libxslt
+           pkg-config
+           python-wrapper))
     (inputs
-     (list libsoup-minimal-2 libstemmer libxml2 libyaml lmdb))
+     (list curl libsoup-minimal-2 libstemmer libxmlb libxml2 libyaml lmdb))
     (propagated-inputs
      (list glib))
     (synopsis "Tools and libraries to work with AppStream metadata")
@@ -209,9 +186,7 @@ specifications for things like an unified software metadata database, screenshot
 services and various other things needed to create user-friendly
 application-centers for distributions.")
     (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
-    ;; XXX: meson.build claims both, headers just indicate lgpl2.1+
-    ;;      there are also some (irrelevant) wtfpl2 examples
-    (license (list license:gpl2+ license:lgpl2.1+))))
+    (license license:lgpl2.1+)))
 
 (define-public farstream
   (package