[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Faster "guix pull" by incremental compilation and non-circular modul
From: |
Ricardo Wurmus |
Subject: |
Re: Faster "guix pull" by incremental compilation and non-circular modules? |
Date: |
Tue, 31 May 2022 12:23:42 +0200 |
User-agent: |
mu4e 1.6.10; emacs 28.1 |
Maxime Devos <maximedevos@telenet.be> writes:
> [[PGP Signed Part:Undecided]]
> Gábor Boskovits schreef op di 31-05-2022 om 06:54 [+0200]:
>> I was thinking about a bit of a different structure that can also be
>> automated. My original idea was to use the already existing tree
>> structure of the derivations, and split it based on depth. I think
>> that gives a bit more structure, but might require splitting things
>> that now are together (for example iirc sometimes we are defining
>> bootstrap packages inheriting from the fully fledged ones, which
>> introduces a syntactic dependency on something that is higher up the
>> tree). Wdyt?
>
> The package modules could be split and reorganised a bit to roughly
> follow the derivation DAG, if that's what you mean (*)? Then the "guix"
> package would depend on less -> compute-guix-derivation etc has less to
> do, also good for lowering "guix $do_something" memory footprint.
This seems like a thing we’d have to do repeatedly as module cycles can
appear due to seemingly innocent package upgrades.
I get the appeal of untangling the module graph, but I suspect it will
turn out to be a lot of busywork leading to repeated disruption (because
packages keep moving to different modules, breaking third party channels
for no good reason) for little gain.
I do hope we can reduce the amount of work that compute-guix-derivation
has to perform, even if it causes some disruption once.
--
Ricardo