From: Pierre Neidhardt <mail@ambrevar.xyz>
To: zimoun <zimon.toutoune@gmail.com>, help-guix@gnu.org
Subject: Re: Install `guix pull'ed Guix to target partition on system install
Date: Mon, 21 Dec 2020 17:49:11 +0100 [thread overview]
Message-ID: <87pn33ksu0.fsf@ambrevar.xyz> (raw)
In-Reply-To: <86a6u79lbg.fsf@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2827 bytes --]
zimoun <zimon.toutoune@gmail.com> writes:
> Therefore, the missing store items from the RAM store could be
> transferred to installation target via ‘guix archive’.
But I don't think `guix pull' looks for a repository in the store.
> But I am
> surprised that after rebooting this /gnu/store misses items that you
> need when you run “guix pull” as root.
This is not surprising: when you run "guix pull" from an installation
media, there is no /gnu/store on the disk since Guix hasn't been
installed to the disk yet.
> What I miss in your problem is:
>
> # guix pull # writes in memory (1)
> # guix system init
> # reboot
> # guix pull # writes in disk (2)
> $ guix pull # writes in disk (3)
No need for 3.
> (1) is slow, (2) should not clone. Is (2) cloning?
1: yes.
2: It would be nice if it could reuse the checkout from 1.
> What you are proposing is to improve (3), right?
No, 2.
> Instead of cloning
> from Savannah and so populate ~/.cache/guix/checkouts, you are proposing
> that between (1) and (3), «something» creates a store item with the full
> clone from Savannah, then (3) copies from this store item to
> ~/.cache/guix/checkouts if it does not exist, and run “git pull”
> there.
Correct but with (2) instead of (3).
> But I do not think the “cloning” part is the consuming one here; even if
> it obviously depends on the network.
On a 6 Mbit/s connection and a modest laptop, this took about 30
minutes!
The Guix checkout is huge.
Maybe a shallow clone could fix this, but since we've added the
introduction commit I don't think it's possible.
> And it is does only once in life. ;-)
Do you mean installation is something done only once?
I beg to differ, I've been using Guix for 2.5 years and already
installed it a dozen of times.
> Example with a poor network via my smartphone:
>
> --8<---------------cut here---------------start------------->8---
> [...]
> $ rm -fr ~/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq
> $ time guix pull
> Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
> Building from this channel:
> guix https://git.savannah.gnu.org/git/guix.git 5ecc0b1
> Computing Guix derivation for 'x86_64-linux'... -
> nothing to be done
>
> hint: After setting `PATH', run `hash guix' to make sure your shell refers to `/home/simon/.config//guix/current/bin/guix'.
>
>
> real 4m15.202s
> user 3m8.522s
> sys 0m5.010s
> --8<---------------cut here---------------end--------------->8---
I wouldn't call this a poor network ;)
You can go much worse than that, in my case it took around half an hour.
Cheers!
--
Pierre Neidhardt
https://ambrevar.xyz/
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 511 bytes --]
next prev parent reply other threads:[~2020-12-21 16:49 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-20 9:12 Install `guix pull'ed Guix to target partition on system install Pierre Neidhardt
2020-12-21 11:57 ` zimoun
2020-12-21 12:26 ` Pierre Neidhardt
2020-12-21 13:07 ` zimoun
2020-12-21 13:33 ` Pierre Neidhardt
2020-12-21 13:56 ` zimoun
2020-12-21 14:47 ` Pierre Neidhardt
2020-12-21 16:26 ` zimoun
2020-12-21 16:49 ` Pierre Neidhardt [this message]
2020-12-21 17:06 ` zimoun
2020-12-21 17:12 ` Pierre Neidhardt
2020-12-21 17:53 ` zimoun
2020-12-21 19:39 ` Pierre Neidhardt
2020-12-21 23:50 ` zimoun
2020-12-22 12:28 ` Ricardo Wurmus
2020-12-22 13:16 ` zimoun
2020-12-22 0:29 ` zimoun
2020-12-22 9:44 ` Pierre Neidhardt
2020-12-22 10:46 ` zimoun
2020-12-22 11:51 ` Carlo Zancanaro
2020-12-22 13:06 ` zimoun
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87pn33ksu0.fsf@ambrevar.xyz \
--to=mail@ambrevar.xyz \
--cc=help-guix@gnu.org \
--cc=zimon.toutoune@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).