From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: New =?utf-8?B?4oCcZ3VpeCBwdWxs4oCd?= command Date: Wed, 20 Feb 2013 23:58:12 +0100 Message-ID: <87r4kak2yj.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 ([208.118.235.92]:41289) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U8IcM-0005sP-AB for bug-guix@gnu.org; Wed, 20 Feb 2013 17:58:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U8IcI-0005FT-To for bug-guix@gnu.org; Wed, 20 Feb 2013 17:58:26 -0500 Received: from [2a01:e0b:1:123:ca0a:a9ff:fe03:271e] (port=40317 helo=xanadu.aquilenet.fr) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U8IcI-0005Du-Ne for bug-guix@gnu.org; Wed, 20 Feb 2013 17:58:22 -0500 Received: from localhost (localhost [127.0.0.1]) by xanadu.aquilenet.fr (Postfix) with ESMTP id 754E2C56A for ; Wed, 20 Feb 2013 23:58:13 +0100 (CET) Received: from xanadu.aquilenet.fr ([127.0.0.1]) by localhost (xanadu.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pdsM14lCBq5k for ; Wed, 20 Feb 2013 23:58:13 +0100 (CET) Received: from pluto (reverse-83.fdn.fr [80.67.176.83]) by xanadu.aquilenet.fr (Postfix) with ESMTPSA id 0C3E668C1 for ; Wed, 20 Feb 2013 23:58:12 +0100 (CET) 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: bug-guix@gnu.org Hi, Commit f651b47 adds a =E2=80=9Cguix pull=E2=80=9D command. It fetches a Gu= ix source tarball, unpacks it, compiles Scheme code (so not the daemon), and changes ~/.config/guix/latest to point to it. The commit also changes the =E2=80=98guix=E2=80=99 command to put ~/.config= /guix/latest at the front of the search path (except when using ./pre-inst-env.) This way, it allows users to at the same time update package descriptions (like =E2=80=9Capt-get update=E2=80=9D) and the package manage= r itself. I considered other options, such as making a package for Guix and letting users install it in their profile. That would have provided roll-back and everything for free. However, I came to the conclusion that package management of the package manager itself deserves special treatment, and should not be in the way of users. The implementation has two main problems: it does not authenticate the tarball it downloads, and downloads a full tarball (~5 MiB) every time. We need a bit of infrastructure to fix that. We could have a process on hydra.gnu.org that automatically signs tarballs with a pre-defined key. For the second issue, there are Git, rsync, bsdiff, or even GNUnet that could help, but that requires more thought. Comments welcome! Thanks, Ludo=E2=80=99.