GNU bug report logs - #42595
conflicts in propagated imports must be resolved manually

Previous Next

Package: guix;

Reported by: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>

Date: Wed, 29 Jul 2020 07:55:02 UTC

Severity: normal

To reply to this bug, email your comments to 42595 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Wed, 29 Jul 2020 07:55:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Wed, 29 Jul 2020 07:55:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>
To: bug-guix <at> gnu.org
Subject: conflicts in propagated imports must be resolved manually
Date: Wed, 29 Jul 2020 09:54:07 +0200
[Message part 1 (text/plain, inline)]
Hi,

When I get conflicts in propagated imports, I must follow a mechanical
multi-step process to resolve them manually.

A recent example: I wanted to install guile-gi. In the first step I was
told to also update python-pycairo, and in the next steps I had to add,
one by one,


dbus-glib cairo guile-charting libsoup poppler pango

And now I gave up. I’m now here and out of time:

LANG=C guix package -i guile-gi python-pycairo dbus-glib cairo guile-charting libsoup poppler pango
The following packages will be upgraded:
   python-pycairo (dependencies or package changed)
   dbus-glib      (dependencies or package changed)
   cairo          (dependencies or package changed)
   guile-charting (dependencies or package changed)
   libsoup        (dependencies or package changed)
   poppler        (dependencies or package changed)
   pango          (dependencies or package changed)

The following package will be installed:
   guile-gi 0.3.0

guix package: error: profile contains conflicting entries for glib
guix package: error:   first entry: glib <at> 2.62.6 /gnu/store/xr6zfqxklmr7skalljn5i071xmgqxbrm-glib-2.62.6
guix package: error:    ... propagated from cairo <at> 1.16.0
guix package: error:    ... propagated from pango <at> 1.44.7
guix package: error:   second entry: glib <at> 2.62.6 /gnu/store/q4100sjqcsdi6b232ndr93vxfzv9bzij-glib-2.62.6
guix package: error:    ... propagated from libnotify <at> 0.7.7


This should be automated, so there would be just one step to add all
updates I need.
-- 
Unpolitisch sein
heißt politisch sein
ohne es zu merken
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Wed, 29 Jul 2020 08:16:01 GMT) Full text and rfc822 format available.

Message #8 received at 42595 <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>
Cc: 42595 <at> debbugs.gnu.org
Subject: Re: bug#42595: conflicts in propagated imports must be resolved
 manually
Date: Wed, 29 Jul 2020 11:14:20 +0300
[Message part 1 (text/plain, inline)]
On Wed, Jul 29, 2020 at 09:54:07AM +0200, Dr. Arne Babenhauserheide wrote:
> Hi,
> 
> When I get conflicts in propagated imports, I must follow a mechanical
> multi-step process to resolve them manually.
> 
> A recent example: I wanted to install guile-gi. In the first step I was
> told to also update python-pycairo, and in the next steps I had to add,
> one by one,
> 
> 
> dbus-glib cairo guile-charting libsoup poppler pango
> 
> And now I gave up. I’m now here and out of time:
> 
> LANG=C guix package -i guile-gi python-pycairo dbus-glib cairo guile-charting libsoup poppler pango
> The following packages will be upgraded:
>    python-pycairo (dependencies or package changed)
>    dbus-glib      (dependencies or package changed)
>    cairo          (dependencies or package changed)
>    guile-charting (dependencies or package changed)
>    libsoup        (dependencies or package changed)
>    poppler        (dependencies or package changed)
>    pango          (dependencies or package changed)
> 
> The following package will be installed:
>    guile-gi 0.3.0
> 
> guix package: error: profile contains conflicting entries for glib
> guix package: error:   first entry: glib <at> 2.62.6 /gnu/store/xr6zfqxklmr7skalljn5i071xmgqxbrm-glib-2.62.6
> guix package: error:    ... propagated from cairo <at> 1.16.0
> guix package: error:    ... propagated from pango <at> 1.44.7
> guix package: error:   second entry: glib <at> 2.62.6 /gnu/store/q4100sjqcsdi6b232ndr93vxfzv9bzij-glib-2.62.6
> guix package: error:    ... propagated from libnotify <at> 0.7.7
> 
> 
> This should be automated, so there would be just one step to add all
> updates I need.

Are all of the packages from the same guix commit? What if you try
running 'guix package -u' to upgrade all your packages first and then
installing new ones?


