Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 586760 - Can't set wayland USE flag
Summary: Can't set wayland USE flag
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-22 21:16 UTC by Thomas Capricelli
Modified: 2016-06-23 11:31 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Capricelli 2016-06-22 21:16:24 UTC
For months if not years, i've had to remove the 'wayland' USE flag because i'm unable to find a suitable configuration that doesn't break portage.

Whatever i try, portage refuses to emerge. It seems that:

* wayland USE flag requires also the 'egl' USE flag and the 'gles' USE flag (according to, for example, media-libs/gst-plugins-bad)
* gles requires 'gles2' (kinfocenter for example)
* gles2 can't be set altogether with opengl (webkit-gtk)
* and it goes on ....

Can someone explain how to have the wayland USE flag ? Or if is not possible, we should consider removing this flag, shouldn't we ?
Comment 1 Ben Kohler gentoo-dev 2016-06-22 21:27:32 UTC
I think you need to hit up one of our support venues like IRC or forums, there is no bug here.

As a hint, if USE=wayland on gst-plugins-bad also requires egl, you can set egl just on this package.  If you set it globally, it may have unintended consequences.

https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE#Declaring_USE_flags_for_individual_packages
Comment 2 Thomas Capricelli 2016-06-22 21:42:34 UTC
I know how to set a USE flag on only one package. I'm asking help about how to use the wayland USE flag.

I'm far from being a gentoo newby, i've been using it for very very long, but I can't figure out how.

Is there any documentation about how related/compatible the following flags are :
* gles
* gles2
* wayland
* opengl
* egl
* webgl

You seem to say that egl is a bad idea, why ? How could i have known ?
Comment 3 Michael Palimaka (kensington) gentoo-dev 2016-06-23 08:45:54 UTC
I agree with Ben that this bug is very general so there's not much we can do about it.

Concerns regarding specific packages however could be worth investigating, so I'd encourage filing individual bugs in these cases.

(In reply to Thomas Capricelli from comment #0)
> * wayland USE flag requires also the 'egl' USE flag and the 'gles' USE flag
> (according to, for example, media-libs/gst-plugins-bad)

According to upstream[1], wayland requires egl and gles2 to avoid dependencies on X. Many packages handle this appropriately, but there is still some inconsistency throughout the tree.

Regarding media-libs/gst-plugins-bad specifically, it does have egl/gles*2* USE flags but has some really funny looking restrictions:

REQUIRED_USE="
        egl? ( !gles2 )
        gles2? ( !opengl )
        opengl? ( X )
        wayland? ( egl )
"

This was supposed to have been improved/fixed in bug #525936 but is clearly not quite there yet.

> * gles requires 'gles2' (kinfocenter for example)

I've already reworked the gles logic in kinfocenter to try and be a bit more sensible. This includes the gles USE flag becoming gles2 from 5.7.0.

> * gles2 can't be set altogether with opengl (webkit-gtk)

This is a tricky one. In Qt we took a different approach, with the gles2 USE flag meaning GLES *instead of* full OpenGL. This is nice because it avoids the annoying REQUIRED_USE, but it does lack the clarity of the GNOME team's approach. As a result we get complaints from time to time about the lack of full OpenGL support in consuming packages.

1: https://wayland.freedesktop.org/faq.html#heading_toc_j_12
Comment 4 Thomas Capricelli 2016-06-23 11:31:30 UTC
Thanks for those information, that's already far far better that what I had.

I somehow managed to get my system working, here's how I did for the record:

Global USE flags in make.conf: wayland gles

Local USE flags (package.use/*):
  media-libs/gst-plugins-bad egl
  media-libs/mesa egl gles2
  kde-plasma/kinfocenter -gles