guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guix size reduction work group


From: Pierre Neidhardt
Subject: Re: Guix size reduction work group
Date: Sat, 08 Feb 2020 17:43:28 +0100

Ludovic Courtès <address@hidden> writes:

> Hi!
>
> Pierre Neidhardt <address@hidden> skribis:
>
>> Shall we start a work group to fix the issue?
>>
>> - Write a blog article to explain the issue and a detailed process on
>>   how to fix it.  (Embed it to the manual.)
>
> The “Submitting Patches” section mentions closure size specifically.  Is
> there anything you think we should add there?

It does not give much details, e.g. the ones that Julien mentioned.
Also I don't think `guix size' is enough, see below.

>> - Improve the tooling.  In my experience, guix graph is quickly unusable
>>   with a high number of nodes.  Maybe d3.js could be leveraged to add a
>>   filtering system, or a way to click on nodes to hide them and all
>>   their children.
>
> ‘guix size’ is key here: it’s a profiler, exactly what we need IMO.
> WDYT?

Maybe I'm missing something, but in general I think that guix size only
gives a birds eye view and does not allow for closer inspection.

Say FOO has BAR in its closure, but not in the explicit inputs, how can
I figure out which of the indirect inputs drags BAR in?

With an extensive guix graph, it quickly becomes impossible to follow
the millions of arrows.

What I'd like to have is an interactive graph that I can trim to links
between given nodes.  This would allow me to ask "give me the dependency
chain that links FOO and BAR".

> The thing is, I think it’s something that requires constant care, every
> time we add a package or modify an existing one.  It’s very easy to lose
> benefits that had been previously obtained through hard work!

This is a good point.  "Adding" a package is less critical since it does
not impact the closure size of the rest.  For "updates" maybe we could
leverage the continuous integration to flag a warning when a new build
has increased the size of the package compared to a previous build by
some threshold.

Cheers!

-- 
Pierre Neidhardt
https://ambrevar.xyz/

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]