From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#22629: Towards a new 'guix pull' Date: Thu, 11 Feb 2016 11:35:18 +0100 Message-ID: <87vb5vsffd.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]:57935) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aTobX-0007zZ-CO for bug-guix@gnu.org; Thu, 11 Feb 2016 05:36:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aTobT-00039O-6x for bug-guix@gnu.org; Thu, 11 Feb 2016 05:36:07 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:54781) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aTobT-00039K-3h for bug-guix@gnu.org; Thu, 11 Feb 2016 05:36:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aTobS-0000jq-HE for bug-guix@gnu.org; Thu, 11 Feb 2016 05:36:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57781) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aToat-0007jR-4H for bug-guix@gnu.org; Thu, 11 Feb 2016 05:35:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aToao-0002tW-QE for bug-guix@gnu.org; Thu, 11 Feb 2016 05:35:26 -0500 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52848) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aToao-0002tS-Nu for bug-guix@gnu.org; Thu, 11 Feb 2016 05:35:22 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:60334 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1aToao-0007Cj-4w for bug-guix@gnu.org; Thu, 11 Feb 2016 05:35:22 -0500 List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: 22629@debbugs.gnu.org Hello! Here=E2=80=99s a series of improvements that I think we should make in =E2= =80=98guix pull=E2=80=99: =E2=80=A2 Use Git instead of downloading a whole snapshot every time. Th= e Git checkout would be kept in ~/.cache/guix/pull/checkouts, say. A related question is whether to use Git itself, which is pretty big per =E2=80=98guix size=E2=80=99, or to use some libgit2 bindings such as (the closure of libgit2 is 435=C2=A0MiB; that of Git is 761=C2=A0MiB.) =E2=80=A2 Build & install not only Scheme code, but also locales and the = Info manual. =E2=80=A2 Have a =E2=80=9Cchannel=E2=80=9D mechanism, similar to =E2=80= =98nix-channel=E2=80=99, that would allow users to have several Guix variants available in parallel instead of just =E2=80=9Clatest=E2=80=9D. Could work like this: guix channel add latest git://git.sv.gnu.org/guix.git master guix channel add stable git://git.sv.gnu.org/guix.git stable guix channel pull latest guix channel set latest # here i see the latest versions of everything guix channel set stable # and here everything is old but super stable ;-) All 3 items can be done separately, I think. Any takers? :-) Ludo=E2=80=99. PS: I do not mention the issue of authenticating code here, which is obviously very important and deserves to be treated separately. Related to that is the question of making sure that what you think is the latest version really is the latest version. We need someone to sign certificates saying what the latest commit ID of a repo is. See the =E2=80=9CThe Update Framework=E2=80=9D paper!