diff options
Diffstat (limited to 'gnu/packages/freedesktop.scm')
-rw-r--r-- | gnu/packages/freedesktop.scm | 292 |
1 files changed, 132 insertions, 160 deletions
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 043d1ec92b..a0ce0c2b25 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -27,7 +27,7 @@ ;;; Copyright © 2021 Robby Zambito <contact@robbyzambito.me> ;;; Copyright © 2021, 2022 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021, 2022 John Kehayias <john.kehayias@protonmail.com> -;;; Copyright © 2021, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2021, 2021, 2022, 2023 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> @@ -225,73 +225,75 @@ application-centers for distributions.") (sha256 (base32 "1sd8syldyq6bphfdm129s3gq554vfv7vh1vcwzk48gjryf101awk")) (patches - (search-patches - "farstream-gupnp.patch" ;for test 'transmitter/rawudp' - "farstream-make.patch")))) + (search-patches "farstream-gupnp.patch" ;for test 'transmitter/rawudp' + "farstream-make.patch")))) (build-system glib-or-gtk-build-system) (outputs '("out" "doc")) (arguments - `(#:configure-flags - (list - "--enable-gtk-doc" - "--enable-glib-asserts" - (string-append "--with-html-dir=" - (assoc-ref %outputs "doc") - "/share/gtk-doc/html")) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'copy-common - (lambda _ - (delete-file "autogen.sh") - (copy-recursively - (assoc-ref %build-inputs "common") - "common") - #t)) - (add-after 'unpack 'disable-timeout-tests - (lambda _ - (substitute* "tests/check/Makefile.am" - ;; This test timeouts despite changing - ;; the value of 'CK_DEFAULT_TIMEOUT' to 600, - ;; as per %common-gstreamer-phases. - ;; Reported to upstream: - ;; https://gitlab.freedesktop.org/farstream/farstream/-/issues/20 - (("[ \t]*transmitter/nice.*$") "")))) - (add-after 'unpack 'patch-docbook-xml - (lambda* (#:key inputs #:allow-other-keys) - (with-directory-excursion "docs" - (substitute* '("libs/farstream-libs-docs.sgml" - "plugins/farstream-plugins-docs.sgml") - (("http://www.oasis-open.org/docbook/xml/4.1.2/") - (string-append (assoc-ref inputs "docbook-xml") - "/xml/dtd/docbook/")))) - #t))))) + (list + #:configure-flags + #~(list "--enable-gtk-doc" + "--enable-glib-asserts" + (string-append "--with-html-dir=" #$output + "/share/gtk-doc/html")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-common + (lambda _ + (delete-file "autogen.sh") + (copy-recursively + #$(origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.freedesktop.org/gstreamer/common.git") + (commit "52adcdb89a9eb527df38c569539d95c1c7aeda6e"))) + (file-name (git-file-name "common" "latest.52adcdb")) + (sha256 + (base32 + "1zlm1q1lgcb76gi82rial5bwy2j9sz1x6x48ijhiz89cml7xxd1r"))) + "common"))) + (add-after 'unpack 'disable-problematic-tests + (lambda _ + (substitute* "tests/check/Makefile.am" + ;; This test fails since updating gstreamer to version 1.22.1 + ;; (see: + ;; https://gitlab.freedesktop.org/farstream/farstream/-/issues/25). + (("^\trtp/recvcodecs.*") "") + ;; This test timeouts despite changing the value of + ;; 'CK_DEFAULT_TIMEOUT' to 600 (see: + ;; https://gitlab.freedesktop.org/farstream/farstream/-/issues/20). + (("^\ttransmitter/nice.*") "")))) + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* '("libs/farstream-libs-docs.sgml" + "plugins/farstream-plugins-docs.sgml") + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (search-input-directory (or native-inputs inputs) + "xml/dtd/docbook/"))))))))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("common" - ,(origin - (method git-fetch) - (uri - (git-reference - (url "https://gitlab.freedesktop.org/gstreamer/common.git") - (commit "88e512ca7197a45c4114f7fa993108f23245bf50"))) - (file-name - (git-file-name "common" "latest.88e512c")) - (sha256 - (base32 "1nk94pnskjyngqcfb9p32g4yvf4nzpjszisw24r9azl0pawqpsn6")))) - ("docbook-xml" ,docbook-xml-4.1.2) - ("docbook-xsl" ,docbook-xsl) - ("gobject-introspection" ,gobject-introspection) - ("gtk-doc" ,gtk-doc/stable) - ("libtool" ,libtool) - ("perl" ,perl) - ("pkg-config" ,pkg-config) - ("python" ,python-wrapper) - ("xsltproc" ,libxslt))) + (list autoconf + automake + docbook-xml-4.1.2 + docbook-xsl + gobject-introspection + gtk-doc/stable + libtool + libxslt + perl + pkg-config + python-wrapper)) (inputs - (list glib gtk+ gupnp-igd libnice)) + (list glib + gtk+ + gupnp-igd + libnice)) (propagated-inputs - (list gstreamer gst-plugins-bad gst-plugins-base gst-plugins-good)) + (list gstreamer + gst-plugins-bad + gst-plugins-base + gst-plugins-good)) (synopsis "The Farstream VVoIP framework") (description "Farstream is a collection of GStreamer modules and libraries for videoconferencing.") @@ -474,112 +476,82 @@ display servers. It supports many different languages and emoji.") (name "xdg-utils") (version "1.1.3") (source - (origin - (method url-fetch) - (uri (string-append - "https://portland.freedesktop.org/download/xdg-utils-" - version ".tar.gz")) - (sha256 - (base32 - "1nai806smz3zcb2l5iny4x7li0fak0rzmjg6vlyhdqm8z25b166p")))) + (origin + (method url-fetch) + (uri (string-append + "https://portland.freedesktop.org/download/xdg-utils-" + version ".tar.gz")) + (sha256 + (base32 + "1nai806smz3zcb2l5iny4x7li0fak0rzmjg6vlyhdqm8z25b166p")))) (build-system gnu-build-system) (native-inputs (list docbook-xsl docbook-xml-4.1.2 libxslt w3m-for-tests xmlto)) (inputs - `(("awk" ,gawk) - ;; TODO(staging): Make this unconditional, to avoid canonical packages, - ;; see <https://lists.gnu.org/archive/html/guix-devel/2020-02/msg00148.html>. - ,@(if (%current-target-system) - `(("bash-minimal" ,bash-minimal)) ; for 'wrap-program' - '()) - ("coreutils" ,coreutils) - ,@(if (%current-target-system) - `(("file" ,file)) - '()) - ("grep" ,grep) - ("inetutils" ,inetutils) ; xdg-screensaver uses `hostname' - ("perl-file-mimeinfo" ,perl-file-mimeinfo) ; for mimeopen fallback - ("sed" ,sed) - ("xprop" ,xprop) ; for Xfce detecting - ("xset" ,xset))) ; for xdg-screensaver + (list bash-minimal ;for 'wrap-program' + coreutils + file + gawk + grep + inetutils ;xdg-screensaver uses `hostname' + perl-file-mimeinfo ;for mimeopen fallback + sed + xprop ;for Xfce detecting + xset)) ;for xdg-screensaver (arguments - `(#:tests? #f ; no check target - #:modules ((srfi srfi-26) + (list + #:tests? #f ;no check target + #:modules `((srfi srfi-26) ,@%gnu-build-system-modules) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-hardcoded-paths - ;; TODO(staging): make unconditional - (,@(if (%current-target-system) - '(lambda* (#:key inputs #:allow-other-keys)) - '(lambda _)) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-hardcoded-paths + (lambda* (#:key inputs #:allow-other-keys) (substitute* "scripts/xdg-mime.in" (("/usr/bin/file") - (,@(if (%current-target-system) - '(search-input-file inputs "bin/file") - '(which "file"))))) + (search-input-file inputs "bin/file"))) (substitute* "scripts/xdg-open.in" (("/usr/bin/printf") - (,@(if (%current-target-system) - '(search-input-file inputs "bin/printf") - '(which "printf"))))) - #t)) - (add-before 'build 'locate-catalog-files - ;; TODO(staging): Make unconditional for simplicity. - (lambda* (#:key inputs ,@(if (%current-target-system) - '(native-inputs) - '()) #:allow-other-keys) - ;; TODO(staging): Make unconditional for simplicity and - ;; to avoid depending on input labels. - (let ,(if (%current-target-system) - `((native-inputs (or native-inputs inputs)) - (xmldoc (search-input-directory native-inputs - "xml/dtd/docbook")) - (xsldoc - (search-input-directory - native-inputs - (string-append "xml/xsl/docbook-xsl-" - ,(package-version docbook-xsl))))) - `((xmldoc - (string-append (assoc-ref inputs "docbook-xml") - "/xml/dtd/docbook")) - (xsldoc - (string-append (assoc-ref inputs "docbook-xsl") - "/xml/xsl/docbook-xsl-" - ,(package-version docbook-xsl))))) - (for-each (lambda (file) - (substitute* file - (("http://.*/docbookx\\.dtd") - (string-append xmldoc "/docbookx.dtd")))) - (find-files "scripts/desc" "\\.xml$")) - (substitute* "scripts/Makefile" - ;; Apparently `xmlto' does not bother to looks up the stylesheets - ;; specified in the XML, unlike the above substitition. Instead it - ;; uses a hard-coded URL. Work around it here, but if this is - ;; common perhaps we should hardcode this path in xmlto itself. - (("\\$\\(XMLTO\\) man") - (string-append "$(XMLTO) -x " xsldoc - "/manpages/docbook.xsl man"))) - (setenv "STYLESHEET" - (string-append xsldoc "/html/docbook.xsl")) - ;; TODO(staging): Might as well remove the #t while we are at - ;; it. - #t))) - (add-after 'install 'wrap-executables - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (with-directory-excursion (string-append out "/bin") - (let ((path-ext - (map (cute string-append <> "/bin") - (cons out - (map (cute assoc-ref inputs <>) - '("awk" "coreutils" "grep" "inetutils" - "perl-file-mimeinfo" "sed" "xprop" - "xset")))))) - (for-each (cute wrap-program <> - `("PATH" ":" prefix ,path-ext)) - (find-files ".")))) - #t)))))) + (search-input-file inputs "bin/printf"))))) + (add-before 'build 'locate-catalog-files + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (let* ((native (or native-inputs inputs)) + (xmldoc (search-input-directory native + "xml/dtd/docbook")) + (xsldoc (search-input-directory + native + (string-append "xml/xsl/docbook-xsl-" + #$(package-version + (this-package-native-input + "docbook-xsl")))))) + (for-each (lambda (file) + (substitute* file + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd")))) + (find-files "scripts/desc" "\\.xml$")) + (substitute* "scripts/Makefile" + ;; Apparently `xmlto' does not bother to looks up the stylesheets + ;; specified in the XML, unlike the above substitition. Instead it + ;; uses a hard-coded URL. Work around it here, but if this is + ;; common perhaps we should hardcode this path in xmlto itself. + (("\\$\\(XMLTO\\) man") + (string-append "$(XMLTO) -x " xsldoc + "/manpages/docbook.xsl man"))) + (setenv "STYLESHEET" + (string-append xsldoc "/html/docbook.xsl"))))) + (add-after 'install 'wrap-executables + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((dependencies '("awk" "grep" "hostname" "ls" "mimeopen" + "sed" "xprop" "xset")) + (pkgs (map (lambda (cmd) + (search-input-file inputs + (string-append "bin/" cmd))) + dependencies)) + (bindirs (map dirname pkgs))) + (with-directory-excursion (string-append #$output "/bin") + (for-each (cute wrap-program <> + `("PATH" ":" prefix ,bindirs)) + (find-files "."))))))))) (home-page "https://www.freedesktop.org/wiki/Software/xdg-utils/") (synopsis "Freedesktop.org scripts for desktop integration") (description "The xdg-utils package is a set of simple scripts that @@ -1802,7 +1774,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") (define-public modem-manager (package (name "modem-manager") - (version "1.18.10") + (version "1.18.12") (source (origin (method url-fetch) (uri (string-append @@ -1810,7 +1782,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") "ModemManager-" version ".tar.xz")) (sha256 (base32 - "1sv53lvz9nfbq6jzprl5xhai0vylc01kglcdrgz2vszf5615y98n")))) + "0c74n5jl1qvq2qlbwzfkgxny8smjcgkid1nhdnl6qnlmbn9f8r5l")))) (build-system gnu-build-system) (arguments (list |