From unknown Sun Aug 17 22:01:28 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#44199 <44199@debbugs.gnu.org> To: bug#44199 <44199@debbugs.gnu.org> Subject: Status: [PATCH 0/1] An origin method for GNUnet FS URI's Reply-To: bug#44199 <44199@debbugs.gnu.org> Date: Mon, 18 Aug 2025 05:01:28 +0000 retitle 44199 [PATCH 0/1] An origin method for GNUnet FS URI's reassign 44199 guix-patches submitter 44199 Maxime Devos severity 44199 normal tag 44199 wontfix patch thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 24 15:49:26 2020 Received: (at submit) by debbugs.gnu.org; 24 Oct 2020 19:49:26 +0000 Received: from localhost ([127.0.0.1]:35193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWPXa-0002X7-Cq for submit@debbugs.gnu.org; Sat, 24 Oct 2020 15:49:26 -0400 Received: from lists.gnu.org ([209.51.188.17]:44032) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWPWa-0002V2-Qe for submit@debbugs.gnu.org; Sat, 24 Oct 2020 15:48:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57310) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kWPWa-0007P6-IM for guix-patches@gnu.org; Sat, 24 Oct 2020 15:48:24 -0400 Received: from rhcavuit01.kulnet.kuleuven.be ([134.58.240.129]:37111) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kWPWW-0007XG-Oc for guix-patches@gnu.org; Sat, 24 Oct 2020 15:48:24 -0400 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (not cached, score=-50.999, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00, URIBL_BLOCKED 0.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: 63FE2120002.ACE01 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-2.cc.kuleuven.be (icts-p-smtps-2e.kulnet.kuleuven.be [134.58.240.34]) by rhcavuit01.kulnet.kuleuven.be (Postfix) with ESMTP id 63FE2120002 for ; Sat, 24 Oct 2020 21:47:52 +0200 (CEST) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-2.cc.kuleuven.be (Postfix) with ESMTPSA id 41E76200A1 for ; Sat, 24 Oct 2020 21:47:52 +0200 (CEST) Message-ID: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> Subject: [PATCH 0/1] An origin method for GNUnet FS URI's X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: guix-patches@gnu.org Date: Sat, 24 Oct 2020 21:47:17 +0200 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-cym94nEco87kqPs05rNI" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Received-SPF: pass client-ip=134.58.240.129; envelope-from=maxime.devos@student.kuleuven.be; helo=rhcavuit01.kulnet.kuleuven.be X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/24 15:48:19 X-ACL-Warn: Detected OS = Linux 2.6.x [fuzzy] X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sat, 24 Oct 2020 15:49:25 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) --=-cym94nEco87kqPs05rNI Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable This patch defines a `gnunet-fetch' method, allowing for downloading files from GNUnet by their GNUnet chk-URI. This patch does not provide: - a service configuration - downloading substitutes from GNUnet - fall-back to non-P2P (e.g. http://) or other P2P (e.g. ipfs://) systems - downloading directories over GNUnet - actual packages definitions using this method Some issues and questions: - (guix build gnunet) would call call-with-temporary-output-file from (guix utils), which isn't available when building derivations, so it has been copied to (guix build gnunet). Is there any particular reason for call-with-temporary-output-file to be in (guix utils) and not (guix build utils)? - Would it be possible somehow for url-fetch to support gnunet://fs/chk URIs? That way we could fall-back unto non-P2P URLs, which would be useful to bootstrap a P2P distribution from a non-P2P system. - No timeouts have been implemented, so gnunet-download may spin forever if a source isn't available on GNUnet FS. Some problematic points: - (guix gnunet-download) calls gnunet-config from $PATH, to figure out connection details for (guix build gnunet) - (guix build gnunet) requires the GNUnet FS daemon to bind to loopback, whereas a standard GNUnet setup would have the daemon bound to a Unix socket. Example usage: First make the GNUnet FS daemon accessible to Guix: $ guix install gnunet $ gnunet-config -s fs -o port -V 2094 $ gnunet-arm -s Then publish the source tarball of the package to the GNUnet FS system: $ guix environment --ad-hoc wget -- wget=20 https://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz $ gnunet-publish hello-2.10.tar.gz The output should look like this: > Publishing `$PWD/hello-2.10.tar.gz' done. > URI is > `gnunet://fs/chk/TY48PGS5RVX643NT2B7GDNFCBT4DWG692PF4YNHERR96K6MSFRZ4 > ZWRPQ4KVKZV29MGRZTWAMY9ETTST4B6VFM47JR2JS5PWBTPVXB0.8A9HRYABJ7HDA7B0P > 37VG6D593> The following test package can now be compiled: $ cat > example.scm < (file-name "gnunet-hello-2.10.tar.gz") (sha256 (base32 "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i") ))) (build-system gnu-build-system) (synopsis "Hello, GNUnet world! An example of a package with a GNUnet chk-URI origin") (description "GNU Hello prints the message \"Hello, world!\" and then exits. It serves as an example of standard GNU coding practices. As such, it supports command-line arguments, multiple languages, and so on.") (home-page "https://www.gnu.org/software/hello/") (license gpl3+))) hello/gnunet EOF $ ./pre-inst-env guix build -f example.scm Maxime Devos (1): guix: Add (guix gnunet-download). Makefile.am | 2 + doc/guix.texi | 7 +++ guix/build/gnunet.scm | 113 +++++++++++++++++++++++++++++++++++++++ guix/gnunet-download.scm | 89 ++++++++++++++++++++++++++++++ 4 files changed, 211 insertions(+) create mode 100644 guix/build/gnunet.scm create mode 100644 guix/gnunet-download.scm --=-cym94nEco87kqPs05rNI Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX5SExSEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe6KWgD/XLInJPzNEYjD OiuygHn8NgX38z9JpXfNIEqViy6tcUUA/i+j27oA9KBQW0vS2kqbqj2Gwrsx4gM3 bfWHKzh9oGwA =L9RV -----END PGP SIGNATURE----- --=-cym94nEco87kqPs05rNI-- From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 24 15:54:26 2020 Received: (at 44199) by debbugs.gnu.org; 24 Oct 2020 19:54:27 +0000 Received: from localhost ([127.0.0.1]:35222 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWPcK-0002gv-5S for submit@debbugs.gnu.org; Sat, 24 Oct 2020 15:54:26 -0400 Received: from rhcavuit02.kulnet.kuleuven.be ([134.58.240.130]:59618) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWPcH-0002gh-5x for 44199@debbugs.gnu.org; Sat, 24 Oct 2020 15:54:18 -0400 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (not cached, score=-50.999, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00, URIBL_BLOCKED 0.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: 0F1DD120333.A0C73 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-1.cc.kuleuven.be (icts-p-smtps-1e.kulnet.kuleuven.be [134.58.240.33]) by rhcavuit02.kulnet.kuleuven.be (Postfix) with ESMTP id 0F1DD120333 for <44199@debbugs.gnu.org>; Sat, 24 Oct 2020 21:54:13 +0200 (CEST) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-1.cc.kuleuven.be (Postfix) with ESMTPSA id D18C940B2 for <44199@debbugs.gnu.org>; Sat, 24 Oct 2020 21:54:12 +0200 (CEST) Message-ID: Subject: [PATCH 1/1] guix: Add (guix gnunet-download). X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: 44199@debbugs.gnu.org Date: Sat, 24 Oct 2020 21:54:12 +0200 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-y/0cAtxQWHh0glfHeTmu" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 X-Spam-Score: -0.3 (/) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) --=-y/0cAtxQWHh0glfHeTmu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable This method allows fetching sources over GNUnet's file-sharing system, presuming GNUnet has been configured on the local system. Missing: - time-outs - fetching substitutes over GNUnet - fallback to legacy non-P2P servers - GNUnet system service * guix/gnunet-download.scm, guix/build/gnunet.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Defining Packages): Document gnunet-fetch. --- Makefile.am | 2 + doc/guix.texi | 7 +++ guix/build/gnunet.scm | 113 +++++++++++++++++++++++++++++++++++++++ guix/gnunet-download.scm | 89 ++++++++++++++++++++++++++++++ 4 files changed, 211 insertions(+) create mode 100644 guix/build/gnunet.scm create mode 100644 guix/gnunet-download.scm diff --git a/Makefile.am b/Makefile.am index a75d9c1ffc..f046020017 100644 --- a/Makefile.am +++ b/Makefile.am @@ -94,6 +94,7 @@ MODULES =3D \ guix/android-repo-download.scm \ guix/bzr-download.scm \ guix/git-download.scm \ + guix/gnunet-download.scm \ guix/hg-download.scm \ guix/swh.scm \ guix/monads.scm \ @@ -187,6 +188,7 @@ MODULES =3D \ guix/build/bzr.scm \ guix/build/copy-build-system.scm \ guix/build/git.scm \ + guix/build/gnunet.scm \ guix/build/hg.scm \ guix/build/glib-or-gtk-build-system.scm \ guix/build/gnu-bootstrap.scm \ diff --git a/doc/guix.texi b/doc/guix.texi index 8514dfe86f..8a5f0559f3 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -81,6 +81,7 @@ Copyright @copyright{} 2020 R Veera Kumar@* Copyright @copyright{} 2020 Pierre Langlois@* Copyright @copyright{} 2020 pinoaffe@* Copyright @copyright{} 2020 Andr=C3=A9 Batista@* +Copyright @copyright{} 2020 Maxime Devos@* =20 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -6595,6 +6596,12 @@ specified in the @code{uri} field as a @code{git-reference} object; a (url "https://git.savannah.gnu.org/git/hello.git") (commit "v2.10")) @end lisp + +@vindex gnunet-fetch +@item @var{gnunet-feth} from @code{(guix gnunet-download)} +download a file specified by its GNUnet chk-URI. To use +this method, the GNUnet file-sharing daemon has to be configured +to accept connections from the loopback networking interface. @end table =20 @item @code{sha256} diff --git a/guix/build/gnunet.scm b/guix/build/gnunet.scm new file mode 100644 index 0000000000..3cee161cc2 --- /dev/null +++ b/guix/build/gnunet.scm @@ -0,0 +1,113 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2016 Ricardo Wurmus +;;; Copyright =C2=A9 2018 Mark H Weaver +;;; Copyright =C2=A9 2018 Bj=C3=B6rn H=C3=B6fling +;;; Copyright =C2=A9 2020 Simon Tournier +;;; Copyright =C2=A9 2020 Maxime Devos +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see ;. + +(define-module (guix build gnunet) + #:use-module (guix build utils) + #:use-module (srfi srfi-34) + #:use-module (ice-9 format) + #:use-module (rnrs io ports) + #:export (gnunet-fetch)) + +;;; Commentary: +;;; +;;; This is the build-side support code of (guix gnunet-download). It=20 allows +;;; files of which the GNUnet chk-URI is known to be downloaded from the GNUnet +;;; file-sharing system. The code has been derived from (guix build hg). +;;; +;;; Code: + +;; Copied from (guix utils) +(define (call-with-temporary-output-file proc) + "Call PROC with a name of a temporary file and open output port to that +file; close the file and delete it when leaving the dynamic extent of this +call." + (let* ((directory (or (getenv "TMPDIR") "/tmp")) + (template (string-append directory "/guix-file.XXXXXX")) + (out (mkstemp! template))) + (dynamic-wind + (lambda () + #t) + (lambda () + (proc template out)) + (lambda () + (false-if-exception (close out)) + (false-if-exception (delete-file template)))))) + +(define (gnunet-fs-up? port) + "#t if the GNUnet FS daemon seems to be up at @var{port}, #f otherwise" + (let ((s (socket PF_INET SOCK_STREAM 0))) + (catch 'system-error + (lambda () + (connect s AF_INET INADDR_LOOPBACK port) + (close-port s) + #t) + (lambda (tag function msg msg+ errno) + (close-port s) + (if (and (equal? function "connect") + (equal? errno (list ECONNREFUSED))) + #f + (throw tag function msg msg+ errno)))))) + +;; TODO: gnunet directories, time-outs, perhaps use guile-gnunet +(define* (gnunet-fetch uri file + #:key (gnunet-download-command "gnunet- download")) + "Fetch a file identified by a GNUnet chk-URI @var{URI} into @var{file}. +@var{uri} must not be a directory. Return #t on success, #f otherwise." + (guard (c ((invoke-error? c) + (format (current-error-port) + "gnunet-fetch: '~a~{ ~a~}' failed with exit code ~a~%" + (invoke-error-program c) + (invoke-error-arguments c) + (or (invoke-error-exit-status c) + (invoke-error-stop-signal c) + (invoke-error-term-signal c))) + (false-if-exception (delete-file-recursively file)) + #f)) + (define port + (let ((p (getenv "gnunet port"))) + (and p (< 0 (string-length p)) + (string->number p)))) + (define anonymity + (let ((a (getenv "GNUNET_ANONYMITY"))) + (cond ((equal? a "") "1") + ((not a) "1") + (else a)))) + ;; Check if the GNUnet daemon is up, + ;; otherwise gnunet-download might wait forever. + (if (or (not port) (gnunet-fs-up? port)) + (call-with-temporary-output-file + (lambda (config-file-name config-output-port) + ;; Tell gnunet-download how to contact the FS daemon + (display (getenv "gnunet configuration") config-output- port) + (flush-output-port config-output-port) + (invoke gnunet-download-command uri + "-c" config-file-name + "-V" ;; print progress information + "-a" anonymity + "-o" file) + #t)) + (begin + (format (current-error-port) + "gnunet-fetch: file-sharing daemon is down.~%") + #f)))) + +;;; gnunet.scm ends here diff --git a/guix/gnunet-download.scm b/guix/gnunet-download.scm new file mode 100644 index 0000000000..8a825b90ae --- /dev/null +++ b/guix/gnunet-download.scm @@ -0,0 +1,89 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2018 Pierre Neidhardt +;;; Copyright =C2=A9 2020 Maxime Devos +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see ;. +(define-module (guix gnunet-download) + #:use-module (guix packages) + #:use-module (guix store) + #:use-module (guix monads) + #:use-module (guix gexp) + #:use-module (ice-9 popen) + #:use-module (ice-9 rdelim) + #:export (gnunet-fetch)) + +;;; An method that uses gnunet-download to fetch a specific hash +;;; the GNUnet file-sharing system. The hash is specified as a GNUnet chk-URI +;;; string. The code has been derived from (guix gx-download). +;;; +;;; Code: + +(define (gnunet-package) + "Return the default GNUnet package." + (let ((distro (resolve-interface '(gnu packages gnunet)))) + (module-ref distro 'gnunet))) + +(define* (gnunet-configuration #:key (gnunet (gnunet-package))) + "Make a configuration file allowing the build process to talk +with the GNUnet FS daemon." + ;; TODO: is it acceptable to assume + ;; the existence of gnunet-config in PATH? + ;; If not, can @var{gnunet} be compiled? + ;; Alternatively, parse .config/gnunet.conf manually. + ;; + ;; TODO: by default, GNUnet uses Unix sockets + ;; instead of IP for IPC. Can we poke a hole + ;; in the build process isolation allowing this + ;; setup? + (let* ((p (open-pipe* OPEN_READ "gnunet-config" "--section" "fs" "- o" "PORT")) + (port (read-line p))) + (close-pipe p) + (values (format #f "[fs]~%PORT =3D ~a\n" port) + port))) + +(define* (gnunet-fetch uri hash-algo hash + #:optional name + #:key (system (%current-system)) (guile (default-guile)) + (gnunet (gnunet-package))) + "Return a fixed-output derivation that fetches @var{uri}, a GNUnet chk-URI +string. The output is expected to have hash @var{hash} of type +@var{hash-algo}. Use @var{name} as the file name, or a generic name if #f." + (define build + (with-imported-modules '((guix build gnunet) + (guix build utils)) + #~(begin + (use-modules (guix build gnunet)) + (or (gnunet-fetch '#$uri + #$output + #:gnunet-download-command + (string-append #+gnunet "/bin/gnunet- download")))))) + (define env-vars + (call-with-values (lambda () (gnunet-configuration #:gnunet gnunet)) + (lambda (configuration port) + `(("gnunet configuration" . ,configuration) + ("gnunet port" . ,port))))) + (mlet %store-monad ((guile (package->derivation guile system))) + (gexp->derivation (or name "gnunet-chk") build + #:system system + #:local-build? #t ;; don't offload downloads + #:hash-algo hash-algo + #:hash hash + #:recursive? #f + #:leaked-env-vars '("GNUNET_ANONYMITY") + #:env-vars env-vars + #:guile-for-build guile))) + +;;; gnunet-download.scm ends here --=-y/0cAtxQWHh0glfHeTmu Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX5SGZCEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe5uAAEArZnvBoDnRG5J FetXk6KkL/uGKiQmc6IBmjP6kqdwD/UA/2dGBa2mzP6UM1mNZcEOnZDHBjFuf4yI PyQFqza+a3YO =O+eh -----END PGP SIGNATURE----- --=-y/0cAtxQWHh0glfHeTmu-- From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 27 09:40:05 2020 Received: (at 44199) by debbugs.gnu.org; 27 Oct 2020 13:40:05 +0000 Received: from localhost ([127.0.0.1]:43335 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXPCm-0002Mv-NG for submit@debbugs.gnu.org; Tue, 27 Oct 2020 09:40:04 -0400 Received: from mail-wr1-f67.google.com ([209.85.221.67]:37618) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXPCl-0002MO-H9 for 44199@debbugs.gnu.org; Tue, 27 Oct 2020 09:40:04 -0400 Received: by mail-wr1-f67.google.com with SMTP id w1so1970640wrm.4 for <44199@debbugs.gnu.org>; Tue, 27 Oct 2020 06:40:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=7ATSSKkgwwi8b8VLzL2o+x6A5v140mvmDetcMnlV2vw=; b=U7SFQ9dpl6fHchawbPYuvHWfgswzY97c0hc6YzotNRw8B5EsYYkmT/AsRMnl9ooSV9 n//Ytuxafi+NcKXUKxQCJ40MO9hU7Y7IFF4Aicv8zWOkdzQe5UUMgLn9mCdIQ40XhPm+ YNzOjt+A8MDjLLXe8ZEEtbbxVdmkFIVB6NajiA1NOarfA28WWKvKRswtfu3uJd1TUnTK H6Oy4FhlrzKQXLFiizRpcR3sfETwl2LFHfW/36ZSoGkrg6r2zqPcZ33aJ59AUKtRQ8y8 MHmJXn+4CIVr1UkVbb2nxMjMrRA2aJx6i04v7QPDqP5XxnGovqcTUeE/FlG2IYQH3GJm kYiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=7ATSSKkgwwi8b8VLzL2o+x6A5v140mvmDetcMnlV2vw=; b=kn00kFL9Cp0+DQ6lmUTJAcLaL6CGz/B3SUgnjr1qoAHntXkJhwa1JtQsgGtk9GZR/x XJC6JlJFms6pX9LyZiUk1iIqR2xTKI56lZiJ7KAXxe5lJG6/AVFQUmkW2RuqddgpFdwt jPmIWUdXliq8hYfrf6wxjpG93iXu6tv6XwTeRMBDLt4B/BtBiYkwqQZAfYlZmNZkPAU8 5xAeoi18DW8NLVVJI7DnvLqtTsfj5RJsURP7G8suc9TGsQ3c8QbUY/x/HTCb8bpSOy5c cNe8oztA2u3ZNg9Ex3yvXbzet0VZ4REwwiJQjPdE9EhgXBI0GFErSv3Xitsu+tTUCIRG bLxg== X-Gm-Message-State: AOAM532GGgHTC+1gmF0hni4WOjjX+AD8+2Jjv+enGKyes5RnNhZj1T8w TO1a/Z9WSwHaDYWKGIOnq+cYeVtakrM= X-Google-Smtp-Source: ABdhPJxwNNZHa1hXhgi3Y9QA33O2Wp26oH4HFHIC4hex6rjgZQXtBhwDvjUwQP34gTKdF3efwG8OPQ== X-Received: by 2002:adf:82f7:: with SMTP id 110mr2897212wrc.261.1603805997514; Tue, 27 Oct 2020 06:39:57 -0700 (PDT) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id 30sm2067569wrs.84.2020.10.27.06.39.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Oct 2020 06:39:57 -0700 (PDT) From: zimoun To: Maxime Devos , 44199@debbugs.gnu.org Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's In-Reply-To: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> Date: Tue, 27 Oct 2020 14:39:54 +0100 Message-ID: <86blgn4wk5.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Dear, Thank you for the patch. My questions are totally naive since I do not know much about GNUnet. On Sat, 24 Oct 2020 at 21:47, Maxime Devos wrote: > This patch defines a `gnunet-fetch' method, allowing for downloading > files from GNUnet by their GNUnet chk-URI. > > This patch does not provide: > - a service configuration > - downloading substitutes from GNUnet > - fall-back to non-P2P (e.g. http://) or other P2P (e.g. ipfs://) > systems > - downloading directories over GNUnet This means it only works for archives as tarball, right? > - actual packages definitions using this method > > Some issues and questions: [...] > - Would it be possible somehow for url-fetch to support gnunet://fs/chk > URIs? That way we could fall-back unto non-P2P URLs, which would be > useful to bootstrap a P2P distribution from a non-P2P system. Who is the =E2=80=9Cwe=E2=80=9D? What do you mean by =E2=80=9Curl-fetch su= pports gnunet:// and fall-back unto non-P2P=E2=80=9D? Some recent discussions are about content-address and fallback. For example, roughly speaking =E2=80=99git-fetch=E2=80=99 tries upstream, then = the Guix build farms, then Software Heritage (swh). For Git repo, it works because the address from Guix side to SWH is straightforward. The 2 other VCS =E2=80=93hg and svn=E2=80=93 supported by SWH should be implement= ed soon=E2=80=A6 who knows! ;-) The story about archives as tarball is a bit more complicated. The main issue =E2=80=93as I understand it=E2=80=93 can be summarized as: Guix knows= the URL, the integrity checksum and only at package time the content of the tarball. Later in time, it is difficult to lookup because of this very address; and some are around: nar, swh-id, ipfs, gnunet, etc. Bridges to reassemble the content are currently discussed, e.g., Well, today the fallback of tarball archive to SWH is not reliable. What is your question? ;-) > Then publish the source tarball of the package to the GNUnet FS system: > $ guix environment --ad-hoc wget -- wget=20 > https://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz > $ gnunet-publish hello-2.10.tar.gz Naive question: are packages only available on GNUnet? All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 27 14:50:51 2020 Received: (at 44199) by debbugs.gnu.org; 27 Oct 2020 18:50:51 +0000 Received: from localhost ([127.0.0.1]:45866 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXU3X-0000GV-7O for submit@debbugs.gnu.org; Tue, 27 Oct 2020 14:50:51 -0400 Received: from rhcavuit03.kulnet.kuleuven.be ([134.58.240.136]:37561) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXU3S-0000GJ-W2 for 44199@debbugs.gnu.org; Tue, 27 Oct 2020 14:50:49 -0400 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (not cached, score=-50.999, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00, URIBL_BLOCKED 0.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: 406E5120334.AD994 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-2.cc.kuleuven.be (icts-p-smtps-2e.kulnet.kuleuven.be [134.58.240.34]) by rhcavuit03.kulnet.kuleuven.be (Postfix) with ESMTP id 406E5120334 for <44199@debbugs.gnu.org>; Tue, 27 Oct 2020 19:50:35 +0100 (CET) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-2.cc.kuleuven.be (Postfix) with ESMTPSA id 0720C200A1; Tue, 27 Oct 2020 19:50:35 +0100 (CET) Message-ID: Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: zimoun , 44199@debbugs.gnu.org Date: Tue, 27 Oct 2020 19:50:18 +0100 In-Reply-To: <86blgn4wk5.fsf@gmail.com> References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <86blgn4wk5.fsf@gmail.com> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-GeyBALaEfrdfiy9v0H53" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-GeyBALaEfrdfiy9v0H53 Content-Type: multipart/mixed; boundary="=-jIVA5jS/ZzYs+D3AM7cV" --=-jIVA5jS/ZzYs+D3AM7cV Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable zimoun schreef op di 27-10-2020 om 14:39 [+0100]: > Dear, >=20 > Thank you for the patch. My questions are totally naive since I do > not > know much about GNUnet. Conceptually, the GNUnet file-sharing system is not unlike IPFS, dat, or even torrents, although the details can vary wildly. I don't know much more about GNUnet either except for how to install it, and how to publish and search for files. > On Sat, 24 Oct 2020 at 21:47, Maxime Devos < > maxime.devos@student.kuleuven.be> wrote: > > This patch defines a `gnunet-fetch' method, allowing for > > downloading > > files from GNUnet by their GNUnet chk-URI. > >=20 > > This patch does not provide: > > - a service configuration > > - downloading substitutes from GNUnet > > - fall-back to non-P2P (e.g. http://) or other P2P (e.g. ipfs://) > > systems > > - downloading directories over GNUnet >=20 > This means it only works for archives as tarball, right? More-or-less, yes. I would assume a zip archive would work just fine as well, and in the rare case where the source code consists of a single file (e.g. search for the %boot-logo-patch in (gnu packages linux)), you don't need an archive at all. GNUnet has a special format for directories, presumably supporting deduplication (I haven't checked), conceptually not unlike ipfs and dat. It is probably not too much work to support this format, but I would like to keep the first patch simple. > > - Would it be possible somehow for url-fetch to support > > gnunet://fs/chk > > URIs? That way we could fall-back unto non-P2P URLs, which would > > be > > useful to bootstrap a P2P distribution from a non-P2P system. >=20 > Who is the =E2=80=9Cwe=E2=80=9D? What do you mean by =E2=80=9Curl-fetch = supports gnunet:// > and > fall-back unto non-P2P=E2=80=9D? Presuming this patch is accepted in some form, =E2=80=98we=E2=80=99 refers = to code in Guix responsible for downloading archives. I should have formulated that better. About the =E2=80=98fall-back unto non-P2P=E2=80=99: The ultimate goal is to not rely on any centralised servers at all (not even mirrors) (these are the non-P2P systems), and download all archives and substitutes from GNUnet FS (or IPFS or dat, but I prefer GNUnet). Of course, expecting everyone to stop using HTTP / ftp / etc. for source distribution and instead use GNUnet immediately is foolish, so ideally there would be a smooth transition path: 1. At first, maintainers would typically still publish the tarballs(*) on a centralised (possibly mirrored) servers, say . The package definition would use the url-fetch method. 2. If $MAINTAINER doesn't have access to or doesn't want to use any publicly-available distribution site (e.g. due to censorship, or for pseudonymity or simplicity), $MAINTAINER may instead use the gnunet-fetch method in the package definition. Alternatively, if the distribution site disappeared, Guix maintainers have the option to point to GNUnet. (Or refer to swh, I presume, but my goal is to decentralise.) 4. $MAINTAINER finds GNUnet convenient. However, GNUnet hasn't achieved world-domination yet, so $MAINTAINER still publishes tarballs on or similar. Actually, even if GNUnet *was* universally supported, a centralised server can still be useful: P2P file-sharing systems by design may have to throw away old data the local peer isn't interested in (due to limited disk space), and $MAINTAINER might stop publishing the source code over GNUnet. In such cases, a centralised server (and some mirrors) may be a useful back-up, although it would still be preferred to use a distributed P2P system (such as GNUnet or ipfs) when available to limit the cost of running the centralised server (and mirrors). (To limit the utilisation of the centralised server (and mirrors), sources downloaded from the server (and mirrors) should be published back into the GNUnet FS, but this can be as simple and crude as a cron job `gnunet-publish /gnu/store/*.tar.gz`.) My idea in this case is to specify the origin as: (origin (method url-fetch) (uri (list "gnunet://fs/chk/etcetera" (string-append "mirror://gnu/hello-" version ".tar.gz"))) etcetera) However, this patch defines gnunet-fetch as a separate method from url-fetch, url-fetch is left untouched, so url-fetch will just ignore the gnunet://fs/chk URI's. If I understand correctly, url-fetch is a special method, in that the downloading code of the Guix daemon is used, and not the code defined by the user. Nothing a `guix system reconfigure` cannot fix, but nevertheless rather inconvenient for testing. > Some recent discussions are about content-address and fallback. For > example, roughly speaking =E2=80=99git-fetch=E2=80=99 tries upstream, the= n the Guix > build farms, then Software Heritage (swh). For Git repo, it works > because the address from Guix side to SWH is straightforward. The 2 > other VCS =E2=80=93hg and svn=E2=80=93 supported by SWH should be impleme= nted soon=E2=80=A6 > who > knows! ;-) \me missed these discussions > The story about archives as tarball is a bit more complicated. The > main > issue =E2=80=93as I understand it=E2=80=93 can be summarized as: Guix kno= ws the URL, > the > integrity checksum and only at package time the content of the > tarball. > Later in time, it is difficult to lookup because of this very > address; > and some are around: nar, swh-id, ipfs, gnunet, etc. >=20 > Bridges to reassemble the content are currently discussed, e.g., >=20 > > >=20 > Well, today the fallback of tarball archive to SWH is not reliable. >=20 >=20 > What is your question? ;-) The question to which answer? I'm not quite which answer you're referring to, so some guesses: Q: How does Guix figure out the GNUnet URI from the Guix (or nar, I guess) hash? A: Not automatically. The gnunet-fetch method as defined in this patch needs to be passed the URI manually. However, an additional service for GNUnet can be written that uses the DHT to map Guix (or nar, or something else) hashes to corresponding GNUnet URI's. (I'm not volunteering (yet)) Q: What about automatically generated tarballs (e.g. from git repositories)? A: Not addressed by this patch. The intention is to be able to replace a http://*/*.tar.gz URL with a gnunet://fs/chk URI in package definitions; source code repositories aren't supported by this patch. (But perhaps a future patch could support this!) Q: Integration with bridges? A: Sounds nice, but I'm trying to keep things simple for the first patch! (And I haven't heard of disarchive before now.) > > Then publish the source tarball of the package to the GNUnet FS > > system: > > $ guix environment --ad-hoc wget -- wget=20 > > https://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz > > $ gnunet-publish hello-2.10.tar.gz >=20 > Naive question: are packages only available on GNUnet? Naive interpretations of this question, and answers: * Is the only thing available on GNUnet, *packages*? While experimenting with GNUnet, I have seen some images published on GNUnet. GNUnet also has other systems that the FS system, but they aren't relevant to this path. * Are packages *definitions* only available, on *GNUnet*? I'm getting my Guix package definitions from the git repository on Savannah, and I have never encountered any on the GNUnet FS system. * Is package *source code* only available, on *GNUnet*? If someone published the source code (e.g. as a tarball) on GNUnet with `gnunet-publish hello-2.10.tar.gz`, it is only published(*) on GNUnet, and not somewhere else as well. (*) I don't know exactly when one can be reasonably sure the file will *remain* available for some time when published, except for keeping the GNUnet daemon running continuously. However, in practice, $MAINTAINER will publish the source code somewhere else as well (e.g. or perhaps ipfs). This patch doesn't automatically publish source code of built or downloaded packages on GNUnet, although that seems a useful service=20 to run as a daemon. * If the gnunet-fetch method is used, will Guix try to get the source code from GNUnet, and nowhere else? Ignoring substitutes, yes. This is a limitation of defining gnunet-fetch separately from url-fetch. I believe this has been addressed earlier in my response e-mail. > All the best, > simon Likewise, maxime --=-jIVA5jS/ZzYs+D3AM7cV Content-Type: application/pgp-encrypted; name="Maxime Devos.pgp" Content-Disposition: attachment; filename="Maxime Devos.pgp" Content-Transfer-Encoding: base64 mDMEX4ch6BYJKwYBBAHaRw8BAQdANPb/d6MrGnGi5HyvODCkBUJPRjiFQcRU5V+mxvMaAa+0L01h eGltZSBEZXZvcyA8bWF4aW1lLmRldm9zQHN0dWRlbnQua3VsZXV2ZW4uYmU+iJAEExYIADgWIQTB 8z7iDFKP233XAR9J4+4iGRcl7gUCX4ch6AIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRBJ 4+4iGRcl7japAQC3opZ2KGWzWmRc/gIWSu0AAcfMwyinFEEPa/QhUt2CogD/e2RdF4CYAgaRHJJm Z9WU7piKbLZ7llB4LzgezVDHggy4OARfhyHoEgorBgEEAZdVAQUBAQdATpcyFoic4KGzBev3KsC2 i5O4yHBUmfvnNJPXAjU+mF8DAQgHiHgEGBYIACAWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX4ch 6AIbDAAKCRBJ4+4iGRcl7jK9AQCXPHJeTxr1ZlbkkFSo5XjZeAytf1wGjwGD3t+ABH2STwD/SKiw kIR/xXiWpx6gT/IDXRjSNqp/EZ5y1X0SYFI2dQQ= --=-jIVA5jS/ZzYs+D3AM7cV-- --=-GeyBALaEfrdfiy9v0H53 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX5hr6iEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe6rXwD/ZvuV2F0+CXOR aeeehho3jMT8oxE5ZmiF1oFILu6Qv7kA/1GCpvV0HKO7t3z++u7liNcCm/Ui7PBY 0DCP6YjQufYP =R3pG -----END PGP SIGNATURE----- --=-GeyBALaEfrdfiy9v0H53-- From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 31 20:06:31 2020 Received: (at 44199) by debbugs.gnu.org; 1 Nov 2020 00:06:31 +0000 Received: from localhost ([127.0.0.1]:34927 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kZ0tC-0004y1-Qk for submit@debbugs.gnu.org; Sat, 31 Oct 2020 20:06:31 -0400 Received: from rhcavuit02.kulnet.kuleuven.be ([134.58.240.130]:50581) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kZ0tA-0004xs-RJ for 44199@debbugs.gnu.org; Sat, 31 Oct 2020 20:06:30 -0400 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (cached, score=-50.999, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00, URIBL_BLOCKED 0.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: AEEDA120334.AD6B1 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-2.cc.kuleuven.be (icts-p-smtps-2e.kulnet.kuleuven.be [134.58.240.34]) by rhcavuit02.kulnet.kuleuven.be (Postfix) with ESMTP id AEEDA120334 for <44199@debbugs.gnu.org>; Sun, 1 Nov 2020 01:06:18 +0100 (CET) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-2.cc.kuleuven.be (Postfix) with ESMTPSA id 71874200A1; Sun, 1 Nov 2020 01:06:18 +0100 (CET) Message-ID: <05677842bc60336461f8fe77ebd3526b2b23efb9.camel@student.kuleuven.be> Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: zimoun , 44199@debbugs.gnu.org Date: Sun, 01 Nov 2020 01:05:53 +0100 In-Reply-To: <86blgn4wk5.fsf@gmail.com> References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <86blgn4wk5.fsf@gmail.com> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-vSR/W3DbdPOXXxy8xdKE" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44199 Cc: Timothy Sample , gnunet-developers@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-vSR/W3DbdPOXXxy8xdKE Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable [CC'd to Timothy Sample because of discussion of defining a new format for disarchive, and to gnunet-developers because of obvious reasons] A small status update! zimoun schreef op di 27-10-2020 om 14:39 [+0100]: > [...] >=20 > The story about archives as tarball is a bit more complicated. The > main > issue =E2=80=93as I understand it=E2=80=93 can be summarized as: Guix kno= ws the URL, > the > integrity checksum and only at package time the content of the > tarball. > Later in time, it is difficult to lookup because of this very > address; > and some are around: nar, swh-id, ipfs, gnunet, etc. >=20 > Bridges to reassemble the content are currently discussed, e.g., >=20 > > >=20 > Well, today the fallback of tarball archive to SWH is not reliable. >=20 >=20 > What is your question? ;-) I looked a bit into the GNUnet FS code and disarchive discussions. The part about tarballs seemed particularily relevant, as well as some older discussion on preserving the executable bit when using IPFS. Some issues with using GNUnet's directory format in GNUnet for Guix substitutes to address: * directory entries are not placed in any particular order. Solution: sort by file-name * there is no executable bit. Solution: define a new metadata property (*). This should only take a small patch to libextractor. (*) Not sure about the correct terminology * GNUnet sometimes inlines small files in directories, but strictly speaking when to do so is left up to the implementation. Solution: pick a fixed reference implementation. * By default, when publishing, gnunet-publish uses libextractor to figure out some meta-data (e.g. title, mime-type, album name), which may return different meta-data depending on the implementation. Solution: disable the use of libextractor, at least when GNUnet is used by Guix. I'm currently porting the directory creation code of GNUnet to Scheme (but not any other GNUnet code), to be used by Guix (for publishing substitutes) and disarchive (for reconstructing GNUnet directories). After addressing these issues, I believe I will end up with a fairly well-defined archive format. --=-vSR/W3DbdPOXXxy8xdKE Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX5374iEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe6L+wEAvGIuqyOhZ8aM oiGQhaGINoV46XAmJ4JDx4vVpxON4zgBAK1wrsyGrBu5TmQbXdSPW9IdrmvSOR6P S2XBUHs04mcL =LVUJ -----END PGP SIGNATURE----- --=-vSR/W3DbdPOXXxy8xdKE-- From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 15 16:13:49 2020 Received: (at 44199) by debbugs.gnu.org; 15 Nov 2020 21:13:49 +0000 Received: from localhost ([127.0.0.1]:54347 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kePLJ-0005yT-ID for submit@debbugs.gnu.org; Sun, 15 Nov 2020 16:13:49 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41826) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kePLH-0005yF-HI for 44199@debbugs.gnu.org; Sun, 15 Nov 2020 16:13:48 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:48308) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kePLA-00026a-0n; Sun, 15 Nov 2020 16:13:40 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=45264 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kePL9-0001V4-HF; Sun, 15 Nov 2020 16:13:39 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxime Devos Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> Date: Sun, 15 Nov 2020 22:13:37 +0100 In-Reply-To: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> (Maxime Devos's message of "Sat, 24 Oct 2020 21:47:17 +0200") Message-ID: <87mtzi5nni.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44199 Cc: 44199@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi Maxime, Maxime Devos skribis: > This patch defines a `gnunet-fetch' method, allowing for downloading > files from GNUnet by their GNUnet chk-URI. While I think this is a laudable goal, I=E2=80=99m reluctant to including G= NUnet support just yet because, as stated in recent release announcements, GNUnet is still in flux and not considered =E2=80=9Cproduction ready=E2=80= =9D. So I think we should keep it around and revisit this issue when GNUnet is considered =E2=80=9Cstable=E2=80=9D. WDYT? Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 15 19:45:37 2020 Received: (at 44199) by debbugs.gnu.org; 16 Nov 2020 00:45:37 +0000 Received: from localhost ([127.0.0.1]:54618 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keSeH-00051J-0C for submit@debbugs.gnu.org; Sun, 15 Nov 2020 19:45:37 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:44382) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keSeF-000517-Dg for 44199@debbugs.gnu.org; Sun, 15 Nov 2020 19:45:36 -0500 Received: by mail-wr1-f65.google.com with SMTP id c17so16889174wrc.11 for <44199@debbugs.gnu.org>; Sun, 15 Nov 2020 16:45:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=LoKakhzg2QM8dcK1LY4UtFDVXdgB20ODs1Gj24Mg3w8=; b=NE1B0+6S3fq0n/U4BsWeHd/pILqxlhz/GCTiZomJlWaS2ANf73ixeaY+G0Kvuj04Nl MvqtgI3TStwlJ6bK6HE5Gm1eWFWeK8atZszPWgcCVW9pIg1UJ1BgxHKene0GnmE4OEjD 40rr9KuFD6BHaaQ79RlaoSyB8sOv9Uw1YtWvT/jw6aQs8yx0M64D6iWjycPLF6oKVtDv PztcU8zfRkwbL/z+DmCXdN8Xnp3AQybYa1vB4JltWywPGOE11x5rPiyeErsXuyioPk6d tFGhOBmJjPdcCpw8TlD1/8/pOPvHhud4wd6AtDpwD5SYlIGG2CKJrdxHYyVCaeR6uO6F wmbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=LoKakhzg2QM8dcK1LY4UtFDVXdgB20ODs1Gj24Mg3w8=; b=OYeasC7m+48+M094I6Wy2pJ+aldsUNW3Q88J86WWArPad2wHqKkwJuOA6T5qAnAg9q yj4yOB/yzxgUuO5RuvRAicI3B1rYzkn2O5W1y0DUKbwF/U4mcQZ3D1QZz3970ILARp4S jyhSOMPuh8hkzKeDiOO3wiAZ4EJU9rBFiqYNFQDYGgaPVW/5wIrdU0+NsiiRNOQxkxRr kQczOvyFm9HtoIdY9vaLJT/AE1KyT2itDyt7y8ff62tpxId4cFe2be1jvFue+szaBjtL d/xDO5q4TtoY7vPibJ7ig4UZEV4wo+nG/fAbpUBu9aDL+p/HTF9m1tuWZWLncQr5+qHe 9R+Q== X-Gm-Message-State: AOAM532Ufg6suM3P6NRdfGVW2oJqN8GU2t1cew4nLXesGBmk4To3Oe0c MOJb2YMVNSkPFe01FsIXax8OxFviNOa+2Q== X-Google-Smtp-Source: ABdhPJxwfdhu8KHCNHBK8MVJof2qcDaKYLuSsts8pfABHNQ6ltdZgpKlKQBLbL8zVWyR8dc2YJyU7Q== X-Received: by 2002:adf:ee51:: with SMTP id w17mr15924559wro.373.1605487529249; Sun, 15 Nov 2020 16:45:29 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id u6sm17589716wmj.40.2020.11.15.16.45.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Nov 2020 16:45:28 -0800 (PST) From: zimoun To: Maxime Devos , 44199@debbugs.gnu.org Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's In-Reply-To: References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <86blgn4wk5.fsf@gmail.com> Date: Mon, 16 Nov 2020 01:35:54 +0100 Message-ID: <86361arvdh.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Maxim, Thanks for your detailed answer. You might be interested by the coming oneline Guix Days conference on Sun. 22nd 2020. A session is specifically dedicated to a related topic: How to distribute P2P? Please browse this week the blog guix.gnu.org for the details. On Tue, 27 Oct 2020 at 19:50, Maxime Devos wrote: > Q: How does Guix figure out the GNUnet URI from the Guix (or nar, I > guess) hash? > A: Not automatically. The gnunet-fetch method as defined in this > patch needs to be passed the URI manually. However, an additional > service for GNUnet can be written that uses the DHT to map Guix > (or nar, or something else) hashes to corresponding GNUnet URI's. >From my understanding, this is a show stopper. It has to be solved first going further, IMHO. It is not possible to write manually the URI for all the packages. And as perhaps you read with the project =E2=80=99disassemble=E2=80=99, it is not straightforward. > Q: What about automatically generated tarballs (e.g. from git > repositories)? > A: Not addressed by this patch. The intention is to be able to replace > a http://*/*.tar.gz URL with a gnunet://fs/chk URI in package > definitions; source code repositories aren't supported by this > patch. (But perhaps a future patch could support this!) I think this is the main issue: it is not affordable to replace for some packages the current http:// by gnunet://. Especially when GNUnet is not =E2=80=9Cstable=E2=80=9C. > * Is package *source code* only available, on *GNUnet*? > > If someone published the source code (e.g. as a tarball) on GNUnet > with `gnunet-publish hello-2.10.tar.gz`, it is only published(*) on > GNUnet, and not somewhere else as well. > > (*) I don't know exactly when one can be reasonably sure the file > will *remain* available for some time when published, except for > keeping the GNUnet daemon running continuously. > > However, in practice, $MAINTAINER will publish the source code > somewhere else as well (e.g. or perhaps ipfs). > This patch doesn't automatically publish source code of built or > downloaded packages on GNUnet, although that seems a useful service=20 > to run as a daemon. Therefore the corollary question is: how many tarballs currently used as source by Guix are also available on GNUnet? Thank you for your interest. And again I invite you to join the discussion about P2P and Guix this Sunday 22nd. Read on the Guix blog. :-) All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 18 14:15:02 2020 Received: (at 44199) by debbugs.gnu.org; 18 Nov 2020 19:15:02 +0000 Received: from localhost ([127.0.0.1]:36511 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfSuz-0000M3-W6 for submit@debbugs.gnu.org; Wed, 18 Nov 2020 14:15:02 -0500 Received: from rhcavuit03.kulnet.kuleuven.be ([134.58.240.136]:58266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfSux-0000LZ-A0 for 44199@debbugs.gnu.org; Wed, 18 Nov 2020 14:15:01 -0500 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (not cached, score=-51, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: 8556412032F.AD9B3 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-2.cc.kuleuven.be (icts-p-smtps-2e.kulnet.kuleuven.be [134.58.240.34]) by rhcavuit03.kulnet.kuleuven.be (Postfix) with ESMTP id 8556412032F for <44199@debbugs.gnu.org>; Wed, 18 Nov 2020 20:14:51 +0100 (CET) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-2.cc.kuleuven.be (Postfix) with ESMTPSA id 5E1B0200A1; Wed, 18 Nov 2020 20:14:51 +0100 (CET) Message-ID: Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: Ludovic =?ISO-8859-1?Q?Court=E8s?= Date: Wed, 18 Nov 2020 20:14:23 +0100 In-Reply-To: <87mtzi5nni.fsf@gnu.org> References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <87mtzi5nni.fsf@gnu.org> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-a4Xo4+WVGefp4ZkbzHI5" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44199 Cc: 44199@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-a4Xo4+WVGefp4ZkbzHI5 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Ludovic, Ludovic Court=C3=A8s schreef op zo 15-11-2020 om 22:13 [+0100]: > [snip] > While I think this is a laudable goal, I=E2=80=99m reluctant to including > GNUnet > support just yet because, as stated in recent release announcements, > GNUnet is still in flux and not considered =E2=80=9Cproduction ready=E2= =80=9D. >=20 > So I think we should keep it around and revisit this issue when > GNUnet > is considered =E2=80=9Cstable=E2=80=9D. WDYT? Sounds reasonable to me. There are also a lot of missing parts: a service definition for Guix System, findings substitutes, finding sources by hash (the one Guix uses, not the GNUnet hash) ..., so it isn't like my rudimentary patch was usable on large scale anyway. Greetings, Maxime --=-a4Xo4+WVGefp4ZkbzHI5 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX7VyjyEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe4VtgEAi0OogAM9vn2B wchWM3/HcMj+9mpmBapUxSRHi61oYCsA/RzTNRmGwLxZ8ouB561mU8YWka9lFVuy tQg5JEtxMfEO =dUfT -----END PGP SIGNATURE----- --=-a4Xo4+WVGefp4ZkbzHI5-- From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 18 15:28:23 2020 Received: (at 44199) by debbugs.gnu.org; 18 Nov 2020 20:28:23 +0000 Received: from localhost ([127.0.0.1]:36591 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfU3z-00029K-GG for submit@debbugs.gnu.org; Wed, 18 Nov 2020 15:28:23 -0500 Received: from rhcavuit03.kulnet.kuleuven.be ([134.58.240.136]:33126) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfU3w-000299-DP for 44199@debbugs.gnu.org; Wed, 18 Nov 2020 15:28:22 -0500 X-KULeuven-Envelope-From: maxime.devos@student.kuleuven.be X-Spam-Status: not spam, SpamAssassin (not cached, score=-50.999, required 5, autolearn=disabled, ALL_TRUSTED -1.00, LOCAL_SMTPS -50.00, URIBL_BLOCKED 0.00) X-KULeuven-Scanned: Found to be clean X-KULeuven-ID: DB2AB120003.AC990 X-KULeuven-Information: Katholieke Universiteit Leuven Received: from icts-p-smtps-1.cc.kuleuven.be (icts-p-smtps-1e.kulnet.kuleuven.be [134.58.240.33]) by rhcavuit03.kulnet.kuleuven.be (Postfix) with ESMTP id DB2AB120003 for <44199@debbugs.gnu.org>; Wed, 18 Nov 2020 21:28:13 +0100 (CET) Received: from butterfly.local (178-119-10-153.access.telenet.be [178.119.10.153]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by icts-p-smtps-1.cc.kuleuven.be (Postfix) with ESMTPSA id A6FD940B2; Wed, 18 Nov 2020 21:28:13 +0100 (CET) Message-ID: Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's X-Kuleuven: This mail passed the K.U.Leuven mailcluster From: Maxime Devos To: zimoun , 44199@debbugs.gnu.org Date: Wed, 18 Nov 2020 21:28:05 +0100 In-Reply-To: <86361arvdh.fsf@gmail.com> References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <86blgn4wk5.fsf@gmail.com> <86361arvdh.fsf@gmail.com> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-h8aFIE3Vr7uJXLQeEsxq" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-h8aFIE3Vr7uJXLQeEsxq Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, (btw it's Maxim*e*, not Maxim. The =E2=80=98e=E2=80=99 isn't pronounced but= it's still written.) I'll try to address the various issues in separate e-mails. zimoun schreef op ma 16-11-2020 om 01:35 [+0100 > [snip] > From my understanding, this is a show stopper. It has to be solved first going further, IMHO. It is not possible to write manually the URI for all the packages. And as perhaps you read with the project =E2=80=99disassemble=E2=80=99, it is not straightforward. I agree! I see three straightforward answers to this. a) Fancy Write a GNUnet service using the DHT to map the hashes used in origin specifications (*) to URI's for the FS system. To let the local contribution to the DHT survive peer restarts, maintain a database (e.g. SQlite) of (Guix hash -> GNUnet hash) (^), that is expanded with each successful source (or binary) substitution or build. (Alternatively, as the DHT isn't anonymous, place hash -> GNUnet hash references into some well-known name space. Then hash lookup + FS should automatically be anonymous when desired.) Possible issues: time out behaviour, the DHT is not anonymous. Annoyance: probably requires extending the build daemon. Perhaps try regular downloads (e.g. via HTTP/S, ftp, ...) in parallel with the GNUnet download after a configurable delay? Perhaps use a well-known GNUnet FS namespace instead of the DHT for anonymous downloads? (*) Also usable for package outputs, if the hash of the output is used and not the hash of the outputs=20 (^) In case the database is full, delete some old entries b) Simple, slow introduction (no additional GNUnet services required) Extend (origin ...) with an optional gnunet-hash field. Adjust =E2=80=98guix download=E2=80=99, =E2=80=98guix refresh=E2=80=99 and = =E2=80=98guix import=E2=80=99 to emit the gnunet-hash (%) field. Plumb this field to the guix daemon somehow. Same approach is possible for IPFS. As packages are updated and new packages are defined, given sufficient time, there will be more packages with a gnunet-hash field than not. (%) Computing the gnunet-hash of a directory doesn't require a full-fledged GNUnet installation. My scheme-gnunet repository is not very far from the point where it can convert file trees + libextractor metadata into bytevectors, without depending on C gnunet. A TODO: different zlib's would produce different bytevectors --> different GNUnet hash --> perhaps always use a single version. A TODO (for nix archives on GNUnet): define EXTRACTOR_METATYPE_EXECUTABLE (or mimetype: application/x-executable). Perhaps use mimetype: x-inode/symlink (or something like that) as well? Repository URL: https://notabug.org/mdevos/scheme-gnunet c) Not scalable, but may reduce network traffic to ci.guix.gnu.org & co Like in a) keep a database of known (Guix hash -> GNUnet FS URI). Perhaps make this available through a web interface or git repository ... wait, this sounds familiar ... this seems to fit well into the =E2=80=98disarchive=E2=80=99 project! Greetings, Maxime --=-h8aFIE3Vr7uJXLQeEsxq Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iJcEABYIAD8WIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX7WD1SEcbWF4aW1lLmRl dm9zQHN0dWRlbnQua3VsZXV2ZW4uYmUACgkQSePuIhkXJe7bqAEAoDmT3o4g7bA2 KlNfK/0CvAylKeBL6s6A4G5/RSSuWHMBAJmOGs1KyOeYo3vigBmp8w4bwy5TnFj0 7/Q7srOIKCkF =qgHe -----END PGP SIGNATURE----- --=-h8aFIE3Vr7uJXLQeEsxq-- From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 18 17:12:56 2020 Received: (at control) by debbugs.gnu.org; 18 Nov 2020 22:12:56 +0000 Received: from localhost ([127.0.0.1]:36847 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfVhA-00070A-AI for submit@debbugs.gnu.org; Wed, 18 Nov 2020 17:12:56 -0500 Received: from eggs.gnu.org ([209.51.188.92]:50428) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfVh9-0006zv-Nc for control@debbugs.gnu.org; Wed, 18 Nov 2020 17:12:55 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35692) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kfVh4-0007TZ-I1 for control@debbugs.gnu.org; Wed, 18 Nov 2020 17:12:50 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=35522 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kfVh3-00084T-TC for control@debbugs.gnu.org; Wed, 18 Nov 2020 17:12:50 -0500 Date: Wed, 18 Nov 2020 23:12:48 +0100 Message-Id: <87wnyiiaan.fsf@gnu.org> To: control@debbugs.gnu.org From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: control message for bug #44199 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) tags 44199 wontfix close 44199 quit From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 18 17:41:46 2020 Received: (at 44199) by debbugs.gnu.org; 18 Nov 2020 22:41:46 +0000 Received: from localhost ([127.0.0.1]:37002 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfW93-0001VC-UI for submit@debbugs.gnu.org; Wed, 18 Nov 2020 17:41:46 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:35691) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfW91-0001Uw-Ng for 44199@debbugs.gnu.org; Wed, 18 Nov 2020 17:41:44 -0500 Received: by mail-wr1-f67.google.com with SMTP id k2so4163774wrx.2 for <44199@debbugs.gnu.org>; Wed, 18 Nov 2020 14:41:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=Us67E2HTSELpz0Mhhvt8JO5lwf1/Lsxt/8+MIqseSF4=; b=F2i1xC7wjSGhwI42F7LE0sp8CuSnTqbWFaFaaaCzC3XF2taWonmJGcbf8dHEiuRzvb 6w/jHKS+6t1tilbvS1U74447EQCXJAxmEmBr/xxO1iB3zlBss/TRcWFIB5Hk1Bpq1ni4 KQv1w/u0xg/ASRKYPPVosxIHqNushxm9rH40gXUN+5efWItY5kay2wKX56aZ7d+G6aWG mVkOCsu1+AJPlYlQzwJKipDFTkZil5cqubahPf792unyregR9wKycQ/pT+ajrS0wkGHA hfQlkT0R6t7ngDAfYDI0c968qiV0nW286Pd5GI/SM5FFRZG0u/JagPX5wUsd+OU3Ap12 BEoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=Us67E2HTSELpz0Mhhvt8JO5lwf1/Lsxt/8+MIqseSF4=; b=tZDuDXZ/pKSQaeAzT4eJoltoLCtBY6L+68KelA+BqhZEQCck8a1dxh4lzc9oSxk/j9 s/C/Zht7eOdTnJzpyu/sFsbfpOfjbZHSIxBZue6CZseRjTTSVszSAG2bpOoZqXs51pd6 NHrm4iRlScEmwUlx6eLjsLCtJlzmtpEVgOS7unYk2p+xOOT4o+IxKkcseK9Y7cAAn/Bw RSbl0ZKi6XTU52cwktE6Qhvtfvgg130qS7x89ucsEhAVNT4Sadq5djU9dx7mgA/YxhVK 6Pe8z/WzG1ZtatVwmJyDmBY6jdYvzJrNWoqWPlO54jjHbVmK6znKFN5jJV92I9+HzDdf K3YA== X-Gm-Message-State: AOAM531ToLqsl7qX/BGErrQbB1K4xCM38M+wK+TcLilCKIbDr8d9QUmN nr6Fx8wU+Vd4tpIFVRYDzpDnEdswNw5PjQ== X-Google-Smtp-Source: ABdhPJzy8dKjMOD5lrliuRoXMwDRuUTl+jZ1Un5zbUE2LIWUah9r26gxXAcYuNhVJsqd08F3kNtlLQ== X-Received: by 2002:adf:8366:: with SMTP id 93mr6913193wrd.321.1605739297645; Wed, 18 Nov 2020 14:41:37 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id v19sm36397193wrf.40.2020.11.18.14.41.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Nov 2020 14:41:37 -0800 (PST) From: zimoun To: Maxime Devos , 44199@debbugs.gnu.org Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's In-Reply-To: References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <86blgn4wk5.fsf@gmail.com> <86361arvdh.fsf@gmail.com> Date: Wed, 18 Nov 2020 23:40:13 +0100 Message-ID: <86o8ju2ss2.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44199 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Dear, On Wed, 18 Nov 2020 at 21:28, Maxime Devos wrote: > (btw it's Maxim*e*, not Maxim. The =E2=80=98e=E2=80=99 isn't pronounced b= ut it's still > written.) Sorry. >> From my understanding, this is a show stopper. It has to be solved > first going further, IMHO. It is not possible to write manually the > URI for all the packages. And as perhaps you read with the project > =E2=80=99disassemble=E2=80=99, it is not straightforward. > > I agree! I see three straightforward answers to this. Thanks for sharing your views. > a) Fancy > > Write a GNUnet service using the DHT to map the hashes used in origin > specifications (*) to URI's for the FS system. To let the local > contribution to the DHT survive peer restarts, maintain a database > (e.g. SQlite) of (Guix hash -> GNUnet hash) (^), that is expanded with > each successful source (or binary) substitution or build. > > (Alternatively, as the DHT isn't anonymous, > place hash -> GNUnet hash references into some well-known name space. > Then hash lookup + FS should automatically be anonymous when desired.) Yeah, for sure but both are a piece of tough work though. > b) Simple, slow introduction (no additional GNUnet services required) > > Extend (origin ...) with an optional gnunet-hash field. > Adjust =E2=80=98guix download=E2=80=99, =E2=80=98guix refresh=E2=80=99 an= d =E2=80=98guix import=E2=80=99 > to emit the gnunet-hash (%) field. Plumb this field to the guix daemon > somehow. Same approach is possible for IPFS. Guix is not doing that for Software Heritage id for example (that=E2=80=99s= why dissamble exists :-)). So I am really doubtful that Guix will do it for the more-experimental GNUnet. However, if you want to implement proof-of-concept, you can use the field =E2=80=99properties=E2=80=99 which is more or less free. I mean, you= can add whatever you want in. > c) Not scalable, but may reduce network traffic to ci.guix.gnu.org & co > > Like in a) keep a database of known (Guix hash -> GNUnet FS URI). > Perhaps make this available through a web interface or git repository > ... wait, this sounds familiar ... this seems to fit well into the > =E2=80=98disarchive=E2=80=99 project! The most traffic issue is about substitutes, not really about sources. And about substitutes, this patch #33899 [1] implements the support of IPFS. Once it is ready, the pieces will be there somehow, so adding GNUnet to distribute susbtitutes maybe would be an option. Please join the conference [2] on this Sunday, a session to discuss all this will be dedicated. 1: 2: All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 18 17:52:44 2020 Received: (at 44199-done) by debbugs.gnu.org; 18 Nov 2020 22:52:44 +0000 Received: from localhost ([127.0.0.1]:37030 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfWJg-0001mZ-Hr for submit@debbugs.gnu.org; Wed, 18 Nov 2020 17:52:44 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:54780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kfWJf-0001mL-B4 for 44199-done@debbugs.gnu.org; Wed, 18 Nov 2020 17:52:43 -0500 Received: by mail-wm1-f68.google.com with SMTP id d142so4995180wmd.4 for <44199-done@debbugs.gnu.org>; Wed, 18 Nov 2020 14:52:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-transfer-encoding; bh=BMViijnhI5eNUaCbcg03zMNx2Glh9RG+XTYzIMxi2/8=; b=ofg5CJzz7tjRr5/jOfX7o07TAIa0gFGf27kQzdpo2dXGezKHhd8dgQyEBu/dn4ftqQ fZUWwNpVImDnM0h1VN49c6/LuFSfnS+nRFU2lzsqmj3wJvFtzR4whADAGaV4wfGvuwfQ sOxld5RketbMzUE4zw3OSaW+8vVxsMPjwTVvDTpa5mpZ4kJy36V69SZ3DniHQXkge1LG FTmchXfHyEDgsg/scxJXAWwPBXu4yJyDQBS2WyiT4O2De5a340qTKgg4bv4stn0JttKW 8dVakbDu5uHsP46K1Nw4JyXFeEGHANvpfjXtZpfZ54FEGr8IXUxjRLv5vn11JIzvajDJ XVYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=BMViijnhI5eNUaCbcg03zMNx2Glh9RG+XTYzIMxi2/8=; b=tImUZ6h1dm6MylfElZ+yvFo5Ho370vFJh4Qcx+bz1aKZn2Ne+/7FFveVObko8S90cm dpRlgVrZcghbiYE/khe1hobxr7H7pINoW8rcYtswN90WV8c3Y0hRJayaPo2pYiyplHxW 4ErzKgUdfLO9ZIdABEZCg7VZaAfvGj0S2OWgqXNkpze4KoISUhoWjObo+SFAmH/MgqMu BfQYg/LOic2aijAqw86o00epWOi9QmAlHCvqfZgFJSih0bMY5F1n5BeOjXLEYPvOpghK I69dubUxtouLg8ZWxitdGnBPG58Fny5V9JGDtBbBA88xE2nDf8GU0JwrWOkxE9yltuK6 Xwyg== X-Gm-Message-State: AOAM530hxAkGwkOg2iZ2PIV6m5LF1uNfy52fMD2QREOdcD+8rSmB2oUa N59IR40vDI0X+FONc5XUz4/G3sm4F2fF5w== X-Google-Smtp-Source: ABdhPJxKLEPYMwm4jYPfNy45qInz6kE51+fK93zS/6DI6ztGA5AX484PF2a1N+UYAjqJWnqEOekf0g== X-Received: by 2002:a7b:c11a:: with SMTP id w26mr1430504wmi.78.1605739957278; Wed, 18 Nov 2020 14:52:37 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id b4sm5975733wmc.1.2020.11.18.14.52.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Nov 2020 14:52:36 -0800 (PST) From: zimoun To: Maxime Devos , Ludovic =?utf-8?Q?Cou?= =?utf-8?Q?rt=C3=A8s?= Subject: Re: [bug#44199] [PATCH 0/1] An origin method for GNUnet FS URI's In-Reply-To: References: <5c72bcb9c86934deda97d952eb5cd459e615b313.camel@student.kuleuven.be> <87mtzi5nni.fsf@gnu.org> Date: Wed, 18 Nov 2020 23:42:35 +0100 Message-ID: <86lfey2so4.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44199-done Cc: 44199-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Maxime, On Wed, 18 Nov 2020 at 20:14, Maxime Devos wrote: > Ludovic Court=C3=A8s schreef op zo 15-11-2020 om 22:13 [+0100]: >> [snip] >> While I think this is a laudable goal, I=E2=80=99m reluctant to including >> GNUnet >> support just yet because, as stated in recent release announcements, >> GNUnet is still in flux and not considered =E2=80=9Cproduction ready=E2= =80=9D. >>=20 >> So I think we should keep it around and revisit this issue when >> GNUnet >> is considered =E2=80=9Cstable=E2=80=9D. WDYT? > > Sounds reasonable to me. There are also a lot of missing parts: a > service definition for Guix System, findings substitutes, finding > sources by hash (the one Guix uses, not the GNUnet hash) ..., so it > isn't like my rudimentary patch was usable on large scale anyway. Therefore, I am closing. Feel free to reopen once GNUnet is considered as (more) =E2=80=9Cstable=E2=80=9D. Thank you for your contribution. All the best, simon From unknown Sun Aug 17 22:01:28 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 17 Dec 2020 12:24:11 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 27 08:04:34 2021 Received: (at control) by debbugs.gnu.org; 27 Jan 2021 13:04:35 +0000 Received: from localhost ([127.0.0.1]:44028 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4kUs-0001Zh-QK for submit@debbugs.gnu.org; Wed, 27 Jan 2021 08:04:34 -0500 Received: from andre.telenet-ops.be ([195.130.132.53]:39514) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4kUq-0001ZW-4z for control@debbugs.gnu.org; Wed, 27 Jan 2021 08:04:33 -0500 Received: from ptr-bvsjgyjmffd7q9timvx.18120a2.ip6.access.telenet.be ([IPv6:2a02:1811:8c09:9d00:aaf1:9810:a0b8:a55d]) by andre.telenet-ops.be with bizsmtp id Mp4V2400d0mfAB401p4Wux; Wed, 27 Jan 2021 14:04:30 +0100 Message-ID: <627784a420c349acd9e6b7e279bcd9ac77112489.camel@telenet.be> Subject: Subject From: Maxime Devos To: control@debbugs.gnu.org Date: Wed, 27 Jan 2021 14:04:29 +0100 Content-Type: text/plain User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1611752670; bh=XgrMIsJFC/0MjqCtGBhR48V4lCTG04Tn1V2XOb/e/xU=; h=Subject:From:To:Date; b=qWGWvibCArWHpYU6DJOQSHt1DbJpinIXZmZko4jLyHBCD6Kji3A+fXxJEk2zWqLXs 9lTveloiomBQycWg7xnexWNIDeIX1WC74Tud+TL8ISSYr51wp0EJ5ofqxTe8VkKOFr bbysjb34K9MclCrEYF4yfTw+wMmSrA/pM4g+Ws4RCVX3txtpXSc6Fx/wPA02KTzmxI AdwAPeBazwSBGIx+EWDoSnsJ6ZE30d3ZaYdqWU+MHQof2/ofK2RvsDtjq3r3mYuelz nTjgIU2jsfueOZlP5y/7N99nUFNt/IiDHMOPFPBDrftKimIXGI0HfQchFrA5czVhON LnIkj+28lYT3A== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) unarchive 44199 From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 27 08:07:07 2021 Received: (at 44199) by debbugs.gnu.org; 27 Jan 2021 13:07:07 +0000 Received: from localhost ([127.0.0.1]:44034 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4kXL-0001e5-4q for submit@debbugs.gnu.org; Wed, 27 Jan 2021 08:07:07 -0500 Resent-Date: Wed, 27 Jan 2021 08:07:07 -0500 Resent-Message-Id: Received: from michel.telenet-ops.be ([195.130.137.88]:35238) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4kXI-0001dw-O6 for 44199@debbugs.gnu.org; Wed, 27 Jan 2021 08:07:05 -0500 Received: from ptr-bvsjgyjmffd7q9timvx.18120a2.ip6.access.telenet.be ([IPv6:2a02:1811:8c09:9d00:aaf1:9810:a0b8:a55d]) by michel.telenet-ops.be with bizsmtp id Mp722400U0mfAB406p73vo; Wed, 27 Jan 2021 14:07:03 +0100 Message-ID: <328647d66cf760388a26f2bbfaf3080801ca9ad0.camel@telenet.be> From: Maxime Devos Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-Qx1Ey2gZRVchSYxkCiwR" MIME-Version: 1.0 Subject: Re: Info: Rehash Project Resent-From: Maxime Devos Resent-Cc: 44199@debbugs.gnu.org Date: Wed, 27 Jan 2021 14:07:02 +0100 Content-Transfer-Encoding: User-Agent: Evolution 3.34.2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1611752823; bh=pf5rJCI6uq4CsyCpkhj8gfPn7bYjWgMhudU7/l/Glns=; h=From:Cc:Subject:Resent-From:Resent-Cc:Date; b=eCD7uVwYoCD+XvJ1POxV7ERyNvE+w7DIDhhyqTKnfb8DvZsaQWpJBlIqeTBORKc/S KHsBUiMcA5Is+rCL2zq0l8N8A7Q0HLn7J3q+f2CXgnSuw/ZMcZe4Rkg3JOUfJCTE8v uFkeqfOU/3u0TImEqZIVqWTPR3DRvEY5HCTRJfRlLv6/z5c1b0crahcrFtq2fljMd7 vr4HJ0CzP6Z6f/57CcoDqs13tbM3tGQVmMAURhemx/RxUeZDdJLfPnn9tFed4MzAyY /pcndOV29XxQEJfBpQ/1aBwYabzeZdDGyfipafFdW28hVLwkTYnSqSKeX9KJFrQ6WZ 3kLtbgDvGwtWw== X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 44199 Cc: 44199@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) --=-Qx1Ey2gZRVchSYxkCiwR Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Matias (and Guix, which I've CC'ed), To Matias: a follow up message will follow. Unfortunately, I've just taken a pause from Guix+GNUnet hacking (though probably I'll occasionally resume hacking once in a while). Some things that work now: * The rehash service itself seems to work (https://notabug.org/mdevos/rehash). This is the service where peers add SHA512<->GNUnet FS URI mappings they discover (replace SHA512 by whatever Guix uses). * Unless I broke anything, the =E2=80=98remirror=E2=80=99 service (actually just a daemon implementing a web server to run locally) can proxy http: downloads. Proxying https: is a little difficult, as =E2=80=98remirror=E2=80=99 would need to play man-in-the-middle, but may be implemented eventually. Or maybe guix can be patched to (optionally) not use the CONNECT method for proxying https: downloads. There is no =E2=80=98offloading=E2=80=99 to GNUnet yet, though. * Perhaps a better approach for substitutes: In the =E2=80=98scheme-gnunet=E2=80=99 repository (https://notabug.org/mdev= os/scheme-gnunet/src/master/ROADMAP.org), I've written a publish-store.scm and download-store.scm script, that respectively upload and download an item from the store/GNUnet FS (using the gnunet-publish and gnunet-download binaries). It's not plugged into the guix substituter and guix publish yet, though. I'm a bit at a loss how to do this properly, so I'm more-or-less waiting until (a future revision of) the IPFS patch is merged, and then I'll try to add GNUnet as =E2=80=98just another p2p sys= tem=E2=80=99. Greetings, Maxime --=20 Maxime Devos PGP Key: C1F3 3EE2 0C52 8FDB 7DD7 011F 49E3 EE22 1917 25EE Freenode handle: mdevos --=-Qx1Ey2gZRVchSYxkCiwR Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYBFiCRccbWF4aW1lZGV2 b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7pPTAQDTaskqInlgIBD7g93IkaptLS2v ddCGN9fojF0WKPGnYAEAivUCGWCEvCknev8qngB+KIRBDH2CG0ikXaMDXUlOIgM= =+8KI -----END PGP SIGNATURE----- --=-Qx1Ey2gZRVchSYxkCiwR-- From unknown Sun Aug 17 22:01:28 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 25 Feb 2021 12:24:14 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator