On Mon, 21 Dec 2020 at 14:33, Pierre Neidhardt <m...@ambrevar.xyz> wrote: > zimoun <zimon.touto...@gmail.com> writes: > >> Therefore, since the 2 profiles could be seen as independent, I do not >> know if it is possible to really improve here; by design. >> >> The first pull could be long and resource hungry but the second one >> should be a bit quicker. Well, it depends on how many commits are done >> in the meantime (between the 2 pulls). > > Maybe there is a misunderstanding: the first pull happens on the > installation media, thus it disappears when I reboot on the installed > system.
I am not familiar with the installation process. I miss where this first “guix pull” writes: - the cached checkout - the store items I am expecting that the first “pull“ writes both on the target. If not, i.e., it writes on the installation target, yeah it could be improved. :-) >From your initial message, my understanding was the first pull writes: - the cached checkout in /root/.cache/guix/checkouts - the store items in /gnu/store then your second pull writes: - the cached checkout in /home/user/.cache/guix/checkouts - the store items in /gnu/store Therefore, the repo is cloned twice and derivations are also computed twice; but it seems hard to avoid by design. > What I think we should do is that when we run `guix system init`, we > would copy the checkout to the store, and then when `guix pull` is run I do not think the checkout is in the store but in “/root/.cache/guix/checkouts“, I guess. Cheers, simon