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: Sun, 08 Apr 2018 18:48:52 +0200 Message-ID: <87fu45ve2z.fsf@gnu.org> References: <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]:50386) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f5DV5-0001hi-7o for bug-guix@gnu.org; Sun, 08 Apr 2018 12:49:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f5DV0-0005IM-Ce for bug-guix@gnu.org; Sun, 08 Apr 2018 12:49:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:34880) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f5DV0-0005IE-7I for bug-guix@gnu.org; Sun, 08 Apr 2018 12:49:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1f5DV0-00027p-0J for bug-guix@gnu.org; Sun, 08 Apr 2018 12:49:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87vb5vsffd.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 11 Feb 2016 11:35:18 +0100") 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" To: 22629@debbugs.gnu.org Hello Guix! ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > 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. = The Git > checkout would be kept in ~/.cache/guix/pull/checkouts, say. That was done a while back. :-) > =E2=80=A2 Build & install not only Scheme code, but also locales and th= e Info > manual. =E2=80=A6 and also the C++ bits. With the work done in , we can build all of Guix and its dependencies when doing =E2=80=98guix pull=E2=80=99, which bri= ngs us closer to what the =E2=80=98guix=E2=80=99 package provides. Thus we can at least partly address the issue described in , i.e., have =E2=80=98guix pull=E2=80=99 install not just a bunch of .go files but also = guile-git, guile-ssh, gnutls, and Guile itself. To do that, we need a =E2=80=9Cparadigm shift=E2=80=9D (sounds cute, no? :-= )). Currently, =E2=80=98scripts/guix=E2=80=99 fiddles with its %load-path and a= dds ~/.config/guix/latest if it exists. The new =E2=80=98guix pull=E2=80=99 sh= ould provide not just .go files but also a =E2=80=98guix=E2=80=99 command referring to t= he latest Guile, Guile-Git, etc. To achieve this, I think the new approach would be to have: export PATH=3D$HOME/.config/guix/current/bin:$PATH export INFOPATH=3D$HOME/.config/guix/current/share/info:$INFOPATH =E2=80=A6 =E2=80=98guix pull=E2=80=99 would update ~/.config/guix/current, which woul= d contain the =E2=80=98guix=E2=80=99 command, all the .go files, locales, the Info manual= , and ideally =E2=80=98guix-daemon=E2=80=99 as well. ~/.config/guix/current could be a profile, or something that resembles a profile. For a while =E2=80=98guix pull=E2=80=99 will have to keep updating ~/.confi= g/guix/latest as well, for users running an old =E2=80=98guix=E2=80=99 command. Thoughts? Ludo=E2=80=99.