summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2021-01-14 21:55:33 +0000
committerGuix Patches Tester <>2021-01-14 22:24:17 +0000
commitf171b9b2a2d96067c5e086cff3ea5caa0462edfb (patch)
tree7dfc4e43f60f428cf91d11da06c9ebc4bb1b5eab
parentef448aa3f6f29b62d0fe74e7c2883d230d3a72ad (diff)
downloadguix-patches-f171b9b2a2d96067c5e086cff3ea5caa0462edfb.tar
guix-patches-f171b9b2a2d96067c5e086cff3ea5caa0462edfb.tar.gz
gnu: gnunet: Update to 0.14.0.series-6487
The v0.14.0 tarball doesn't build from source, so build from git instead. This requires some additional inputs. * gnu/packages/gnunet.scm (gnunet): Update to 0.14.0. [arguments]{phases}: Add phase `add-build-common-submodule`, `fixup-pofile-writability' and `remove-ftbfs-tests'. [native-inputs]: add libtool, autoconf, automake, gettext, texinfo and build-common. * gnu/packages/gnunet.scm (build-common): New variable.
-rw-r--r--gnu/packages/gnunet.scm225
1 files changed, 136 insertions, 89 deletions
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 80e4aba29b..6a3b827dea 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -58,6 +59,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,103 +255,148 @@ supports HTTP, HTTPS and GnuTLS.")
(ftp-directory . "/gnunet")))
(home-page "https://gnunet.org/en/gnurl.html")))
-(define-public gnunet
- (package
- (name "gnunet")
- (version "0.13.1")
- (source
+(define build-common
+ (let ((commit "1915a74bbb4cd2ae9bc541a382dfebc37064a2fd"))
(origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gnunet/gnunet-" version
- ".tar.gz"))
+ (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
- "15jnca5zxng7r6m3qzq9lr73xxq0v6mvcp0lny3zrlkz5s2nmmq3"))))
- (build-system gnu-build-system)
- (inputs
- `(("bluez" ,bluez)
- ("glpk" ,glpk)
- ("gnurl" ,gnurl)
- ("gnutls" ,gnutls/dane)
- ("gstreamer" ,gstreamer)
- ("jansson" ,jansson)
- ("libextractor" ,libextractor)
- ("libidn" ,libidn2)
- ("libgcrypt" ,libgcrypt)
- ("libjpeg" ,libjpeg-turbo)
- ("libltdl" ,libltdl)
- ("libmicrohttpd" ,libmicrohttpd)
- ("libogg" ,libogg)
- ("libsodium" ,libsodium)
- ("libunistring" ,libunistring)
- ("miniupnpc" ,miniupnpc)
- ("opus" ,opus)
- ("pulseaudio" ,pulseaudio)
- ("sqlite" ,sqlite)
- ("zbar" ,zbar)
- ("zlib" ,zlib)))
- (native-inputs
- `(("curl" ,curl)
- ("pkg-config" ,pkg-config)
- ("python" ,python)
- ("xxd" ,xxd)
- ("which" ,(@ (gnu packages base) which))))
- (arguments
- '(#:parallel-tests? #f ; Parallel tests aren't supported.
- #:phases
- (modify-phases %standard-phases
- (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.
- (substitute* '("src/gns/gnunet-gns-proxy-setup-ca.in"
- "src/transport/gnunet-transport-certificate-creation.in")
- (("gnutls-certtool") "certtool"))
- #t))
- (add-before 'check 'set-env-var-for-tests
- (lambda _
- (setenv "LANG" "en_US.UTF-8")))
- ;; Swap 'check and 'install phases and add installed binaries to $PATH.
- (add-before 'check 'set-path-for-check
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (setenv "GNUNET_PREFIX" (string-append out "/lib"))
- (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")))
- #t))
- (delete 'check)
- (add-after 'install 'check
- (assoc-ref %standard-phases 'check)))))
- (synopsis "Secure, decentralized, peer-to-peer networking framework")
- (description
- "GNUnet is a framework for secure peer-to-peer networking. The
+ "18a44qf8hdq5hqb9ygi45k0zxlhy5d764kan0cz72ir7p0lxcj2h")))))
+
+(define-public gnunet
+ (let ((commit "d36019fe48ff1e4e56754ef3e689bd67445a38f6"))
+ (package
+ (name "gnunet")
+ (version "0.14.0")
+ ;; 'test_proxy.sh' is missing from the tarball
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.gnunet.org/gnunet.git/")
+ (commit commit)))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "0llwz6ng5hl2bmv4yyb8l39frj9kkzdd1x8wx63dy988hkv8l1w1"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("bluez" ,bluez)
+ ("glpk" ,glpk)
+ ("gnurl" ,gnurl)
+ ("gnutls" ,gnutls/dane)
+ ("gstreamer" ,gstreamer)
+ ("jansson" ,jansson)
+ ("libextractor" ,libextractor)
+ ("libidn" ,libidn2)
+ ("libgcrypt" ,libgcrypt)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libltdl" ,libltdl)
+ ("libmicrohttpd" ,libmicrohttpd)
+ ("libogg" ,libogg)
+ ("libsodium" ,libsodium)
+ ("libunistring" ,libunistring)
+ ("miniupnpc" ,miniupnpc)
+ ("opus" ,opus)
+ ("pulseaudio" ,pulseaudio)
+ ("sqlite" ,sqlite)
+ ("zbar" ,zbar)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("curl" ,curl)
+ ("libtool" ,libtool)
+ ("autoconf" ,autoconf-wrapper)
+ ("automake" ,automake)
+ ("gettext" ,gettext-minimal)
+ ("texinfo" ,texinfo)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python)
+ ("xxd" ,xxd)
+ ("build-common" ,build-common)
+ ("which" ,(@ (gnu packages base) which))))
+ (arguments
+ '(#:parallel-tests? #f ; Parallel tests aren't supported.
+ #:phases
+ (modify-phases %standard-phases
+ (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 'unpack 'fixup-pofile-writability
+ (lambda _
+ ;; bootstrap expects this to be writable
+ (chmod "po/POTFILES.in" #o700)
+ #t))
+ (add-after 'configure 'remove-ftbfs-tests
+ ;; These tests fail to compile
+ (lambda _
+ (substitute* "src/conversation/Makefile"
+ (("test_conversation_api\\$\\(EXEEXT\\) \\\\\n") ""))
+ #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.
+ (substitute* '("src/gns/gnunet-gns-proxy-setup-ca.in"
+ "src/transport/gnunet-transport-certificate-creation.in")
+ (("gnutls-certtool") "certtool"))
+ #t))
+ (add-before 'check 'set-env-var-for-tests
+ (lambda _
+ (setenv "LANG" "en_US.UTF-8")))
+ ;; Swap 'check and 'install phases and add installed binaries to $PATH.
+ (add-before 'check 'set-path-for-check
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (setenv "GNUNET_PREFIX" (string-append out "/lib"))
+ (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")))
+ #t))
+ (delete 'check)
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check)))))
+ (synopsis "Secure, decentralized, peer-to-peer networking framework")
+ (description
+ "GNUnet is a framework for secure peer-to-peer networking. The
high-level goal is to provide a strong foundation of free software for a
global, distributed network that provides security and privacy. GNUnet in
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/")))
+ (license license:agpl3+)
+ (home-page "https://gnunet.org/"))))
(define-public guile-gnunet ;GSoC 2015!
(let ((commit "d12167ab3c8d7d6caffd9c606e389ef043760602")