Re: [gentoo-dev] USE="gui"

2015-09-12 Thread hasufell
On 09/12/2015 01:52 AM, Daniel Campbell wrote:
> On 09/11/2015 01:34 PM, hasufell wrote:
>> I already use IUSE=gui and will keep doing that.
> 
>> USE flags in gentoo are the best and the worst thing at the same
>> time. They are also mostly the main reason people don't like
>> gentoo, because USE flags are (for todays situation) pretty much
>> not an appropriate pattern to reflect real-world configuration. To
>> be more precise... USE flags are first-class citizens and there is
>> only one layer of them. There's not configuration
>> pattern/abstraction behind them. If you wonder what I am talking
>> about, have a look at NixOS. The reason we lack proper declarative
>> configuration is also the reason we had to introduce this ugliness
>> called REQUIRED_USE. Instead of saying "gui.gtk" we say 
>> "REQUIRED_USE="gui? ( || (  gtk ... ) )". And it will get worse. I 
>> wonder when people start realizing that.
> 
> 
> So are you suggesting maybe we come up with namespaced USE flags? That
> would be interesting.
> 

I'm not sure we can do that without breaking gentoo. At least, it would
be a _huge_ EAPI change.

It would require a lot of PM work, would break our configuration format
(if you want to do it properly) and probably have other side effects for
running systems.

And if you have followed NixOS development... you know that you can
screw this up as well, because consistency is even more important if you
really want declarative configuration. And I'm not sure there is enough
interest in consistency in gentoo. People seem to be fine with micro
managing USE flags in order to achieve a particular configuration state
which can break arbitrarily on any update.



Re: [gentoo-dev] USE="gui"

2015-09-11 Thread Rich Freeman
On Fri, Sep 11, 2015 at 2:03 PM, Ian Stakenvicius  wrote:
> I'm just wondering if we're jumping the gun a little bit on
> IUSE="gui"..  yes it'll be nice to have one flag that "just works"
> for anyone not caring about the details, but it'll also mean
> propagating a slew of REQUIRED_USE=" {X,wayland,gtk,qt4,qt5}? ( gui
> )" entries and a lot of extra use-defaults which may or may not
> cleanup the sub-profiles of desktop/ 

A completely valid concern.  Of course, there is no requirement that
all this stuff happen overnight.

> Also, I believe we need to have the conversation about the pros and
> cons of IUSE=gui here before the council meeting, yes?

You can read my original post to -project:
http://article.gmane.org/gmane.linux.gentoo.project/4776

I did start it out with my reservation that this probably wouldn't
come to a vote.  However, I did want to at least toss out a specific
proposal so that we have something to throw darts at, vs just going
around the room saying "sounds like something that might need some
attention."

This is of course an opportunity to have that conversation, but I
recognize that we're starting pretty late considering the timing of
the meeting.  I didn't really intend to actually push for a vote on
this.

Most likely we'll express thoughts both pro and con, and then take it
back to the lists and maybe try to finalize something next month.

My sense is that this has been going on for a long time though and
we're seeing problems over and over.  I agree that wayland is still a
bit off in the future, but I can see it coming up again there.  In the
meantime both qt and gtk have run into this.  I don't want to do
something just to do something, but it seems like my proposal is along
the lines of what most have been talking about.

-- 
Rich



Re: [gentoo-dev] USE="gui"

