[PATCH] Update gnunet to version 0.14.0

OpenSubmitted by Maxime Devos.
Details
5 participants
  • Hartmut Goebel
  • Hendursaga
  • Ludovic Courtès
  • Brendan Tildesley
  • Maxime Devos
Owner
unassigned
Severity
normal
M
M
Maxime Devos wrote on 14 Jan 2021 23:21
(address . guix-patches@gnu.org)
2b7dcca48ca14f0e13acab6897174df4bea345d0.camel@telenet.be
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.
--
Maxime Devos <maximedevos@telenet.be>
PGP Key: C1F3 3EE2 0C52 8FDB 7DD7 011F 49E3 EE22 1917 25EE
Freenode handle: mdevos
From 89cba03868c07d10d3133d738164b1822553a4f6 Mon Sep 17 00:00:00 2001
From: Maxime Devos <maximedevos@telenet.be>
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(-)

Toggle diff (260 lines)
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")
-- 
2.30.0
-----BEGIN PGP SIGNATURE-----

iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYADD5xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7h0NAP9yScNET1MSsc4gDK0qonWGChX1
pYIjEdJT02vJ6sA2GAD+MBCz1byf+CMRZMeMSKOCuakbVJRABGooqRRkLRuKWw8=
=M9Nt
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 23 Jan 2021 16:43
7733e34c889c91695305635177a98c15bb1a492e.camel@telenet.be
Perhaps don't apply yet, the following test fails:
FAIL: test_cadet_5_speed_reliable

Maybe my laptop is a little slow, or suspended while
the test was running. Perhaps the ‘speed tests’ should
be disabled? I'll try to reproduce.
-----BEGIN PGP SIGNATURE-----

iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYAxELxccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7pokAQDQLOGyIV0LwEhdItVU5KvA5mJS
iRTYDUKy/aEeKc48EAEAmwEtydwbrU4/b4mz+qf+bRV9SVfCbqk5r2AFci6gnwM=
=7yZm
-----END PGP SIGNATURE-----


