GNU bug report logs

#52555 [RFC PATCH 0/3] Decentralized substitute distribution with ERIS

PackageSource(s)Maintainer(s)
guix-patches PTS Buildd Popcon
Full log

Message #154 received at 52555@debbugs.gnu.org (full text, mbox, reply):

Received: (at 52555) by debbugs.gnu.org; 29 Dec 2022 18:14:37 +0000
From debbugs-submit-bounces@debbugs.gnu.org Thu Dec 29 13:14:37 2022
Received: from localhost ([127.0.0.1]:32808 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces@debbugs.gnu.org>)
	id 1pAxQK-0007PY-RI
	for submit@debbugs.gnu.org; Thu, 29 Dec 2022 13:14:37 -0500
Received: from mout02.posteo.de ([185.67.36.66]:50291)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <pukkamustard@posteo.net>) id 1pAxQD-0007OL-CV
 for 52555@debbugs.gnu.org; Thu, 29 Dec 2022 13:14:30 -0500
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id DB8E42401A9
 for <52555@debbugs.gnu.org>; Thu, 29 Dec 2022 19:14:23 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1672337663; bh=HxZoZL8oLhJfoeETpauNq/MdOkf5vrtFLoMKrJn87GI=;
 h=From:To:Cc:Subject:Date:From;
 b=ewumwp+ApQe2kiWg1LfwTDiMJ6mIVkX7HK4Aw3MjSp8a80vzihaVkq439No4puVsY
 1nCHRn1Do7kHXHI9NACaWpRU6VSyLQW65QXWaqg/HVGEZy2SbTP9fWtnQw5Mr1DBLO
 MEVh2SV8t2RwjR/NIar3ET+KRNiHbShR1aWeOyyknF2OKJPYpe+7j+Hjp6ObkR5cge
 RTcKzGkZxG+WTief9biX5EROmfIKCUdZkTt1kluPUVUSQxxOKj+SaL4PgfwNGjamVg
 7LHfeRFjZlHdknpeXWrtqe4C3oeJbMZ11E4xyFwYGfLhg7YM00nmQ/7FfPNFlN6VyX
 SHOYzuqMQO2tQ==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4Njc3g1lm5z6tn0;
 Thu, 29 Dec 2022 19:14:23 +0100 (CET)
From: pukkamustard <pukkamustard@posteo.net>
To: 52555@debbugs.gnu.org
Subject: [PATCH v3 5/8] eris/http: Add HTTP block de-referencer.
Date: Thu, 29 Dec 2022 18:13:24 +0000
Message-Id: <20221229181327.758-6-pukkamustard@posteo.net>
In-Reply-To: <20221229181327.758-1-pukkamustard@posteo.net>
References: <20221229181327.758-1-pukkamustard@posteo.net>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 52555
Cc: pukkamustard <pukkamustard@posteo.net>
X-BeenThere: debbugs-submit@debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request@debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit@debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request@debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request@debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces@debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
X-Spam-Score: -3.3 (---)
* guix/eris/http.scm (eris-http-block-ref): New procedure.
---
 guix/eris/http.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 44 insertions(+), 2 deletions(-)

diff --git a/guix/eris/http.scm b/guix/eris/http.scm
index a8a9520197..354d3be3be 100644
--- a/guix/eris/http.scm
+++ b/guix/eris/http.scm
@@ -18,11 +18,17 @@
 
 (define-module (guix eris http)
   #:use-module (eris utils base32)
+
   #:use-module (web uri)
+  #:use-module (web client)
+  #:use-module (web response)
 
-  #:use-module (srfi srfi-2)
+  #:use-module (rnrs base)
+  #:use-module (srfi srfi-2) ; and-let*
+  #:use-module (srfi srfi-71) ; extended let-syntax for multiple values
 
-  #:export (make-blake2b-urn-query-ref))
+  #:export (make-blake2b-urn-query-ref
+            eris-http-block-ref))
 
 (define blake2b-uri-path-regexp
   (make-regexp "^blake2b:" regexp/icase))
@@ -38,3 +44,39 @@ (define (make-blake2b-urn-query-ref block-ref)
                (blake2b-ref (base32-decode
                              (string-drop (uri-path urn) 8))))
       (block-ref blake2b-ref))))
+
+(define (make-blake2b-urn ref)
+  (string-append "urn:blake2b:" (base32-encode ref)))
+
+(define (make-request-uri host ref)
+  (build-uri (uri-scheme host)
+             #:userinfo (uri-userinfo host)
+             #:host (uri-host host)
+             #:port (uri-port host)
+             #:path "/uri-res/N2R"
+             #:query (make-blake2b-urn ref)))
+
+(define* (eris-http-block-ref
+          ref
+          #:key host
+          (open-connection (lambda (host) (open-socket-for-uri host))))
+
+  (let* ((uri (make-request-uri host ref))
+         (_ (format #t "URI: ~a\n" uri))
+         (response body
+                   (http-get uri
+                             #:decode-body? #f
+                             #:port (open-connection host)
+                             #:keep-alive? #t)))
+    (if (eqv? (response-code response) 200)
+        body
+        #f)))
+
+;; (use-modules (eris)
+;;              (rnrs bytevectors))
+
+;; (bytevector?
+;;  (eris-http-block-ref
+;;   (base32-decode
+;;    "4ACQM2Q5IB3DBHGKHM2WRTAXDBPMVZ7F6MG2TUXZ5QOJHW7P4N7Q")
+;;   #:host (string->uri "http://localhost:8081")))
-- 
2.38.1





Send a report that this bug log contains spam.


debbugs.gnu.org maintainers <help-debbugs@gnu.org>. Last modified: Mon Sep 8 11:19:04 2025; Machine Name: wallace-server

GNU bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.