unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#27467: Xfce broken, because it propagates two different versions of gtk+
@ 2017-06-23 23:47 Mark H Weaver
  2017-06-24  9:41 ` ng0
  2017-06-24 21:53 ` Ludovic Courtès
  0 siblings, 2 replies; 12+ messages in thread
From: Mark H Weaver @ 2017-06-23 23:47 UTC (permalink / raw)
  To: 27467

I just tried to update my GuixSD system to commit
c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
failed with the following error:

guix system: error: profile contains conflicting entries for gtk+:out
guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
guix system: error:    ... propagated from exo@0.10.3
guix system: error:    ... propagated from xfce@4.12.0
guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
guix system: error:    ... propagated from libxfce4ui@4.12.0
guix system: error:    ... propagated from garcon@0.4.0
guix system: error:    ... propagated from xfce@4.12.0

       Mark

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-23 23:47 bug#27467: Xfce broken, because it propagates two different versions of gtk+ Mark H Weaver
@ 2017-06-24  9:41 ` ng0
  2017-06-24 21:53 ` Ludovic Courtès
  1 sibling, 0 replies; 12+ messages in thread
From: ng0 @ 2017-06-24  9:41 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 27467

Mark H Weaver transcribed 0.7K bytes:
> I just tried to update my GuixSD system to commit
> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
> failed with the following error:
> 
> guix system: error: profile contains conflicting entries for gtk+:out
> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
> guix system: error:    ... propagated from exo@0.10.3
> guix system: error:    ... propagated from xfce@4.12.0
> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
> guix system: error:    ... propagated from libxfce4ui@4.12.0
> guix system: error:    ... propagated from garcon@0.4.0
> guix system: error:    ... propagated from xfce@4.12.0
> 
>        Mark
> 
> 
> 
> 

I ran into this aswell.
And I think this (two different gtk+ versions) is the explanation for the
problems I get when trying to update the version of some of the packages.
More applications of XFCE4 have been ported to gtk+-3, but not everything.
-- 
ng0
OpenPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
infotropique OS: https://www.infotropique.org
personal: https://ng-0.github.io https://krosos.org/~/ng0/

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-23 23:47 bug#27467: Xfce broken, because it propagates two different versions of gtk+ Mark H Weaver
  2017-06-24  9:41 ` ng0
@ 2017-06-24 21:53 ` Ludovic Courtès
  2017-06-25  9:16   ` Mark H Weaver
  1 sibling, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2017-06-24 21:53 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 27467

Mark H Weaver <mhw@netris.org> skribis:

> I just tried to update my GuixSD system to commit
> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
> failed with the following error:
>
> guix system: error: profile contains conflicting entries for gtk+:out
> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
> guix system: error:    ... propagated from exo@0.10.3
> guix system: error:    ... propagated from xfce@4.12.0
> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
> guix system: error:    ... propagated from libxfce4ui@4.12.0
> guix system: error:    ... propagated from garcon@0.4.0
> guix system: error:    ... propagated from xfce@4.12.0

I just tried and Exo builds fine with GTK+3, so I would think this
reference to GTK+2 was a mistake.  Can you check if it works fine for
you with this change?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-24 21:53 ` Ludovic Courtès
@ 2017-06-25  9:16   ` Mark H Weaver
  2017-06-26 11:14     ` Ricardo Wurmus
  0 siblings, 1 reply; 12+ messages in thread
From: Mark H Weaver @ 2017-06-25  9:16 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 27467

ludo@gnu.org (Ludovic Courtès) writes:

> Mark H Weaver <mhw@netris.org> skribis:
>
>> I just tried to update my GuixSD system to commit
>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
>> failed with the following error:
>>
>> guix system: error: profile contains conflicting entries for gtk+:out
>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
>> guix system: error:    ... propagated from exo@0.10.3
>> guix system: error:    ... propagated from xfce@4.12.0
>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>> guix system: error:    ... propagated from garcon@0.4.0
>> guix system: error:    ... propagated from xfce@4.12.0
>
> I just tried and Exo builds fine with GTK+3, so I would think this
> reference to GTK+2 was a mistake.  Can you check if it works fine for
> you with this change?

After changing Exo to use Gtk+3, I get this:

guix system: error: profile contains conflicting entries for gtk+:out
guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
guix system: error:    ... propagated from libxfce4ui@4.12.0
guix system: error:    ... propagated from garcon@0.4.0
guix system: error:    ... propagated from xfce@4.12.0
guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
guix system: error:    ... propagated from libxfce4ui@4.12.0
guix system: error:    ... propagated from garcon@0.4.0
guix system: error:    ... propagated from xfce@4.12.0

    Thanks,
      Mark

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-25  9:16   ` Mark H Weaver
@ 2017-06-26 11:14     ` Ricardo Wurmus
  2017-06-26 16:14       ` Ludovic Courtès
  0 siblings, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2017-06-26 11:14 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 27467


Mark H Weaver <mhw@netris.org> writes:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Mark H Weaver <mhw@netris.org> skribis:
>>
>>> I just tried to update my GuixSD system to commit
>>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
>>> failed with the following error:
>>>
>>> guix system: error: profile contains conflicting entries for gtk+:out
>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
>>> guix system: error:    ... propagated from exo@0.10.3
>>> guix system: error:    ... propagated from xfce@4.12.0
>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>> guix system: error:    ... propagated from garcon@0.4.0
>>> guix system: error:    ... propagated from xfce@4.12.0
>>
>> I just tried and Exo builds fine with GTK+3, so I would think this
>> reference to GTK+2 was a mistake.  Can you check if it works fine for
>> you with this change?
>
> After changing Exo to use Gtk+3, I get this:
>
> guix system: error: profile contains conflicting entries for gtk+:out
> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
> guix system: error:    ... propagated from libxfce4ui@4.12.0
> guix system: error:    ... propagated from garcon@0.4.0
> guix system: error:    ... propagated from xfce@4.12.0
> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
> guix system: error:    ... propagated from libxfce4ui@4.12.0
> guix system: error:    ... propagated from garcon@0.4.0
> guix system: error:    ... propagated from xfce@4.12.0

libxfce4ui propagates both gtk+@3 and gtk+@2.  There is no conflict
between these two versions of gtk, because they are installed into
separate sub-directories under $prefix/lib.

How should we handle exceptions like this?  Should packages get a new
property that would allow them to specify that they do not conflict with
a certain variant?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-26 11:14     ` Ricardo Wurmus
@ 2017-06-26 16:14       ` Ludovic Courtès
  2017-06-26 17:03         ` ng0
  2017-06-27  5:25         ` Ricardo Wurmus
  0 siblings, 2 replies; 12+ messages in thread
From: Ludovic Courtès @ 2017-06-26 16:14 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 27467

Ricardo Wurmus <rekado@elephly.net> skribis:

> Mark H Weaver <mhw@netris.org> writes:
>
>> ludo@gnu.org (Ludovic Courtès) writes:
>>
>>> Mark H Weaver <mhw@netris.org> skribis:
>>>
>>>> I just tried to update my GuixSD system to commit
>>>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
>>>> failed with the following error:
>>>>
>>>> guix system: error: profile contains conflicting entries for gtk+:out
>>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
>>>> guix system: error:    ... propagated from exo@0.10.3
>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
>>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>>> guix system: error:    ... propagated from garcon@0.4.0
>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>
>>> I just tried and Exo builds fine with GTK+3, so I would think this
>>> reference to GTK+2 was a mistake.  Can you check if it works fine for
>>> you with this change?
>>
>> After changing Exo to use Gtk+3, I get this:
>>
>> guix system: error: profile contains conflicting entries for gtk+:out
>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>> guix system: error:    ... propagated from garcon@0.4.0
>> guix system: error:    ... propagated from xfce@4.12.0
>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>> guix system: error:    ... propagated from garcon@0.4.0
>> guix system: error:    ... propagated from xfce@4.12.0
>
> libxfce4ui propagates both gtk+@3 and gtk+@2.  There is no conflict
> between these two versions of gtk, because they are installed into
> separate sub-directories under $prefix/lib.

So this is on purpose, right?  Sounds weird no?

> How should we handle exceptions like this?  Should packages get a new
> property that would allow them to specify that they do not conflict with
> a certain variant?

Good question, we could add a property I suppose.

At any rate, we need a quick fix for Xfce.  What’s the best approach?

Ludo’.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-26 16:14       ` Ludovic Courtès
@ 2017-06-26 17:03         ` ng0
  2017-06-27  5:25         ` Ricardo Wurmus
  1 sibling, 0 replies; 12+ messages in thread
From: ng0 @ 2017-06-26 17:03 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 27467

[-- Attachment #1: Type: text/plain, Size: 3059 bytes --]

Ludovic Courtès transcribed 2.4K bytes:
> Ricardo Wurmus <rekado@elephly.net> skribis:
> 
> > Mark H Weaver <mhw@netris.org> writes:
> >
> >> ludo@gnu.org (Ludovic Courtès) writes:
> >>
> >>> Mark H Weaver <mhw@netris.org> skribis:
> >>>
> >>>> I just tried to update my GuixSD system to commit
> >>>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
> >>>> failed with the following error:
> >>>>
> >>>> guix system: error: profile contains conflicting entries for gtk+:out
> >>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
> >>>> guix system: error:    ... propagated from exo@0.10.3
> >>>> guix system: error:    ... propagated from xfce@4.12.0
> >>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
> >>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
> >>>> guix system: error:    ... propagated from garcon@0.4.0
> >>>> guix system: error:    ... propagated from xfce@4.12.0
> >>>
> >>> I just tried and Exo builds fine with GTK+3, so I would think this
> >>> reference to GTK+2 was a mistake.  Can you check if it works fine for
> >>> you with this change?
> >>
> >> After changing Exo to use Gtk+3, I get this:
> >>
> >> guix system: error: profile contains conflicting entries for gtk+:out
> >> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
> >> guix system: error:    ... propagated from libxfce4ui@4.12.0
> >> guix system: error:    ... propagated from garcon@0.4.0
> >> guix system: error:    ... propagated from xfce@4.12.0
> >> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
> >> guix system: error:    ... propagated from libxfce4ui@4.12.0
> >> guix system: error:    ... propagated from garcon@0.4.0
> >> guix system: error:    ... propagated from xfce@4.12.0
> >
> > libxfce4ui propagates both gtk+@3 and gtk+@2.  There is no conflict
> > between these two versions of gtk, because they are installed into
> > separate sub-directories under $prefix/lib.
> 
> So this is on purpose, right?  Sounds weird no?
> 
> > How should we handle exceptions like this?  Should packages get a new
> > property that would allow them to specify that they do not conflict with
> > a certain variant?
> 
> Good question, we could add a property I suppose.
> 
> At any rate, we need a quick fix for Xfce.  What’s the best approach?
> 
> Ludo’.

I guess this is on purpose as xfce4 is in the process of moving everything
from gtk+-2 to gtk+-3.
I have a branch which updates some of the packages but fails for gtk related
reasons as well.
It seems somewhat related, maybe it can help to analyze the/both problem(s),
should I post it separately?
-- 
ng0
OpenPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
infotropique: https://www.infotropique.org
personal: https://ng-0.github.io https://krosos.org/

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-26 16:14       ` Ludovic Courtès
  2017-06-26 17:03         ` ng0
@ 2017-06-27  5:25         ` Ricardo Wurmus
  2017-06-27  7:56           ` Ricardo Wurmus
  1 sibling, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2017-06-27  5:25 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 27467


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

> Ricardo Wurmus <rekado@elephly.net> skribis:
>
>> Mark H Weaver <mhw@netris.org> writes:
>>
>>> ludo@gnu.org (Ludovic Courtès) writes:
>>>
>>>> Mark H Weaver <mhw@netris.org> skribis:
>>>>
>>>>> I just tried to update my GuixSD system to commit
>>>>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
>>>>> failed with the following error:
>>>>>
>>>>> guix system: error: profile contains conflicting entries for gtk+:out
>>>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
>>>>> guix system: error:    ... propagated from exo@0.10.3
>>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
>>>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>>>> guix system: error:    ... propagated from garcon@0.4.0
>>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>>
>>>> I just tried and Exo builds fine with GTK+3, so I would think this
>>>> reference to GTK+2 was a mistake.  Can you check if it works fine for
>>>> you with this change?
>>>
>>> After changing Exo to use Gtk+3, I get this:
>>>
>>> guix system: error: profile contains conflicting entries for gtk+:out
>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>> guix system: error:    ... propagated from garcon@0.4.0
>>> guix system: error:    ... propagated from xfce@4.12.0
>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>> guix system: error:    ... propagated from garcon@0.4.0
>>> guix system: error:    ... propagated from xfce@4.12.0
>>
>> libxfce4ui propagates both gtk+@3 and gtk+@2.  There is no conflict
>> between these two versions of gtk, because they are installed into
>> separate sub-directories under $prefix/lib.
>
> So this is on purpose, right?  Sounds weird no?

It’s not unusual for some GUI libraries to support multiple backends.
It’s a bit weird that this requires propagation, but according to the
comment that’s because of the pkg-config files.

libxfce4ui-1.pc needs propagation of gtk+@2, libxfce4ui-2.pc needs
propagation of gtk+@3.  Maybe we could split that package up, so that
the different variants are provided by separate variants.  Or we could
simply not propagate gtk+@2 and only add it to packages that actually
use gtk+@2.

I’m giving this a try right now.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-27  5:25         ` Ricardo Wurmus
@ 2017-06-27  7:56           ` Ricardo Wurmus
  2017-06-27 13:45             ` Ludovic Courtès
  0 siblings, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2017-06-27  7:56 UTC (permalink / raw)
  To: Ludovic Courtès, Mark H Weaver; +Cc: 27467

[-- Attachment #1: Type: text/plain, Size: 3247 bytes --]


Ricardo Wurmus <rekado@elephly.net> writes:

> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Ricardo Wurmus <rekado@elephly.net> skribis:
>>
>>> Mark H Weaver <mhw@netris.org> writes:
>>>
>>>> ludo@gnu.org (Ludovic Courtès) writes:
>>>>
>>>>> Mark H Weaver <mhw@netris.org> skribis:
>>>>>
>>>>>> I just tried to update my GuixSD system to commit
>>>>>> c57b56722f6c167c5a285f47802047de85a356ae on master.  "guix system build"
>>>>>> failed with the following error:
>>>>>>
>>>>>> guix system: error: profile contains conflicting entries for gtk+:out
>>>>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/901ify6fr2zlr2y2acpvlqr8lygmwj98-gtk+-2.24.31
>>>>>> guix system: error:    ... propagated from exo@0.10.3
>>>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/fhqaljm8cf78irhqjbrm8n0ri1k2cznm-gtk+-3.22.15
>>>>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>>>>> guix system: error:    ... propagated from garcon@0.4.0
>>>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>>>
>>>>> I just tried and Exo builds fine with GTK+3, so I would think this
>>>>> reference to GTK+2 was a mistake.  Can you check if it works fine for
>>>>> you with this change?
>>>>
>>>> After changing Exo to use Gtk+3, I get this:
>>>>
>>>> guix system: error: profile contains conflicting entries for gtk+:out
>>>> guix system: error:   first entry: gtk+@2.24.31:out /gnu/store/0m9hpckvamd048zgsrhx1dx2s5hrg1qk-gtk+-2.24.31
>>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>>> guix system: error:    ... propagated from garcon@0.4.0
>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>> guix system: error:   second entry: gtk+@3.22.15:out /gnu/store/hc090rjjka3r9spvzl7yn5hcc2xgrgdh-gtk+-3.22.15
>>>> guix system: error:    ... propagated from libxfce4ui@4.12.0
>>>> guix system: error:    ... propagated from garcon@0.4.0
>>>> guix system: error:    ... propagated from xfce@4.12.0
>>>
>>> libxfce4ui propagates both gtk+@3 and gtk+@2.  There is no conflict
>>> between these two versions of gtk, because they are installed into
>>> separate sub-directories under $prefix/lib.
>>
>> So this is on purpose, right?  Sounds weird no?
>
> It’s not unusual for some GUI libraries to support multiple backends.
> It’s a bit weird that this requires propagation, but according to the
> comment that’s because of the pkg-config files.
>
> libxfce4ui-1.pc needs propagation of gtk+@2, libxfce4ui-2.pc needs
> propagation of gtk+@3.  Maybe we could split that package up, so that
> the different variants are provided by separate variants.  Or we could
> simply not propagate gtk+@2 and only add it to packages that actually
> use gtk+@2.
>
> I’m giving this a try right now.

What do you think of the attached patches?  The first makes libxfce4ui
only propagate the latest gtk+, so I added gtk+-2 where needed.  The
second removes “exo” from the “xfce” meta-package, because it doesn’t
seem needed.  “exo” propagates “gtk+-2”, so it would be hard to prevent
the conflict otherwise.

These patches are only a temporary fix until we can find a way to mark
certain conflicts as unproblematic.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-libxfce4ui-Do-not-propagate-gtk-2.patch --]
[-- Type: text/x-patch, Size: 2809 bytes --]

From 9cbb90bfaeae0aa8fbdcfa0aa212dc1b3acac359 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Tue, 27 Jun 2017 09:31:50 +0200
Subject: [PATCH 1/2] gnu: libxfce4ui: Do not propagate gtk+-2.

Propagation of both gtk+ and gtk+-2 causes a conflict to be detected,
preventing the installation of xfce.

* gnu/packages/xfce.scm (libxfce4ui)[propagated-inputs]: Move "gtk+-2"...
[inputs]: ...to here.
(garcon)[inputs]: Add "gtk+-2".
(xfce4-appfinder)[inputs]: Add "gtk+-2".
(xfce4-power-manager)[inputs]: Add "gtk+-2".
(ristretto)[inputs]: Add "gtk+-2".
---
 gnu/packages/xfce.scm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index d7d1372dd..c9d519122 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -159,13 +159,15 @@ storage system.")
      `(("pkg-config" ,pkg-config)
        ("intltool" ,intltool)))
     (propagated-inputs
-     `(("gtk+-2" ,gtk+-2)  ; required by libxfce4ui-1.pc
-       ("gtk+-3" ,gtk+)    ; required by libxfce4ui-2.pc
+     `(("gtk+-3" ,gtk+)    ; required by libxfce4ui-2.pc
        ;; libxfce4kbd-private-2.pc refers to all these.
        ("libxfce4util" ,libxfce4util)
        ("xfconf" ,xfconf)))
     (inputs `(("libsm" ,libsm)
               ("libice" ,libice)
+              ;; FIXME: required by libxfce4ui-1.pc, so should be propagated,
+              ;; but will lead to a conflict with gtk+.
+              ("gtk+-2" ,gtk+-2)
               ("startup-notification" ,startup-notification)))
     (home-page "http://www.xfce.org/")
     (synopsis "Widgets library for Xfce")
@@ -221,6 +223,8 @@ development.")
      `(("pkg-config" ,pkg-config)
        ("intltool" ,intltool)
        ("glib:bin" ,glib "bin")))
+    (inputs
+     `(("gtk+" ,gtk+-2)))
     (propagated-inputs
      `(("libxfce4ui" ,libxfce4ui))) ; required by garcon-gtk2-1.pc
     (home-page "http://www.xfce.org/")
@@ -452,6 +456,7 @@ per window.")
        ("intltool" ,intltool)))
     (inputs
      `(("garcon" ,garcon)
+       ("gtk+" ,gtk+-2)
        ("libxfce4ui" ,libxfce4ui)))
     (home-page "http://www.xfce.org/")
     (synopsis "Xfce application finder")
@@ -750,6 +755,7 @@ system resources, while still being visually appealing and user friendly.")
        ("intltool" ,intltool)))
     (inputs
      `(("lbxrandr" ,libxrandr)
+       ("gtk+" ,gtk+-2)
        ("upower" ,upower)
        ("libnotify" ,libnotify)
        ("libxfce4ui" ,libxfce4ui)))
@@ -783,6 +789,7 @@ inhibit interface which allows applications to prevent automatic sleep.")
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("desktop-file-utils" ,desktop-file-utils)
+       ("gtk+" ,gtk+-2)
        ("libexif" ,libexif)
        ("libxfce4ui" ,libxfce4ui)
        ("librsvg" ,librsvg)
-- 
2.12.2


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-xfce-Do-not-propagate-exo.patch --]
[-- Type: text/x-patch, Size: 938 bytes --]