-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Mon, 24 Aug 2020 14:45:01 GMT) Full text and rfc822 format available.

Message #11 received at 42595 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Efraim Flashner <efraim <at> flashner.co.il>
Cc: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>, 42595 <at> debbugs.gnu.org
Subject: Re: bug#42595: conflicts in propagated imports must be resolved
 manually
Date: Mon, 24 Aug 2020 16:44:17 +0200
Hi Arne & Efraim,

efraim Flashner <efraim <at> flashner.co.il> skribis:

> On Wed, Jul 29, 2020 at 09:54:07AM +0200, Dr. Arne Babenhauserheide wrote:
>> Hi,
>> 
>> When I get conflicts in propagated imports, I must follow a mechanical
>> multi-step process to resolve them manually.

[...]

>> LANG=C guix package -i guile-gi python-pycairo dbus-glib cairo guile-charting libsoup poppler pango
>> The following packages will be upgraded:
>>    python-pycairo (dependencies or package changed)
>>    dbus-glib      (dependencies or package changed)
>>    cairo          (dependencies or package changed)
>>    guile-charting (dependencies or package changed)
>>    libsoup        (dependencies or package changed)
>>    poppler        (dependencies or package changed)
>>    pango          (dependencies or package changed)
>> 
>> The following package will be installed:
>>    guile-gi 0.3.0
>> 
>> guix package: error: profile contains conflicting entries for glib
>> guix package: error:   first entry: glib <at> 2.62.6 /gnu/store/xr6zfqxklmr7skalljn5i071xmgqxbrm-glib-2.62.6
>> guix package: error:    ... propagated from cairo <at> 1.16.0
>> guix package: error:    ... propagated from pango <at> 1.44.7
>> guix package: error:   second entry: glib <at> 2.62.6 /gnu/store/q4100sjqcsdi6b232ndr93vxfzv9bzij-glib-2.62.6
>> guix package: error:    ... propagated from libnotify <at> 0.7.7
>> 
>> 
>> This should be automated, so there would be just one step to add all
>> updates I need.
>
> Are all of the packages from the same guix commit? What if you try
> running 'guix package -u' to upgrade all your packages first and then
> installing new ones?

Also, Arne, it seems to me that Guix alone cannot decide how to solve
that conflict; it’s up to the user.  Thoughts?

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Mon, 15 Feb 2021 23:52:02 GMT) Full text and rfc822 format available.

Message #14 received at 42595 <at> debbugs.gnu.org (full text, mbox):

From: Luis Felipe <luis.felipe.la <at> protonmail.com>
To: "42595 <at> debbugs.gnu.org" <42595 <at> debbugs.gnu.org>
Subject: conflicts in propagated imports must be resolved manually
Date: Mon, 15 Feb 2021 23:50:58 +0000
I get this problem from time to time in my user profile, and it is really annoying because doing what the hint says rarely fixes the problem easily. If you follow the hint, you end up wasting a lot of time when you get into that loop of "hint: Try upgrading both `PACKAGE_I_WANT_TO_INSTALL' and `SOME_PACKAGE_IN_THE_PROFILE', or remove one of them from the profile."

I always forget that the solution is to upgrade all packages in the profile. So maybe the hint should suggest that instead?

So it seems I always get into this problem because I use "guix install PACKAGE" and also "guix upgrade SINGLE_PACKAGE", as I don't always have the time to upgrade the whole profile (which contains almost 100 packages, some of which may have no substitutes and may also have a failing phase, which can result in more wasted time).

I'll need to build the habit of using the declarative approach instead to modify my profile, as Mark Weaver suggests in https://issues.guix.gnu.org/37940 (which, by the way, seems like a duplicate of this issue).

> Also, Arne, it seems to me that Guix alone cannot decide how to solve that conflict; it’s up to the user.

That's understandable but unsatisfying :)




Information forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Thu, 14 Jul 2022 03:10:02 GMT) Full text and rfc822 format available.

Message #17 received at 42595 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>,
 Efraim Flashner <efraim <at> flashner.co.il>, 42595 <at> debbugs.gnu.org
Subject: Re: bug#42595: conflicts in propagated imports must be resolved
 manually
Date: Wed, 13 Jul 2022 23:09:40 -0400
Hi,

Ludovic Courtès <ludo <at> gnu.org> writes:

> Hi Arne & Efraim,
>
> efraim Flashner <efraim <at> flashner.co.il> skribis:
>
>> On Wed, Jul 29, 2020 at 09:54:07AM +0200, Dr. Arne Babenhauserheide wrote:
>>> Hi,
>>> 
>>> When I get conflicts in propagated imports, I must follow a mechanical
>>> multi-step process to resolve them manually.
>
> [...]
>
>>> LANG=C guix package -i guile-gi python-pycairo dbus-glib cairo guile-charting libsoup poppler pango
>>> The following packages will be upgraded:
>>>    python-pycairo (dependencies or package changed)
>>>    dbus-glib      (dependencies or package changed)
>>>    cairo          (dependencies or package changed)
>>>    guile-charting (dependencies or package changed)
>>>    libsoup        (dependencies or package changed)
>>>    poppler        (dependencies or package changed)
>>>    pango          (dependencies or package changed)
>>> 
>>> The following package will be installed:
>>>    guile-gi 0.3.0
>>> 
>>> guix package: error: profile contains conflicting entries for glib
>>> guix package: error: first entry: glib <at> 2.62.6
>>> /gnu/store/xr6zfqxklmr7skalljn5i071xmgqxbrm-glib-2.62.6
>>> guix package: error:    ... propagated from cairo <at> 1.16.0
>>> guix package: error:    ... propagated from pango <at> 1.44.7
>>> guix package: error: second entry: glib <at> 2.62.6
>>> /gnu/store/q4100sjqcsdi6b232ndr93vxfzv9bzij-glib-2.62.6
>>> guix package: error:    ... propagated from libnotify <at> 0.7.7
>>> 
>>> 
>>> This should be automated, so there would be just one step to add all
>>> updates I need.

[...]

> Also, Arne, it seems to me that Guix alone cannot decide how to solve
> that conflict; it’s up to the user.  Thoughts?

I guess it could compute all the conflicts and then fail and show the
results, so that the user wouldn't need to slowly iterate on its
per-package findings; perhaps recommend to simply upgrade wholesale when
the conflicts are too numerous?

Perhaps it could even *already* make such a recommendation when
encountering conflicts, e.g.

--8<---------------cut here---------------start------------->8---
hint: To avoid conflicts, you can upgrade all of your package collection
at once with 'guix upgrade'.
--8<---------------cut here---------------end--------------->8---

Is this worth it?

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#42595; Package guix. (Fri, 15 Jul 2022 13:32:01 GMT) Full text and rfc822 format available.

Message #20 received at 42595 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: "Dr. Arne Babenhauserheide" <arne_bab <at> web.de>,
 Efraim Flashner <efraim <at> flashner.co.il>, 42595 <at> debbugs.gnu.org
Subject: Re: bug#42595: conflicts in propagated imports must be resolved
 manually
Date: Fri, 15 Jul 2022 15:31:32 +0200
Hi,

Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:

> Ludovic Courtès <ludo <at> gnu.org> writes:

[...]

>>>> guix package: error: profile contains conflicting entries for glib
>>>> guix package: error: first entry: glib <at> 2.62.6
>>>> /gnu/store/xr6zfqxklmr7skalljn5i071xmgqxbrm-glib-2.62.6
>>>> guix package: error:    ... propagated from cairo <at> 1.16.0
>>>> guix package: error:    ... propagated from pango <at> 1.44.7
>>>> guix package: error: second entry: glib <at> 2.62.6
>>>> /gnu/store/q4100sjqcsdi6b232ndr93vxfzv9bzij-glib-2.62.6
>>>> guix package: error:    ... propagated from libnotify <at> 0.7.7
>>>> 
>>>> 
>>>> This should be automated, so there would be just one step to add all
>>>> updates I need.
>
> [...]
>
>> Also, Arne, it seems to me that Guix alone cannot decide how to solve
>> that conflict; it’s up to the user.  Thoughts?
>
> I guess it could compute all the conflicts and then fail and show the
> results, so that the user wouldn't need to slowly iterate on its
> per-package findings;

Yes, that’d be an improvement.

> perhaps recommend to simply upgrade wholesale when the conflicts are
> too numerous?
> Perhaps it could even *already* make such a recommendation when
> encountering conflicts, e.g.
>
> hint: To avoid conflicts, you can upgrade all of your package collection
> at once with 'guix upgrade'.

Yes, we could adjust the second message in
‘display-collision-resolution-hint’ along these lines.

Thanks,
Ludo’.




This bug report was last modified 2 years and 333 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.