2015-09-11 Thread hasufell
On 09/11/2015 08:03 PM, Ian Stakenvicius wrote:
> 
> So, IUSE="X" has generally been used for gui, but more technically
> it's used to depend on and build against x11-libs/* packages.  The
> fact that this gives a GUI is practically a side-effect.  When
> wayland comes along, do these packages still build against
> x11-libs/* to support wayland?
> 
> I'm just wondering if we're jumping the gun a little bit on
> IUSE="gui"..  yes it'll be nice to have one flag that "just works"
> for anyone not caring about the details, but it'll also mean
> propagating a slew of REQUIRED_USE=" {X,wayland,gtk,qt4,qt5}? ( gui
> )" entries and a lot of extra use-defaults which may or may not
> cleanup the sub-profiles of desktop/ 
> 
> Also, I believe we need to have the conversation about the pros and
> cons of IUSE=gui here before the council meeting, yes?
> 


I already use IUSE=gui and will keep doing that.

USE flags in gentoo are the best and the worst thing at the same time.
They are also mostly the main reason people don't like gentoo, because
USE flags are (for todays situation) pretty much not an appropriate
pattern to reflect real-world configuration. To be more precise... USE
flags are first-class citizens and there is only one layer of them.
There's not configuration pattern/abstraction behind them. If you wonder
what I am talking about, have a look at NixOS. The reason we lack proper
declarative configuration is also the reason we had to introduce this
ugliness called REQUIRED_USE. Instead of saying "gui.gtk" we say
"REQUIRED_USE="gui? ( || (  gtk ... ) )". And it will get worse. I
wonder when people start realizing that.



[gentoo-dev] USE="gui"

2015-09-11 Thread Ian Stakenvicius
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On 11/09/15 01:41 PM, Rich Freeman wrote:
> On Fri, Sep 11, 2015 at 1:11 PM, Duncan <1i5t5.dun...@cox.net>
> wrote:
>> Rich Freeman posted on Fri, 11 Sep 2015 08:13:48 -0400 as
>> excerpted:
>> 
>>> USE=gui or something like that if the main effect is to have
>>> a gui or not. That is the sort of thing that SHOULD go in
>>> make.conf or in a profile. If disabling gtk makes it a
>>> console-only application then use the gui flag.
>> 
>> I like the general proposal, but since it's going to council,
>> can we try to kill another bird with the same stone?  This
>> USE=gui helps...
>> 
>> Wayland's coming, and to the extent that USE=X has previously
>> indicated a GUI, much like USE=gtk and USE=qt indicating the
>> same thing, we're going to have problems.
>> 
>> Can we make USE=gui the generic policy for that, and deprecate
>> more specific forms for choosing /any/ gui, so they can be used
>> for choosing /which/ gui?
> 
> That was exactly why I used "gui" and not "X".  We're going to
> run into the exact same problem once Wayland comes along with the
> way things have been done so far.
> 

So, IUSE="X" has generally been used for gui, but more technically
it's used to depend on and build against x11-libs/* packages.  The
fact that this gives a GUI is practically a side-effect.  When
wayland comes along, do these packages still build against
x11-libs/* to support wayland?

I'm just wondering if we're jumping the gun a little bit on
IUSE="gui"..  yes it'll be nice to have one flag that "just works"
for anyone not caring about the details, but it'll also mean
propagating a slew of REQUIRED_USE=" {X,wayland,gtk,qt4,qt5}? ( gui
)" entries and a lot of extra use-defaults which may or may not
cleanup the sub-profiles of desktop/ 

Also, I believe we need to have the conversation about the pros and
cons of IUSE=gui here before the council meeting, yes?


-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iF4EAREIAAYFAlXzF48ACgkQAJxUfCtlWe0ZQwD8CPt1rOkynOgb/as1gH/u2iYY
Du/EFPwleMDHVgMJDFYBAOfjguA8D1xTPJU9vzsvBf+y4rVFVvvFHuIX8+yyadjD
=SnN3
-END PGP SIGNATURE-



Re: [gentoo-dev] USE="gui"

2015-09-11 Thread Daniel Campbell
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On 09/11/2015 01:34 PM, hasufell wrote:
> On 09/11/2015 08:03 PM, Ian Stakenvicius wrote:
>> 
>> So, IUSE="X" has generally been used for gui, but more
>> technically it's used to depend on and build against x11-libs/*
>> packages.  The fact that this gives a GUI is practically a
>> side-effect.  When wayland comes along, do these packages still
>> build against x11-libs/* to support wayland?
>> 
>> I'm just wondering if we're jumping the gun a little bit on 
>> IUSE="gui"..  yes it'll be nice to have one flag that "just
>> works" for anyone not caring about the details, but it'll also
>> mean propagating a slew of REQUIRED_USE="
>> {X,wayland,gtk,qt4,qt5}? ( gui )" entries and a lot of extra
>> use-defaults which may or may not cleanup the sub-profiles of
>> desktop/ 
>> 
>> Also, I believe we need to have the conversation about the pros
>> and cons of IUSE=gui here before the council meeting, yes?
>> 
> 
> 
> I already use IUSE=gui and will keep doing that.
> 
> USE flags in gentoo are the best and the worst thing at the same
> time. They are also mostly the main reason people don't like
> gentoo, because USE flags are (for todays situation) pretty much
> not an appropriate pattern to reflect real-world configuration. To
> be more precise... USE flags are first-class citizens and there is
> only one layer of them. There's not configuration
> pattern/abstraction behind them. If you wonder what I am talking
> about, have a look at NixOS. The reason we lack proper declarative
> configuration is also the reason we had to introduce this ugliness
> called REQUIRED_USE. Instead of saying "gui.gtk" we say 
> "REQUIRED_USE="gui? ( || (  gtk ... ) )". And it will get worse. I 
> wonder when people start realizing that.
> 

So are you suggesting maybe we come up with namespaced USE flags? That
would be interesting.

- -- 
Daniel Campbell - Gentoo Developer
OpenPGP Key: 0x1EA055D6 @ hkp://keys.gnupg.net
fpr: AE03 9064 AE00 053C 270C  1DE4 6F7A 9091 1EA0 55D6
-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iQIcBAEBCAAGBQJV82lLAAoJEAEkDpRQOeFwiUAQAMoAzkd1NKwDaMeiKSwD1pIa
0RhytZ+YFMQp+A+eLuIIG7yzpbomzwMuQGe1YqHEAHibZx/C/Dfjdx5MMyAGAnkk
Am+ysOoHOZdGn/F5AMWNko4HZ+QxD22a1z6Mbkf00PE5J53vzgCAPh7nX6wRYFUP
Ag54pWCXP8xAN6hMmHtcyxz3vZ2s4AZfTvAlLcwVSCJmUa4Ki+64T/L8I6UMUC2h
qabu46RePWYDaTBDw7HB29Yja/UggGC7S9kTIvJYCwfyCbENOIa6kOU/qKeUP+Im
6blr8WfdWMUVlYxKlbPaibPQKUw3KCQIylLlp6Jn8Ix8tePyxm+086AE7q4qhbQX
64d6zbB+TaK8JC+ujWf90DmlXU0nTyMZ34Cooil1PwD5/b70lcSmTjxmffqSRG0w
KjUlI7op63qtiJ1r2PyLx1PliC6DVvhV9cZqO7oSB+mNi3oPKFCBNvIyhiCMQxzL
PrT80pF9HxloOarIMy0BCoHcr+qYYaoB20WqNC4XfM19iWsXQkvFCyUBFb9VxZd0
+EcGRRoVwr1UZjO8zYx5l1gdsvtck1Ka4WZgqVqeHFOgR+HJ18s5IfDLdSjOcDn4
F+XAewblzRAGsF4zM59q7ZIb70mmJmcAN6c1EmZwdrh0OAMH+HhXB97Z5tI/e3xY
8ouxCkDbfXutEydYI7mP
=jIAs
-END PGP SIGNATURE-



Re: [gentoo-dev] USE=gui? (was: About how to handle wxGTK based packages with gnome profiles)

2012-04-16 Thread Michał Górny
On Tue, 10 Apr 2012 09:12:16 +0200
Paweł Hajdan, Jr. phajdan...@gentoo.org wrote:

 On 4/10/12 8:58 AM, Pacho Ramos wrote:
  Other option would be to enable wxwidgets by default for that
  profiles.
 
 I prefer this. Changing USE flag meaning in a counter-intuitive way
 (to let gtk mean wxwidgets) would seem frustrating to me.
 
 With wxwidgets enabled by default people will get the most likely
 desired result (i.e. GUI) out of the box, and setting
 USE=-wxwidgets will have desired effect.
 
 Note that with USE=gtk really meaning USE=wxwidgets, -wxwidgets
 would have no effect on such a package, which is the potentially
 surprising behavior I mentioned earlier.

On the other hand, we should ask ourselves whether the USE flags are
very intuitive right now.

Say, we have USE=ssl which enables SSL support. We already agreed
that's the correct meaning of it, and USE=gnutls,openssl,nss are just
to be used when there's more than one implementation to choose from.

Shouldn't we have USE=gui in a similar fashion? Most of the devs
probably prefer the way 'I want GUI only if it's using my favorite
toolkit'. But users OTOH may prefer saying 'I want GUI in this app, no
matter what it uses'.

This would probably handle the wxwidgets case most correct, having it
under USE=gui or similar.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] USE=gui?

2012-04-16 Thread Samuli Suominen

On 04/16/2012 11:11 AM, Michał Górny wrote:

On Tue, 10 Apr 2012 09:12:16 +0200
Paweł Hajdan, Jr.phajdan...@gentoo.org  wrote:


On 4/10/12 8:58 AM, Pacho Ramos wrote:

Other option would be to enable wxwidgets by default for that
profiles.


I prefer this. Changing USE flag meaning in a counter-intuitive way
(to let gtk mean wxwidgets) would seem frustrating to me.

With wxwidgets enabled by default people will get the most likely
desired result (i.e. GUI) out of the box, and setting
USE=-wxwidgets will have desired effect.

Note that with USE=gtk really meaning USE=wxwidgets, -wxwidgets
would have no effect on such a package, which is the potentially
surprising behavior I mentioned earlier.


On the other hand, we should ask ourselves whether the USE flags are
very intuitive right now.

Say, we have USE=ssl which enables SSL support. We already agreed
that's the correct meaning of it, and USE=gnutls,openssl,nss are just
to be used when there's more than one implementation to choose from.


USE=ssl is also meaning OpenSSL and there should be no USE=openssl


Shouldn't we have USE=gui in a similar fashion? Most of the devs
probably prefer the way 'I want GUI only if it's using my favorite
toolkit'. But users OTOH may prefer saying 'I want GUI in this app, no
matter what it uses'.

This would probably handle the wxwidgets case most correct, having it
under USE=gui or similar.



-1, this would only add inconsistency / complexity to tree with packages 
having multiple graphical toolkits to pick from


should be kept the way it is

- Samuli



Re: [gentoo-dev] USE=gui?

2012-04-16 Thread Alexis Ballier
On Mon, 16 Apr 2012 11:22:22 +0300
Samuli Suominen ssuomi...@gentoo.org wrote:

 On 04/16/2012 11:11 AM, Michał Górny wrote:
  On Tue, 10 Apr 2012 09:12:16 +0200
  Paweł Hajdan, Jr.phajdan...@gentoo.org  wrote:
 
  On 4/10/12 8:58 AM, Pacho Ramos wrote:
  Other option would be to enable wxwidgets by default for that
  profiles.
 
  I prefer this. Changing USE flag meaning in a counter-intuitive way
  (to let gtk mean wxwidgets) would seem frustrating to me.
 
  With wxwidgets enabled by default people will get the most likely
  desired result (i.e. GUI) out of the box, and setting
  USE=-wxwidgets will have desired effect.
 
  Note that with USE=gtk really meaning USE=wxwidgets, -wxwidgets
  would have no effect on such a package, which is the potentially
  surprising behavior I mentioned earlier.
 
  On the other hand, we should ask ourselves whether the USE flags are
  very intuitive right now.
 
  Say, we have USE=ssl which enables SSL support. We already agreed
  that's the correct meaning of it, and USE=gnutls,openssl,nss are
  just to be used when there's more than one implementation to choose
  from.
 
 USE=ssl is also meaning OpenSSL and there should be no USE=openssl
 
  Shouldn't we have USE=gui in a similar fashion? Most of the devs
  probably prefer the way 'I want GUI only if it's using my favorite
  toolkit'. But users OTOH may prefer saying 'I want GUI in this app,
  no matter what it uses'.
 
  This would probably handle the wxwidgets case most correct, having
  it under USE=gui or similar.
 
 
 -1, this would only add inconsistency / complexity to tree with
 packages having multiple graphical toolkits to pick from
 
 should be kept the way it is

or maybe adding useflag properties in a future eapi, or meta
useflags abusing REQUIRED_USE:

gui? ( || ( wxwidgets gtk fltk ) )

and then the PM could support 'I want GUI in this app, no matter what it
uses' by automatically adding the first pick to package.use


not sure if its desirable though



Re: [gentoo-dev] USE=gui?

2012-04-16 Thread Michał Górny
On Mon, 16 Apr 2012 11:22:22 +0300
Samuli Suominen ssuomi...@gentoo.org wrote:

 On 04/16/2012 11:11 AM, Michał Górny wrote:
  On Tue, 10 Apr 2012 09:12:16 +0200
  Paweł Hajdan, Jr.phajdan...@gentoo.org  wrote:
 
  On 4/10/12 8:58 AM, Pacho Ramos wrote:
  Other option would be to enable wxwidgets by default for that
  profiles.
 
  I prefer this. Changing USE flag meaning in a counter-intuitive way
  (to let gtk mean wxwidgets) would seem frustrating to me.
 
  With wxwidgets enabled by default people will get the most likely
  desired result (i.e. GUI) out of the box, and setting
  USE=-wxwidgets will have desired effect.
 
  Note that with USE=gtk really meaning USE=wxwidgets, -wxwidgets
  would have no effect on such a package, which is the potentially
  surprising behavior I mentioned earlier.
 
  On the other hand, we should ask ourselves whether the USE flags are
  very intuitive right now.
 
  Say, we have USE=ssl which enables SSL support. We already agreed
  that's the correct meaning of it, and USE=gnutls,openssl,nss are
  just to be used when there's more than one implementation to choose
  from.
 
 USE=ssl is also meaning OpenSSL and there should be no USE=openssl

There could be one if an ebuild wishes to use non-openssl impl by
default but allows user to force openssl.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature