From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sree Harsha Totakura Subject: Re: [GNUnet-developers] Guix - GNUnet binary ditribution roadmap Date: Wed, 12 Mar 2014 23:53:29 +0100 Message-ID: <5320E569.6000104@in.tum.de> References: <531F607F.7080208@rigelk.eu> <5320AE0E.2020203@totakura.in> <87siqndtka.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:53688) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WNs20-0004CD-5Z for guix-devel@gnu.org; Wed, 12 Mar 2014 18:53:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WNs1v-0008A4-85 for guix-devel@gnu.org; Wed, 12 Mar 2014 18:53:48 -0400 In-Reply-To: <87siqndtka.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: =?UTF-8?B?THVkb3ZpYyBDb3VydMOocw==?= Cc: guix-devel , gnunet-developers@gnu.org -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 03/12/2014 09:56 PM, Ludovic Court=C3=A8s wrote: >>> Let's just stick with the GNUnet server (we call such a server >>> as a service in GNUnet, let's call it Guix service) as of now. >>> HTTP can be done optionally. Moreover the currently binary >>> distribution is made through a HTTP server. > Yeah, let=E2=80=99s keep HTTP optional. The requirement will be to hav= e a=20 > server over GNUnet=E2=80=99s MESH, right? Yes, so the service should be using both DHT and MESH services of GNUnet. DHT to publish and lookup packages and MESH for downloading and seeding packages. >=20 >>>>> * required: users should use a gpg key to sign their >>>>> packages. >>> OK, sounds good. > For consistency, I=E2=80=99d prefer to use our SPKI-style infrastructur= e > (info "(guix) Invoking guix archive"). OK. >>>>> * optional: users' servers could be dht nodes themselves. >>> This may not be possible. If you are running the Guix server, >>> you would want to publish the packages you built into the DHT >>> and for this you need to run the DHT service. > To me =E2=80=9Ccould be DHT nodes=E2=80=9D is the same as could =E2=80=9C= run the DHT > service=E2=80=9D. I think you=E2=80=99re saying the same thing, no? :-= ) Yes, if a node is a DHT node that basically implies that it is running the DHT service. >>> The requirements from Guix side are missing here. IMO, you >>> have to: * Understand the current protocol used over HTTP to >>> search and download packages from Guix Hydra server. * >>> Implement a equivalent client/downloader in Guix using Guile >>> to download the packages using GNUnet. * Extend the Guix daemon >>> to publish package updates into GNUnet DHT, whenever new >>> packages are added to the Guix store. > I think guix-daemon would remain unchanged. Instead, the package=20 > publisher could (say) periodically ask for the list of live store > items (as per =E2=80=98guix gc --list-live=E2=80=99) and publish those. >=20 OK, I agree; this is also simple. Does '--list-live' option list all the items in the store or only the ones currently used? I believe it is helpful for other peers to push all items in the store, but then how do packages age-out? > However, I think the protocol could be different from, and simpler > than Hydra=E2=80=99s. >=20 > Ideally, I imagine you could do something like: >=20 > dht-get /gnu/store/ykmg6ydrmlkn600wklriw3wzc1z3dcli-emacs-24.3 >=20 > and get as a reply (roughly) a tuple containing: >=20 > 1. a signature (as a canonical s-expression); >=20 > 2. a reference to a MESH channel from which to download the archive > of that store item; We also need a peer identity in the tuple since establishing MESH connections require both the peer identity and a channel number. MESH is the GNUnet's equivalent of TCP: peer identity ~=3D IP address; channel number ~=3D port number. Sree -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Using GnuPG with Icedove - http://www.enigmail.net/ iQEcBAEBAgAGBQJTIOVgAAoJECthXLMALpxG49cH/A9uK5z3R7++uFfrp3LTs7UD qTZV63wn7y01l2WfX2Yzvj7gMIHNhwojBkfpALgchHVDCbTXtfdDHo5OYFbmpxhN MqJ6bmrkF2uQ1d1cgWqlByaOERDWEw8RwCjzAwJ0FzEv1P2/5KUXdlQCFwKyd+k+ g5//utsLrEfPzb5KvXEKUCloBCksnt7iBuyhUwy2KH7BaNOc1pmeWUShc5zErH2m rrZJfa+vS7YqvbpqKN4ZorDoDHW8SqOXJOxStrBuV0qzNq4iCWZkDeomybKEQ/UA b3YmtKwLIrMEf3f7/mPmAIy3A5mN2yKy4CP3m2dGVObDzuWWCEQX/WvuZCP4Upk=3D =3DGb1A -----END PGP SIGNATURE-----