H
H
Hartmut Goebel wrote on 30 Jan 2021 12:49
Re: [bug#45875] [PATCH] Update gnunet to version 0.14.0
87mtwqve3e.fsf@lenashee.goebel-consult.de
Hi,

the respective bug should be fixed now, see
So I propose to add thix commit as a patch - wich is a much smaller
change then your proposed one.

Regards
hartmut
M
M
Maxime Devos wrote on 30 Jan 2021 13:15
7849b8c7fdd2e8a5aa5cc7a28b55dbc1796bb83d.camel@telenet.be
Hi Hartmut,

On Sat, 2021-01-30 at 12:49 +0100, Hartmut Goebel wrote:
Toggle quote (7 lines)
> Hi,
>
> the respective bug should be fixed now, see
> <https://git.gnunet.org/gnunet.git/commit/?id=a5f200d5376c2a269c186c008264dddcc0edeba4>
> So I propose to add thix commit as a patch - wich is a much smaller
> change then your proposed one.

This commit fixes the tarball generation to include test_proxy.sh,
but there is no new release yet. Therefore, to update the package
definition, it is still required to download the source code from git,
which requires adding the ‘build-common’ git submodule (which isn't
pinned to a specific commit) which is normally copied into the release
tarball. The ‘configure’ and ‘Makefile.in’ is not included in git,
so autoconf and automake must be added.

In short, this commit changes nothing for guix until the next GNUnet
release.

Regards,
Maxime
-----BEGIN PGP SIGNATURE-----

iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYBVN2RccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7s5yAPwKTJ1s504MXrfNaW+VSsfEd5Op
7DyW5D6r/CiVzKwg2AEAiJsmWps/h1+3UGehqCKoO+5Dfwd4lj9SwEL0lTLuvwU=
=1PoW
-----END PGP SIGNATURE-----


H
H
Hartmut Goebel wrote on 30 Jan 2021 13:39
97ff1087-5a6a-3ebe-1e56-7504a727293c@goebel-consult.de
Hi Maxime,
Toggle quote (2 lines)
> This commit fixes the tarball generation to include test_proxy.sh,

IC, the file ist still missing.

Anyhow: This file is quite young and the other changes on this file are
not relevant for us (missing license, removing old files, linting
So adding this patch
should solve this problem.

Please also update gnunet-gtk, which was reported
http://issues.guix.gnu.org/43256#3 to be broken with gnunet 0.13.3. Thx.

--
+++hartmut

| Hartmut Goebel | |
| hartmut@goebel-consult.de | www.goebel-consult.de |
M
M
Maxime Devos wrote on 30 Jan 2021 14:25
ea11ad5e74466c3bf953070f404920807c3b7298.camel@telenet.be
Hi Hartmut,

On Sat, 2021-01-30 at 13:39 +0100, Hartmut Goebel wrote:
Toggle quote (2 lines)
> [...]
> Anyhow: This file is quite young [...]
Which file? I presume test_proxy.sh. Or do you mean gnu/packages/gnunet.scm?

Toggle quote (7 lines)
> [...] and the other changes on this file are
> not relevant for us (missing license, removing old files, linting
> errors), <https://git.gnunet.org/gnunet.git/log/src/gns/test_proxy.sh>
> So adding this patch
> <https://git.gnunet.org/gnunet.git/commit/src/gns/test_proxy.sh?id=7f666b4467ae5f530e904675df3f28886f4202fa>
> should solve this problem.

Are you suggesting using the v0.14.0 tarball, and adding the missing
test_proxy.sh using the patches mechanism described in "8.2 Defining Packages"?
Seems a good idea to me, will do that later. This should result in
a simpler patch.

I don't userstand your point about ‘changes not relevant to us’. Why not
just use the latest version for simplicity? Are the newer versions broken
on Guix in some manner perhaps?

Toggle quote (3 lines)
> Please also update gnunet-gtk, which was reported
> <http://issues.guix.gnu.org/43256#3> to be broken with gnunet 0.13.3. Thx.

At first, I thought it was only a few cosmetic change in version number,
but now I see there are some extra translations, and some bug fixes.
I'll update gnunet-gtk as well in the next patch version.

Maxime
-----BEGIN PGP SIGNATURE-----

iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYBVeOhccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7iThAP9+tgElixKx5sugHtz4IqVhIW2C
JYO9unM/7SDF7jqAvAEAlIh4qqVy0v+TScHsmoz4oMt/dEsCPkSazWLtFJv5nAg=
=gMKc
-----END PGP SIGNATURE-----


H
H
Hartmut Goebel wrote on 30 Jan 2021 14:46
(address . 45875@debbugs.gnu.org)
05467471-688c-4742-9d4c-f4aae8bce02d@goebel-consult.de
Hi Maxime,
Toggle quote (3 lines)
>
> Which file? I presume test_proxy.sh. Or do you mean gnu/packages/gnunet.scm?

test_proxy.sh


Toggle quote (6 lines)
> Are you suggesting using the v0.14.0 tarball, and adding the missing
> test_proxy.sh using the patches mechanism described in "8.2 Defining Packages"?
> Seems a good idea to me, will do that later. This should result in
> a simpler patch.


Exactly. I'm looking forward for the updated patch :-)


Toggle quote (4 lines)
> I don't userstand your point about ‘changes not relevant to us’. Why not
> just use the latest version for simplicity? Are the newer versions broken
> on Guix in some manner perhaps?

Of course you can use the latest version. And this is the better solution!

Since the only(easy) way to add this file is by adding a patch to the
"source" (as you can see here
my idea was to use the commit which introduced the missing file. This
would save creating a patch your self, and this is why I checked whether
the changes on for this this would be save.

Anyhow,suing the latest version is better! And creating the patch is not
much work.


Toggle quote (2 lines)
> I'll update gnunet-gtk as well in the next patch version.

Great!

--
+++hartmut

| Hartmut Goebel | |
| hartmut@goebel-consult.de | www.goebel-consult.de |
M
M
Maxime Devos wrote on 31 Jan 2021 18:11
7188d04d086a73dc2d59282a098eb1f0f24ef8ef.camel@telenet.be
An updated and much simpler patch is attached,
which adds the missing test_proxy.sh. However,
it is currently failing (something about CONVERSATION,
IDENTITY and type errors?). I haven't investigated
closely yet, as I'm currently focusing on other things,
so I'm posting the (failing) patch and build log.
From b4555addd58c9c2d0026a55313791761dc920976 Mon Sep 17 00:00:00 2001
From: Maxime Devos <maximedevos@telenet.be>
Date: Sun, 31 Jan 2021 10:44:43 +0100
Subject: [PATCH] index on master: 085708344c services: shepherd: allow custom
'shepherd' package

---
gnu/packages/gnunet.scm | 11 ++--
.../patches/gnunet-add-test-proxy.patch | 66 +++++++++++++++++++
2 files changed, 73 insertions(+), 4 deletions(-)
create mode 100644 gnu/packages/patches/gnunet-add-test-proxy.patch

Toggle diff (123 lines)
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 80e4aba29b..35c8fc67af 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.
 ;;;
@@ -256,15 +257,17 @@ supports HTTP, HTTPS and GnuTLS.")
 (define-public gnunet
   (package
    (name "gnunet")
-   (version "0.13.1")
+   (version "0.14.0")
    (source
     (origin
       (method url-fetch)
       (uri (string-append "mirror://gnu/gnunet/gnunet-" version
                           ".tar.gz"))
+      (patches
+       (search-patches "gnunet-add-test-proxy.patch"))
       (sha256
        (base32
-        "15jnca5zxng7r6m3qzq9lr73xxq0v6mvcp0lny3zrlkz5s2nmmq3"))))
+        "1as5mxg94vby10wxgxbsr8cxzh35lyinlp1cr8sx7l9fscxn1vys"))))
    (build-system gnu-build-system)
    (inputs
     `(("bluez" ,bluez)
@@ -386,14 +389,14 @@ services.")
 (define-public gnunet-gtk
   (package (inherit gnunet)
     (name "gnunet-gtk")
-    (version "0.13.1")
+    (version "0.14.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnu/gnunet/gnunet-gtk-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1zdzgq16h77w6ybwg3lqjsjr965np6iqvncqvkbj07glqd4wss0j"))))
+                "18rc7mb45y17d5nrlpf2p4ixp7ir67gcgjf4hlj4r95ic5zi54wa"))))
     (arguments
      `(#:configure-flags
        (list "--with-libunique"
diff --git a/gnu/packages/patches/gnunet-add-test-proxy.patch b/gnu/packages/patches/gnunet-add-test-proxy.patch
new file mode 100644
index 0000000000..9d15875ec2
--- /dev/null
+++ b/gnu/packages/patches/gnunet-add-test-proxy.patch
@@ -0,0 +1,66 @@
+This file was missing from the 0.14.0 tarball.
+
+Upstream bug URL:
+https://bugs.gnunet.org/view.php?id=6690
+
+diff --git a/src/gns/test_proxy.sh b/src/gns/test_proxy.sh
+new file mode 100755
+index 000000000..7c17cd4c5
+--- /dev/null
++++ b/src/gns/test_proxy.sh
+@@ -0,0 +1,55 @@
++#!/bin/bash
++# This file is in the public domain.
++TEST_DOMAIN="www.test"
++
++# Delete old files before starting test
++rm -rf /tmp/gnunet/test-gnunet-gns-testing/
++gnunet-arm -s -c test_gns_proxy.conf
++gnunet-gns-proxy-setup-ca -c test_gns_proxy.conf
++
++openssl genrsa -des3 -passout pass:xxxx -out server.pass.key 2048
++openssl rsa -passin pass:xxxx -in server.pass.key -out local.key
++rm server.pass.key
++openssl req -new -key local.key -out server.csr \
++  -subj "/C=DE/O=GNUnet/OU=GNS/CN=test.local"
++openssl x509 -req -days 1 -in server.csr -signkey local.key -out local.crt
++openssl x509 -in local.crt -out local.der -outform DER
++HEXCERT=`xxd -p local.der | tr -d '\n'`
++#echo "This is the certificate the server does not use: $HEXCERT"
++OLDBOXVALUE="6 8443 52 3 0 0 $HEXCERT"
++
++
++openssl req -new -key local.key -out server.csr \
++  -subj "/C=DE/O=GNUnet/OU=GNS/CN=test.local"
++openssl x509 -req -days 1 -in server.csr -signkey local.key -out local.crt
++openssl x509 -in local.crt -out local.der -outform DER
++HEXCERT=`xxd -p local.der | tr -d '\n'`
++#echo "This is the certificate the server does use: $HEXCERT"
++BOXVALUE="6 8443 52 3 0 0 $HEXCERT"
++
++cat local.crt > /tmp/server_cacert.pem
++cat local.key >> /tmp/server_cacert.pem
++
++gnunet-identity -C test -c test_gns_proxy.conf
++gnunet-namestore -p -z test -a -n www -t A -V 127.0.0.1 -e never -c test_gns_proxy.conf
++gnunet-namestore -p -z test -a -n www -t LEHO -V "test.local" -e never -c test_gns_proxy.conf
++gnunet-namestore -p -z test -a -n www -t BOX -V "$OLDBOXVALUE" -e never -c test_gns_proxy.conf
++gnunet-namestore -p -z test -a -n www -t BOX -V "$BOXVALUE" -e never -c test_gns_proxy.conf
++
++gnunet-arm -i gns-proxy -c test_gns_proxy.conf
++
++#gnurl --socks5-hostname 127.0.0.1:7777 https://www.test -v --cacert /tmp/proxy_cacert.pem
++./test_gns_proxy -A /tmp/proxy_cacert.pem -S /tmp/server_cacert.pem -p 8443 -c test_gns_proxy.conf
++
++RES=$?
++
++rm /tmp/proxy_cacert.pem
++rm /tmp/server_cacert.pem
++
++gnunet-arm -e test_gns_proxy.conf
++
++if test $RES != 0
++then
++  echo "Failed"
++  exit 1
++fi
-- 
2.30.0
-----BEGIN PGP SIGNATURE-----

iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYBbk3xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7p7yAQCwzsdheBVpaJureZupgs0knyXt
/Uagls0pelkyAdXZmwD+Osc6LoKPnbTL+iFySdvdapdDju6qiu7Hy9pE4gJfFgg=
=dz75
-----END PGP SIGNATURE-----


L
L
Ludovic Courtès wrote on 22 Mar 2021 18:11
Re: bug#45875: [PATCH] Update gnunet to version 0.14.0
(name . Maxime Devos)(address . maximedevos@telenet.be)
87a6qvw1tf.fsf_-_@gnu.org
Hi!

Hartmut, could you take a look?

Thanks,
Ludo’.

Maxime Devos <maximedevos@telenet.be> skribis:

Toggle quote (141 lines)
> An updated and much simpler patch is attached,
> which adds the missing test_proxy.sh. However,
> it is currently failing (something about CONVERSATION,
> IDENTITY and type errors?). I haven't investigated
> closely yet, as I'm currently focusing on other things,
> so I'm posting the (failing) patch and build log.
>
>
> From b4555addd58c9c2d0026a55313791761dc920976 Mon Sep 17 00:00:00 2001
> From: Maxime Devos <maximedevos@telenet.be>
> Date: Sun, 31 Jan 2021 10:44:43 +0100
> Subject: [PATCH] index on master: 085708344c services: shepherd: allow custom
> 'shepherd' package
>
> ---
> gnu/packages/gnunet.scm | 11 ++--
> .../patches/gnunet-add-test-proxy.patch | 66 +++++++++++++++++++
> 2 files changed, 73 insertions(+), 4 deletions(-)
> create mode 100644 gnu/packages/patches/gnunet-add-test-proxy.patch
>
> diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
> index 80e4aba29b..35c8fc67af 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.
> ;;;
> @@ -256,15 +257,17 @@ supports HTTP, HTTPS and GnuTLS.")
> (define-public gnunet
> (package
> (name "gnunet")
> - (version "0.13.1")
> + (version "0.14.0")
> (source
> (origin
> (method url-fetch)
> (uri (string-append "mirror://gnu/gnunet/gnunet-" version
> ".tar.gz"))
> + (patches
> + (search-patches "gnunet-add-test-proxy.patch"))
> (sha256
> (base32
> - "15jnca5zxng7r6m3qzq9lr73xxq0v6mvcp0lny3zrlkz5s2nmmq3"))))
> + "1as5mxg94vby10wxgxbsr8cxzh35lyinlp1cr8sx7l9fscxn1vys"))))
> (build-system gnu-build-system)
> (inputs
> `(("bluez" ,bluez)
> @@ -386,14 +389,14 @@ services.")
> (define-public gnunet-gtk
> (package (inherit gnunet)
> (name "gnunet-gtk")
> - (version "0.13.1")
> + (version "0.14.0")
> (source (origin
> (method url-fetch)
> (uri (string-append "mirror://gnu/gnunet/gnunet-gtk-"
> version ".tar.gz"))
> (sha256
> (base32
> - "1zdzgq16h77w6ybwg3lqjsjr965np6iqvncqvkbj07glqd4wss0j"))))
> + "18rc7mb45y17d5nrlpf2p4ixp7ir67gcgjf4hlj4r95ic5zi54wa"))))
> (arguments
> `(#:configure-flags
> (list "--with-libunique"
> diff --git a/gnu/packages/patches/gnunet-add-test-proxy.patch b/gnu/packages/patches/gnunet-add-test-proxy.patch
> new file mode 100644
> index 0000000000..9d15875ec2
> --- /dev/null
> +++ b/gnu/packages/patches/gnunet-add-test-proxy.patch
> @@ -0,0 +1,66 @@
> +This file was missing from the 0.14.0 tarball.
> +
> +Upstream bug URL:
> +https://bugs.gnunet.org/view.php?id=6690
> +
> +diff --git a/src/gns/test_proxy.sh b/src/gns/test_proxy.sh
> +new file mode 100755
> +index 000000000..7c17cd4c5
> +--- /dev/null
> ++++ b/src/gns/test_proxy.sh
> +@@ -0,0 +1,55 @@
> ++#!/bin/bash
> ++# This file is in the public domain.
> ++TEST_DOMAIN="www.test"
> ++
> ++# Delete old files before starting test
> ++rm -rf /tmp/gnunet/test-gnunet-gns-testing/
> ++gnunet-arm -s -c test_gns_proxy.conf
> ++gnunet-gns-proxy-setup-ca -c test_gns_proxy.conf
> ++
> ++openssl genrsa -des3 -passout pass:xxxx -out server.pass.key 2048
> ++openssl rsa -passin pass:xxxx -in server.pass.key -out local.key
> ++rm server.pass.key
> ++openssl req -new -key local.key -out server.csr \
> ++ -subj "/C=DE/O=GNUnet/OU=GNS/CN=test.local"
> ++openssl x509 -req -days 1 -in server.csr -signkey local.key -out local.crt
> ++openssl x509 -in local.crt -out local.der -outform DER
> ++HEXCERT=`xxd -p local.der | tr -d '\n'`
> ++#echo "This is the certificate the server does not use: $HEXCERT"
> ++OLDBOXVALUE="6 8443 52 3 0 0 $HEXCERT"
> ++
> ++
> ++openssl req -new -key local.key -out server.csr \
> ++ -subj "/C=DE/O=GNUnet/OU=GNS/CN=test.local"
> ++openssl x509 -req -days 1 -in server.csr -signkey local.key -out local.crt
> ++openssl x509 -in local.crt -out local.der -outform DER
> ++HEXCERT=`xxd -p local.der | tr -d '\n'`
> ++#echo "This is the certificate the server does use: $HEXCERT"
> ++BOXVALUE="6 8443 52 3 0 0 $HEXCERT"
> ++
> ++cat local.crt > /tmp/server_cacert.pem
> ++cat local.key >> /tmp/server_cacert.pem
> ++
> ++gnunet-identity -C test -c test_gns_proxy.conf
> ++gnunet-namestore -p -z test -a -n www -t A -V 127.0.0.1 -e never -c test_gns_proxy.conf
> ++gnunet-namestore -p -z test -a -n www -t LEHO -V "test.local" -e never -c test_gns_proxy.conf
> ++gnunet-namestore -p -z test -a -n www -t BOX -V "$OLDBOXVALUE" -e never -c test_gns_proxy.conf
> ++gnunet-namestore -p -z test -a -n www -t BOX -V "$BOXVALUE" -e never -c test_gns_proxy.conf
> ++
> ++gnunet-arm -i gns-proxy -c test_gns_proxy.conf
> ++
> ++#gnurl --socks5-hostname 127.0.0.1:7777 https://www.test -v --cacert /tmp/proxy_cacert.pem
> ++./test_gns_proxy -A /tmp/proxy_cacert.pem -S /tmp/server_cacert.pem -p 8443 -c test_gns_proxy.conf
> ++
> ++RES=$?
> ++
> ++rm /tmp/proxy_cacert.pem
> ++rm /tmp/server_cacert.pem
> ++
> ++gnunet-arm -e test_gns_proxy.conf
> ++
> ++if test $RES != 0
> ++then
> ++ echo "Failed"
> ++ exit 1
> ++fi
B
B
Brendan Tildesley wrote on 17 May 2021 11:11
[PATCH 0/3] gnu: gnunet: Update to 0.14.1-77fd866..
(address . 45875@debbugs.gnu.org)
20210517091142.25872-1-mail@brendan.scot
I used some code from the above patches to update to gnunet to the latest
version 0.14.1. I ended up encountering a different set of bugs, some of the
0.14.0 bugs were fixed, and I worked with upstream to fix a couple tests, so I
ended up building from git. I'm not sure how to correctly attribute Maxime's
work since these patches just have my name on them, but here they are anyway.

gnunet-gtk is still kinda broken. gnunet-fs-gtk segfaults, and gnunet-setup
doesn't seem to work.
B
B
Brendan Tildesley wrote on 17 May 2021 11:11
[PATCH 1/3] gnu: zbar: Update to 0.23.90.
(address . 45875@debbugs.gnu.org)
20210517091142.25872-2-mail@brendan.scot
* gnu/packages/aidc.scm (zbar): Update to 0.23.90.
---
gnu/packages/aidc.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm
index d1b63de736..3c6f7091ca 100644
--- a/gnu/packages/aidc.scm
+++ b/gnu/packages/aidc.scm
@@ -169,7 +169,7 @@ C/C++ programs to use its capabilities without restrictions or overhead.")
 (define-public zbar
   (package
     (name "zbar")
-    (version "0.23")
+    (version "0.23.90")
     (source
      (origin
        (method url-fetch)
@@ -178,7 +178,7 @@ C/C++ programs to use its capabilities without restrictions or overhead.")
                            ".tar.bz2"))
        (sha256
         (base32
-         "0bmd93a15qpgbsq9c9j33qms18rdrgz6gbc48zi6z9w5pvrvi7z9"))))
+         "1b81b6yr6bfgla1hfhz3hcjcsk1g7n41kiwwrghr2f1b63xwhlli"))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags (list "--with-gtk=auto"
-- 
2.31.1
B
B
Brendan Tildesley wrote on 17 May 2021 11:11
[PATCH 2/3] gnu: gnunet: Update to 0.14.1-77fd866.
(address . 45875@debbugs.gnu.org)
20210517091142.25872-3-mail@brendan.scot
* 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(-)

Toggle diff (149 lines)
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@gnu.org>
 ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2021 Brendan Tildesley <mail@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
B
B
Brendan Tildesley wrote on 17 May 2021 11:11
[PATCH 3/3] gnu: gnunet-gtk: Update to 0.14.0.
(address . 45875@debbugs.gnu.org)
20210517091142.25872-4-mail@brendan.scot
* gnu/packages/gnunet.scm (gnunet-gtk): Update to 0.14.0.
---
gnu/packages/gnunet.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Toggle diff (31 lines)
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index b3b9b20a34..95a9faf34f 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -416,14 +416,14 @@ services.")
 (define-public gnunet-gtk
   (package (inherit gnunet)
     (name "gnunet-gtk")
-    (version "0.13.1")
+    (version "0.14.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnu/gnunet/gnunet-gtk-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1zdzgq16h77w6ybwg3lqjsjr965np6iqvncqvkbj07glqd4wss0j"))))
+                "18rc7mb45y17d5nrlpf2p4ixp7ir67gcgjf4hlj4r95ic5zi54wa"))))
     (arguments
      `(#:configure-flags
        (list "--with-libunique"
@@ -438,6 +438,7 @@ services.")
        ("libextractor" ,libextractor)
        ("libgcrypt" ,libgcrypt)
        ("libunique" ,libunique)
+       ("libsodium" ,libsodium)
        ("qrencode" ,qrencode)))
     (native-inputs
      `(("pkg-config" ,pkg-config)
-- 
2.31.1
B
B
Brendan Tildesley wrote on 17 May 2021 16:51
[PATCH v2 2/3] gnu: gnunet: Update to 0.14.1-77fd866.
(address . 45875@debbugs.gnu.org)
20210517145104.21455-1-mail@brendan.scot
Got the LANG bug fixed upstream too, new patch 2/3
B
B
Brendan Tildesley wrote on 17 May 2021 16:51
(address . 45875@debbugs.gnu.org)
20210517145104.21455-2-mail@brendan.scot
* 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 | 89 +++++++++++++++++++++++++++--------------
1 file changed, 58 insertions(+), 31 deletions(-)

Toggle diff (152 lines)
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d0a9955005..0cb9c046ec 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -11,6 +11,8 @@
 ;;; 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>
+;;; Copyright © 2021 Brendan Tildesley <mail@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,34 @@ 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
+  ;; Upstream fixed a few test failures for us \o/!
+  (let ((commit "3b3faa6bce254289dafed73e98352e2a76f1b94b"))
   (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"))))
+        "0738wfpmsf4cy9xk63198ihp09ji7bvr6qvjrd0fi45xfgk8wvbz"))))
    (build-system gnu-build-system)
    (inputs
     `(("bluez" ,bluez)
@@ -289,7 +308,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,38 +325,38 @@ 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))
-        (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)
@@ -349,7 +376,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
B
B
Brendan Tildesley wrote on 19 May 2021 05:04
[PATCH v3 2/3] gnu: gnunet: Update to 0.14.1-1915a74.
(address . 45875@debbugs.gnu.org)
20210519030455.22485-1-mail@brendan.scot
* gnu/packages/gnunet.scm: (build-common): New variable.
(gnunet): Update to 0.14.1-1915a74.
[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.
---

I got ahead of myself and broken commit for v2, this one is the real deal.

gnu/packages/gnunet.scm | 90 +++++++++++++++++++++++++++--------------
1 file changed, 59 insertions(+), 31 deletions(-)

Toggle diff (153 lines)
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d0a9955005..a0bdbe7377 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -11,6 +11,8 @@
 ;;; 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>
+;;; Copyright © 2021 Brendan Tildesley <mail@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,34 @@ 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
+  ;; Upstream fixed a few test failures for us \o/!
+  (let ((commit "00c21152e81c10dff640ec932127e74ea8bc25ac"))
   (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"))))
+        "0fjmdm5m5jf6g1xc7ivicp862pymks2sgxvyla02dd3xgy4lv3ls"))))
    (build-system gnu-build-system)
    (inputs
     `(("bluez" ,bluez)
@@ -289,7 +308,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,38 +325,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
+            ;; Test may be broken: https://bugs.gnunet.org/view.php?id=6114
+            (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))
-        (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)
@@ -349,7 +377,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
B
B
Brendan Tildesley wrote on 19 May 2021 05:12
[PATCH v4 2/3] gnu: gnunet: Update to 0.14.1-00c2115.
(address . 45875@debbugs.gnu.org)
20210519031241.23225-1-mail@brendan.scot
* gnu/packages/gnunet.scm: (build-common): New variable.
(gnunet): Update to 0.14.1-00c2115.
[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.
---
I lied... I forgot to ammend the commit message. Now it's really for real.
gnu/packages/gnunet.scm | 90 +++++++++++++++++++++++++++--------------
1 file changed, 59 insertions(+), 31 deletions(-)

Toggle diff (153 lines)
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d0a9955005..a0bdbe7377 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -11,6 +11,8 @@
 ;;; 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>
+;;; Copyright © 2021 Brendan Tildesley <mail@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,34 @@ 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
+  ;; Upstream fixed a few test failures for us \o/!
+  (let ((commit "00c21152e81c10dff640ec932127e74ea8bc25ac"))
   (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"))))
+        "0fjmdm5m5jf6g1xc7ivicp862pymks2sgxvyla02dd3xgy4lv3ls"))))
    (build-system gnu-build-system)
    (inputs
     `(("bluez" ,bluez)
@@ -289,7 +308,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,38 +325,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
+            ;; Test may be broken: https://bugs.gnunet.org/view.php?id=6114
+            (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))
-        (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)
@@ -349,7 +377,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
M
M
Maxime Devos wrote on 20 May 2021 21:16
Re: [PATCH 0/3] gnu: gnunet: Update to 0.14.1-77fd866..
(name . Hartmut Goebel)(address . hartmut@goebel-consult.de)
bb5c0e596995b9526dd540222d99cba8bf07446d.camel@telenet.be
One test is failing for me (test_setu_api). I'll rebuild with --keep-failed
and send src/setu/test-suite.log. Otherwise no problems.

make check-TESTS
make[3]: Entering directory '/tmp/guix-build-gnunet-0.14.1-00c2115.drv-0/source/src/setu'
make[4]: Entering directory '/tmp/guix-build-gnunet-0.14.1-00c2115.drv-0/source/src/setu'
FAIL: test_setu_api
PASS: perf_setu_api
============================================================================
Testsuite summary for gnunet 0.14.1
============================================================================
# TOTAL: 2
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
See src/setu/test-suite.log
Please report to bug-gnunet@gnu.org
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYKa1nhccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7i0UAQDgxe9ZHrIKIE6tUm1zATwxp/d4
195qnnsvQ4p+R4j+iQD/YSxUa5NVCbc3IFCWKA7b3de3PxOlR1wRUS8IXzSbYA4=
=8qOr
-----END PGP SIGNATURE-----


B
B
Brendan Tildesley wrote on 21 May 2021 02:14
(address . 45875@debbugs.gnu.org)(name . Maxime Devos)(address . maximedevos@telenet.be)
737558821.5233.1621556047383@office.mailbox.org
Toggle quote (6 lines)
> On 05/20/2021 9:16 PM Maxime Devos <maximedevos@telenet.be> wrote:
>
>
> One test is failing for me (test_setu_api). I'll rebuild with --keep-failed
> and send src/setu/test-suite.log. Otherwise no problems.

Did you try the v3? Although it should be the same. That test is supposed to be disabled.
Maybe the substitute I added didn't actually disable it properly and the test doesn't fail 100%
of the time. I'm building it again.

+ (substitute* "src/setu/Makefile"
+ (("test_setu_api ") ""))
M
M
Maxime Devos wrote on 21 May 2021 08:23
80a4bba2b30d5a3398d276de509254b3cb361e20.camel@telenet.be
Brendan Tildesley schreef op vr 21-05-2021 om 02:14 [+0200]:
Toggle quote (8 lines)
> > On 05/20/2021 9:16 PM Maxime Devos <maximedevos@telenet.be> wrote:
> >
> >
> > One test is failing for me (test_setu_api). I'll rebuild with --keep-failed
> > and send src/setu/test-suite.log. Otherwise no problems.
>
> Did you try the v3?

I couldn't find all the v4 patches (only [PATCH v4 2/3]) so I had to piece a
few together. I thought I sent a mail asking whether I got the correct patches
but apparently I didn't. It would be best if you resent the patch series.

Toggle quote (3 lines)
> Although it should be the same. That test is supposed to be disabled.


Looking at the code, it should

(substitute* "src/setu/Makefile"
(("test_setu_api ") ""))


Toggle quote (3 lines)
> Maybe the substitute I added didn't actually disable it properly and the test doesn't fail 100%
> of the time. I'm building it again.

In any case, I re-ran with "--keep-failed", and this time got a different failing test:

$ cat /tmp/guix-build-gnunet-0.14.1-00c2115.drv-0/source/src/testbed/test_testbed_underlay.log
May 20 20:42:55-459013 test_testbed_underlay-9591 WARNING Peers 0 and 2 should not get connected
May 20 20:42:55-461567 ats-9620 ERROR Assertion failed at container_multipeermap.c:347. Aborting.
May 20 20:42:55-461939 ats-9624 ERROR Assertion failed at container_multipeermap.c:347. Aborting.
May 20 20:42:55-463838 transport-api-core-9616 ERROR Error receiving from transport service (1), disconnecting temporarily.
May 20 20:42:55-466559 transport-api-core-9606 ERROR Error receiving from transport service (1), disconnecting temporarily.
May 20 20:42:55-466716 transport-api-core-9606 ERROR Error receiving from transport service (1), disconnecting temporarily.
May 20 20:42:55-466740 transport-api-core-9606 ERROR Error receiving from transport service (1), disconnecting temporarily.
FAIL test_testbed_underlay (exit status: 1)

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iIwEABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYKdR/RccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7qhkAPUZX6y7M3KR3LNuO5aIlbBi+km4
a+UxTTCo/sRnwA8ZAP466t7dLjwuNuwhyLXy8g3fCqwh0orSrDFO+GNgvBEdCA==
=vLnI
-----END PGP SIGNATURE-----


B
B
Brendan Tildesley wrote on 23 May 2021 10:39
(address . 45875@debbugs.gnu.org)(name . Maxime Devos)(address . maximedevos@telenet.be)
1176738535.16551.1621759180441@office.mailbox.org
Toggle quote (1 lines)
> On 05/21/2021 8:23 AM Maxime Devos <maximedevos@telenet.be> wrote:
...
Toggle quote (4 lines)
> I couldn't find all the v4 patches (only [PATCH v4 2/3]) so I had to piece a
> few together. I thought I sent a mail asking whether I got the correct patches
> but apparently I didn't. It would be best if you resent the patch series.

Sorry I only sent the v4 for that one, I didn't realise I should have sent
the whole set.

Toggle quote (7 lines)
> Looking at the code, it should
>
> ;; Test may be broken: https://bugs.gnunet.org/view.php?id=6114
> (substitute* "src/setu/Makefile"
> (("test_setu_api ") ""))
>

The substitute was wrong but I've fixed it locally.

Toggle quote (6 lines)
>
> > Maybe the substitute I added didn't actually disable it properly and the test doesn't fail 100%
> > of the time. I'm building it again.
>
> In any case, I re-ran with "--keep-failed", and this time got a different failing test:

Ok I don't get that one, but I also got a test_cadet_5_speed_reliable error. I'm starting to think
we should just set #:test? #f because there are too many unreliable tests. Probably the ones
I reenabled are still bad too. What do you think?
H
H
Hartmut Goebel wrote on 26 Feb 17:49 +0100
gnunet 0.16.0 released
(address . 45875@debbugs.gnu.org)
6953070c-0959-ee74-9ffd-64bc622b91e1@goebel-consult.de
Hi,

gnunet 016.0 was released just today. Anyhow, we still don't have gnunet
0.14.0 merged.

Would be great if one of you could create a patch for gnunet 0.16, based
on the unfinished patch 45875. I promise to test and review that patch
in a timely manner, if you keep me Cc'ed

--
+++hartmut

| Hartmut Goebel | |
| hartmut@goebel-consult.de | www.goebel-consult.de |
B
B
Brendan Tildesley wrote on 2 Apr 04:52 +0200
[PATCH] Updating gnunet to version 0.14.0
(address . 45875@debbugs.gnu.org)
e601edb0-9c11-4553-4ca7-77f934dd627a@brendan.scot
GNUnet has been update to 0.16.3, although gnunet-gtk still needs
updating. it failed to configure for me, not finding GNUnet
H
H
Hendursaga wrote 4 days ago
[PATCH] Update gnunet to version 0.14.0
(address . 45875@debbugs.gnu.org)
87h72isi5p.fsf@aol.com
Toggle quote (4 lines)
> we still don't have gnunet 0.14.0 merged.

> if one of you could create a patch for gnunet 0.16, based on the unfinished patch 45875.

GNUnet 0.17.4 was just released, should we aim to create a patch for 0.17?
?