Package: guix-patches;
Reported by: Maxime Devos <maximedevos <at> telenet.be>
Date: Thu, 14 Jan 2021 22:23:01 UTC
Severity: normal
Tags: patch
Done: Guillaume Le Vaillant <glv <at> posteo.net>
Bug is archived. No further changes may be made.
Message #38 received at 45875 <at> debbugs.gnu.org (full text, mbox):
From: Brendan Tildesley <mail <at> brendan.scot> To: 45875 <at> debbugs.gnu.org Cc: Hartmut Goebel <hartmut <at> goebel-consult.de>, Maxime Devos <maximedevos <at> telenet.be> Subject: [PATCH 2/3] gnu: gnunet: Update to 0.14.1-77fd866. Date: Mon, 17 May 2021 19:11:42 +1000
* gnu/packages/gnunet.scm: (build-common): New variable. (gnunet): Update to 0.14.1. [origin]: Use git reference to pull latest git due to bug fixes. [native-inputs]: Add autoconf et al. for building from git. Add Taler submodule (build-common). [arguments]: Fix permissions on .po files. Add phase 'add-build-common-submodule to symlink Taler submodule. Enable every test that works. I worked with upstream to fix some test failures, hence the use of this commit instead of the release. --- gnu/packages/gnunet.scm | 86 +++++++++++++++++++++++++++-------------- 1 file changed, 58 insertions(+), 28 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index d0a9955005..b3b9b20a34 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -11,6 +11,8 @@ ;;; Copyright © 2019 Brett Gilio <brettg <at> gnu.org> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy <at> bioneland.org> ;;; Copyright © 2020 Michael Rohleder <mike <at> rohleder.de> +;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be> +;;; Copyright © 2021 Brendan Tildesley <mail <at> brendan.scot> ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,6 +60,7 @@ #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages sqlite) + #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module (gnu packages upnp) #:use-module (gnu packages video) @@ -253,18 +256,33 @@ supports HTTP, HTTPS and GnuTLS.") (ftp-directory . "/gnunet"))) (home-page "https://gnunet.org/en/gnurl.html"))) +(define build-common + (let ((commit "1915a74bbb4cd2ae9bc541a382dfebc37064a2fd")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.taler.net/build-common.git") + (commit commit))) + (file-name (git-file-name "build-common" commit)) + (sha256 + (base32 + "18a44qf8hdq5hqb9ygi45k0zxlhy5d764kan0cz72ir7p0lxcj2h"))))) + (define-public gnunet + (let ((commit "77fd866573c80dad544cc010fc3fd74ca9cddd93")) (package (name "gnunet") - (version "0.13.1") + (version (string-append "0.14.1" "-" (string-take commit 7))) (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/gnunet/gnunet-" version - ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://git.gnunet.org/gnunet.git") + (commit commit))) + (file-name (string-append name "-" version)) (sha256 (base32 - "15jnca5zxng7r6m3qzq9lr73xxq0v6mvcp0lny3zrlkz5s2nmmq3")))) + "10dk9fkqqy9csp31616g1qhcwp7pf62kdzx37znb608i52j93a9b")))) (build-system gnu-build-system) (inputs `(("bluez" ,bluez) @@ -289,7 +307,15 @@ supports HTTP, HTTPS and GnuTLS.") ("zbar" ,zbar) ("zlib" ,zlib))) (native-inputs - `(("curl" ,curl) + ;; For building from git + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("gettext" ,gettext-minimal) + ("texinfo" ,texinfo) ; makeinfo + + ("build-common" ,build-common) + ("curl" ,curl) ;; test_plugin_rest_namestore.sh ("pkg-config" ,pkg-config) ("python" ,python) ("xxd" ,xxd) @@ -298,35 +324,39 @@ supports HTTP, HTTPS and GnuTLS.") '(#:parallel-tests? #f ; Parallel tests aren't supported. #:phases (modify-phases %standard-phases + (add-after 'unpack 'fixup-pofile-writability + (lambda _ + ;; bootstrap expects this to be writable + (chmod "po/POTFILES.in" #o700) + ;; Also not writable for some reason. + (for-each + (lambda (file) (chmod file #o700)) + (find-files "po/" "po$")) + #t)) + (add-before 'bootstrap 'add-build-common-submodule + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (let ((build-common (assoc-ref (or native-inputs inputs) "build-common"))) + ;; When building from git, include the contrib/build-common + ;; submodule. + (when build-common + (delete-file-recursively "contrib/build-common") + (symlink build-common "contrib/build-common") + ;; bootstrap expects this to be writable + ;; or non-existent, which isn't the case. + (delete-file "contrib/Makefile.inc"))) + #t)) (add-after 'configure 'remove-failing-tests ;; These tests fail in Guix's building environment. (lambda _ (substitute* "src/transport/Makefile" - (("\\$\\(am__EXEEXT_15\\)") "") ; test_transport_api_https - (("test_transport_api_manipulation_cfg\\$\\(EXEEXT\\) \\\\\n") "") - (("test_transport_api_udp_nat\\$\\(EXEEXT\\) \\\\\n") "") - (("test_transport_blacklisting_multiple_plugins\\$\\(EXEEXT\\) \\\\\n") "")) - (substitute* "src/testbed/Makefile" - (("test_testbed_api_2peers_1controller\\$\\(EXEEXT\\) \\\\\n") "") - (("test_testbed_api_statistics\\$\\(EXEEXT\\) \\\\\n") "") - (("test_testbed_api_test\\$\\(EXEEXT\\) \\\\\n") "") - (("test_testbed_api_test_timeout\\$\\(EXEEXT\\) \\\\\n") "") - (("test_testbed_api_topology\\$\\(EXEEXT\\) \\\\\n") "") - (("test_testbed_api_topology_clique\\$\\(EXEEXT\\) \\\\\n") "")) - (substitute* "src/topology/Makefile" - (("^check_PROGRAMS.*") "\n") - (("test_gnunet_daemon_topology\\$\\(EXEEXT\\)\n") "")) - (substitute* "src/namestore/Makefile" - (("\\$\\(am__append_2\\)") "")) - (substitute* "src/gns/Makefile" - (("\\$\\(am__append_4\\)") "")) - (substitute* "contrib/Makefile" - (("^check_PROGRAMS.*") "\n")) - ;; 'test' from coreutils doesn't behave as the test expects. + (("\\$\\(am__EXEEXT_15\\)") "")) ; test_transport_api_https + (substitute* "src/setu/Makefile" + (("test_setu_api ") "")) (substitute* '("src/gns/gnunet-gns-proxy-setup-ca.in" "src/transport/gnunet-transport-certificate-creation.in") (("gnutls-certtool") "certtool")) #t)) + ;; test_gnunet_peerinfo.py (add-before 'check 'set-env-var-for-tests (lambda _ (setenv "LANG" "en_US.UTF-8"))) @@ -349,7 +379,7 @@ that sense aims to replace the current internet protocol stack. Along with an application for secure publication of files, it has grown to include all kinds of basic applications for the foundation of a GNU internet.") (license license:agpl3+) - (home-page "https://gnunet.org/"))) + (home-page "https://gnunet.org/")))) (define-public guile-gnunet ;GSoC 2015! (let ((commit "d12167ab3c8d7d6caffd9c606e389ef043760602") -- 2.31.1
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.