From a9037e23c3ccf656e5c2d53c22ff4b22c9db84e6 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Tue, 27 Jun 2017 09:51:33 +0200
Subject: [PATCH 2/2] gnu: xfce: Do not propagate exo.

* gnu/packages/xfce.scm (xfce)[propagated-inputs]: Remove exo.
---
 gnu/packages/xfce.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index c9d519122..2965b4340 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -705,8 +705,7 @@ on your desktop.")
     (build-system trivial-build-system)
     (arguments '(#:builder (mkdir %output)))
     (propagated-inputs
-     `(("exo"                  ,exo)
-       ("garcon"               ,garcon)
+     `(("garcon"               ,garcon)
        ("gnome-icon-theme"     ,gnome-icon-theme)
        ("gtk-xfce-engine"      ,gtk-xfce-engine)
        ("hicolor-icon-theme"   ,hicolor-icon-theme)
-- 
2.12.2


[-- Attachment #4: Type: text/plain, Size: 89 bytes --]


--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-27  7:56           ` Ricardo Wurmus
@ 2017-06-27 13:45             ` Ludovic Courtès
  2017-06-29 14:12               ` Ricardo Wurmus
  0 siblings, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2017-06-27 13:45 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 27467

Hi!

Ricardo Wurmus <rekado@elephly.net> skribis:

> What do you think of the attached patches?  The first makes libxfce4ui
> only propagate the latest gtk+, so I added gtk+-2 where needed.  The
> second removes “exo” from the “xfce” meta-package, because it doesn’t
> seem needed.  “exo” propagates “gtk+-2”, so it would be hard to prevent
> the conflict otherwise.
>
> These patches are only a temporary fix until we can find a way to mark
> certain conflicts as unproblematic.

These patches seem reasonable to me.

Another option (perhaps slightly less intrusive) would be to implement
the ‘xfce’ meta-package using ‘union-build’ instead of
‘propagated-inputs’.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-27 13:45             ` Ludovic Courtès
@ 2017-06-29 14:12               ` Ricardo Wurmus
  2017-06-29 16:01                 ` Mark H Weaver
  0 siblings, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2017-06-29 14:12 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 27467-done

Hi,

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

> Ricardo Wurmus <rekado@elephly.net> skribis:
>
>> What do you think of the attached patches?  The first makes libxfce4ui
>> only propagate the latest gtk+, so I added gtk+-2 where needed.  The
>> second removes “exo” from the “xfce” meta-package, because it doesn’t
>> seem needed.  “exo” propagates “gtk+-2”, so it would be hard to prevent
>> the conflict otherwise.
>>
>> These patches are only a temporary fix until we can find a way to mark
>> certain conflicts as unproblematic.
>
> These patches seem reasonable to me.
>
> Another option (perhaps slightly less intrusive) would be to implement
> the ‘xfce’ meta-package using ‘union-build’ instead of
> ‘propagated-inputs’.

Yes, that’s better.  I pushed two commits:

  gnu: libxfce4ui: Do not propagate gtk+-2.
  (b8d3a000efca885180277358caa3c4fe604168a5)

  gnu: xfce: Build union instead of propagating inputs.
  (c860d6ef235b47ec8181fbf390e0b42fbc95dcfe)

With these two commits I can install xfce without problems.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#27467: Xfce broken, because it propagates two different versions of gtk+
  2017-06-29 14:12               ` Ricardo Wurmus
@ 2017-06-29 16:01                 ` Mark H Weaver
  0 siblings, 0 replies; 12+ messages in thread
From: Mark H Weaver @ 2017-06-29 16:01 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 27467-done

Ricardo Wurmus <rekado@elephly.net> writes:

> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Another option (perhaps slightly less intrusive) would be to implement
>> the ‘xfce’ meta-package using ‘union-build’ instead of
>> ‘propagated-inputs’.
>
> Yes, that’s better.  I pushed two commits:
>
>   gnu: libxfce4ui: Do not propagate gtk+-2.
>   (b8d3a000efca885180277358caa3c4fe604168a5)
>
>   gnu: xfce: Build union instead of propagating inputs.
>   (c860d6ef235b47ec8181fbf390e0b42fbc95dcfe)
>
> With these two commits I can install xfce without problems.

Thank you! :)

     Mark

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-06-29 16:03 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-23 23:47 bug#27467: Xfce broken, because it propagates two different versions of gtk+ Mark H Weaver
2017-06-24  9:41 ` ng0
2017-06-24 21:53 ` Ludovic Courtès
2017-06-25  9:16   ` Mark H Weaver
2017-06-26 11:14     ` Ricardo Wurmus
2017-06-26 16:14       ` Ludovic Courtès
2017-06-26 17:03         ` ng0
2017-06-27  5:25         ` Ricardo Wurmus
2017-06-27  7:56           ` Ricardo Wurmus
2017-06-27 13:45             ` Ludovic Courtès
2017-06-29 14:12               ` Ricardo Wurmus
2017-06-29 16:01                 ` Mark H Weaver

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).