--- Begin Message ---
Subject: |
Towards a new 'guix pull' |
Date: |
Thu, 11 Feb 2016 11:35:18 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Hello!
Here’s a series of improvements that I think we should make in ‘guix
pull’:
• Use Git instead of downloading a whole snapshot every time. The 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 ‘guix size’, or to use some libgit2 bindings such as
<https://git.dthompson.us/guile-git.git> (the closure of libgit2 is
435 MiB; that of Git is 761 MiB.)
• Build & install not only Scheme code, but also locales and the Info
manual.
• Have a “channel” mechanism, similar to ‘nix-channel’, that would
allow users to have several Guix variants available in parallel
instead of just “latest”. 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’.
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 “The Update Framework” paper!
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#22629: [PATCH 0/4] 'guix pull' produces a self-contained Guix |
Date: |
Sat, 09 Jun 2018 12:07:27 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Hello Guix!
Ludovic Courtès <address@hidden> skribis:
> Here is the “new” ‘guix pull’ that we discussed notably in this thread:
>
> https://bugs.gnu.org/22629
>
> The major difference is that instead of just building a bunch of modules
> and putting them under ~/.config/guix/latest, it now produces a
> standalone package (with bin/guix, share/info/guix.info, etc.) and puts
> it in a profile under ~/.config/guix/current. Quoth the manual:
I have just pushed the new ‘guix pull’, with a few improvements compared
to the patches I had sent:
• Both guix.info and all of guix.LANG.info are now built.
• The derivation that builds locale data depends only on the po/
directory, so it won’t be rebuilt every time. Likewise for the
derivation that builds the manual.
• Meta-data about what was pulled is kept in manifest entries, using
the ‘properties’ discussed in <https://bugs.gnu.org/31442>.
Currently the UI doesn’t use it but you can see that info in
~/.config/guix/current/manifest.
Let me know how it goes!
Ludo’.
--- End Message ---