From patchwork Thu Jan 14 22:21:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: M X-Patchwork-Id: 26374 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id D80F027BC13; Thu, 14 Jan 2021 22:23:18 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id D09BE27BC12 for ; Thu, 14 Jan 2021 22:23:16 +0000 (GMT) Received: from localhost ([::1]:39436 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l0B1Q-0004Zh-2j for patchwork@mira.cbaines.net; Thu, 14 Jan 2021 17:23:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54972) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l0B1C-0004ZY-KL for guix-patches@gnu.org; Thu, 14 Jan 2021 17:23:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:56226) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1l0B1C-0005WE-66 for guix-patches@gnu.org; Thu, 14 Jan 2021 17:23:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1l0B1C-0000CT-2f for guix-patches@gnu.org; Thu, 14 Jan 2021 17:23:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45875] [PATCH] Update gnunet to version 0.14.0 Resent-From: Maxime Devos Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 14 Jan 2021 22:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45875 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45875@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.1610662922686 (code B ref -1); Thu, 14 Jan 2021 22:23:01 +0000 Received: (at submit) by debbugs.gnu.org; 14 Jan 2021 22:22:02 +0000 Received: from localhost ([127.0.0.1]:39539 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0B05-0000Aa-Bv for submit@debbugs.gnu.org; Thu, 14 Jan 2021 17:22:02 -0500 Received: from lists.gnu.org ([209.51.188.17]:60934) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0B00-0000AP-LV for submit@debbugs.gnu.org; Thu, 14 Jan 2021 17:21:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54822) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l0B00-0004A9-A2 for guix-patches@gnu.org; Thu, 14 Jan 2021 17:21:48 -0500 Received: from baptiste.telenet-ops.be ([2a02:1800:120:4::f00:13]:34126) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1l0Azw-00057j-Ne for guix-patches@gnu.org; Thu, 14 Jan 2021 17:21:48 -0500 Received: from ptr-bvsjgyjmffd7q9timvx.18120a2.ip6.access.telenet.be ([IPv6:2a02:1811:8c09:9d00:aaf1:9810:a0b8:a55d]) by baptiste.telenet-ops.be with bizsmtp id GmMd2400Q0mfAB401mMe14; Thu, 14 Jan 2021 23:21:38 +0100 Message-ID: <2b7dcca48ca14f0e13acab6897174df4bea345d0.camel@telenet.be> From: Maxime Devos Date: Thu, 14 Jan 2021 22:21:27 +0000 User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Received-SPF: pass client-ip=2a02:1800:120:4::f00:13; envelope-from=maximedevos@telenet.be; helo=baptiste.telenet-ops.be X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hello Guix! I've updated GNUnet to v0.14.0 (see attached patch). Due to some issues (see patch), I built gnunet from git instead of from the release tarball. From 89cba03868c07d10d3133d738164b1822553a4f6 Mon Sep 17 00:00:00 2001 From: Maxime Devos Date: Thu, 14 Jan 2021 21:55:33 +0000 Subject: [PATCH] gnu: gnunet: Update to 0.14.0. 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. --- gnu/packages/gnunet.scm | 225 ++++++++++++++++++++++++---------------- 1 file 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 ;;; Copyright © 2020 Tanguy Le Carrour ;;; Copyright © 2020 Michael Rohleder +;;; Copyright © 2021 Maxime Devos ;;; ;;; 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") -- 2.30.0