From mboxrd@z Thu Jan  1 00:00:00 1970
From: Christopher Allan Webber <cwebber@dustycloud.org>
Subject: Re: Using IPFS to host mirrors of source packages
Date: Fri, 11 Aug 2017 14:17:36 -0500
Message-ID: <87inhtykvj.fsf@dustycloud.org>
References: <20170811151019.GB20919@thebird.nl>
Mime-Version: 1.0
Content-Type: text/plain
Return-path: <guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org>
Received: from eggs.gnu.org ([2001:4830:134:3::10]:57541)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <cwebber@dustycloud.org>) id 1dgFRH-0001lK-D6
	for guix-devel@gnu.org; Fri, 11 Aug 2017 15:17:44 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <cwebber@dustycloud.org>) id 1dgFRE-0000IN-7p
	for guix-devel@gnu.org; Fri, 11 Aug 2017 15:17:43 -0400
Received: from dustycloud.org ([50.116.34.160]:37300)
	by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
	(Exim 4.71) (envelope-from <cwebber@dustycloud.org>)
	id 1dgFRE-0000IE-3p
	for guix-devel@gnu.org; Fri, 11 Aug 2017 15:17:40 -0400
In-reply-to: <20170811151019.GB20919@thebird.nl>
List-Id: "Development of GNU Guix and the GNU System distribution."
	<guix-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>,
	<mailto:guix-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/guix-devel/>
List-Post: <mailto:guix-devel@gnu.org>
List-Help: <mailto:guix-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>,
	<mailto:guix-devel-request@gnu.org?subject=subscribe>
Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org
Sender: "Guix-devel" <guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org>
To: Pjotr Prins <pjotr.public12@thebird.nl>
Cc: guix-devel <guix-devel@gnu.org>

Pjotr Prins writes:

> By hosting source packages on IPFS they become content addressable and
> should scale for downloads. It would also become a safe way of
> distributing data.
>
> https://github.com/ipfs/ipfs
>
> Essentially the interplanetary file system allows for distributed
> storage servers and a distributed DNS style resolution for finding
> files. It allows people to share storage and by pooling storage we
> can provide resilient access to all source packages. Especially the
> ones that prove dodgy now.
>
> This should be fairly trivial to implement as long as some of us can
> commit some storage. We could use the build farm.
>
> Next we can do the same for binary Guix packages. It would make for
> way faster downloads when the Guix-deamon supports the protocol.
>
> Can we look into this? Who of us can host IPFS and expose port 4001? I
> can put in some.
>
> Pj.

I like the idea... a lot!

Though I think we'll have to address, how do we *get* the packages from
IPFS?  Do we use an http gateway (and whose)?  It would be even better
if by using Guix you automatically could enable contributing to the IPFS
pool, but I guess that would require a) having an IPFS client in Guile
and b) having the Nix daemon replaced with Guile to do efficiently.
(But maybe I'm overthinking it?)

 - Chris