Subject: Re: bug#25095: Multiple output packages causes noop profile generations

From: [email-masked] (Ludovic Courtès)
Date: Sun, 04 Dec 2016 00:58:08 +0100

Marius Bakke <[email-masked]> skribis:

> Sorry for the non-descriptive title. It appears that having non-default
> outputs in the profile always causes a new profile generation even if
> the package derivations themselves don't change. Here is an example:
>
> $ guix package -u
> The following packages will be upgraded:
>    bind:utils   9.10.4-P4 → 9.10.4-P4   /gnu/store/ypv8jppwn3dvhnkrmibw3p2h35cm30ij-bind-9.10.4-P4-utils
>    git:send-email       2.11.0 → 2.11.0 /gnu/store/xnm8msrlh4ac9bxzvf9pgai8xnjjkvwj-git-2.11.0-send-email
>    transmission:gui     2.92 → 2.92     /gnu/store/x2q22mfakkkf7nr68nfsxcvci4psz0vi-transmission-2.92-gui

[...]

> $ guix package -u
> The following packages will be upgraded:
>    transmission:gui     2.92 → 2.92     /gnu/store/x2q22mfakkkf7nr68nfsxcvci4psz0vi-transmission-2.92-gui
>    git:send-email       2.11.0 → 2.11.0 /gnu/store/xnm8msrlh4ac9bxzvf9pgai8xnjjkvwj-git-2.11.0-send-email
>    bind:utils   9.10.4-P4 → 9.10.4-P4   /gnu/store/ypv8jppwn3dvhnkrmibw3p2h35cm30ij-bind-9.10.4-P4-utils

Notice how the order was reversed.  :-)

This is enough to create a new generation (the order of packages in the
manifest matters because it changes the way collisions are resolved, if
any.)

The reverse is unintended, but I suspect it has nothing to do with
multiple-output packages.

Thanks,
Ludo’.