Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Gentoo Development (http://www.linux-archive.org/gentoo-development/)
-   -   "X" vs "gtk" USE flags (http://www.linux-archive.org/gentoo-development/322472-x-vs-gtk-use-flags.html)

Nikos Chantziaras 02-08-2010 10:15 AM

"X" vs "gtk" USE flags
 
Hello. Please don't be too harsh if I got this wrong or if this looks
like whining :P


A lot of ebuilds seem to ignore the "X" USE flag and instead only have
"gtk", "qt" and the like. This should be declared absolutely wrong,
IMHO. When a program provides a command-line tool and a GUI tool, and
the GUI tool uses only one toolkit, then the USE flag should be "X".
"gtk" vs "qt" vs "fltk" etc should be used only in cases where a program
can be built with either of those toolkits. When there's only one
choice, then this doesn't make sense. Isn't this what the "X" USE flag
is there for in the first place? Having a package where, say, Gtk is
*not* optional having a "gtk" USE flag doesn't make sense. The X tool
of that package is optional, but Gtk is not optional for the X tool.


A Gnome user probably has "X gtk -qt" in make.conf, while a KDE user has
"X qt -gtk" in hope to have programs that support both Gtk and Qt being
built with the toolkit that is more native to his DE. When a package
has a GUI tool that is able to only use one of those toolkits, people
who have it disabled in make.conf will get no GUI tool at all even
though they have "X" in their USE flags.


I hope I was able to explain the problem (as I see it) correctly :P If
people agree with me, it might be a good idea for maintainers of
packages that behave like that to start using "X" as the USE flag that
controls building of the packages GUI tools.

Tomáš Chvátal 02-08-2010 10:30 AM

"X" vs "gtk" USE flags
 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dne 8.2.2010 12:15, Nikos Chantziaras napsal(a):
> Hello. Please don't be too harsh if I got this wrong or if this looks
> like whining :P
>
> A lot of ebuilds seem to ignore the "X" USE flag and instead only have
> "gtk", "qt" and the like. This should be declared absolutely wrong,
> IMHO. When a program provides a command-line tool and a GUI tool, and
> the GUI tool uses only one toolkit, then the USE flag should be "X".
> "gtk" vs "qt" vs "fltk" etc should be used only in cases where a program
> can be built with either of those toolkits. When there's only one
> choice, then this doesn't make sense. Isn't this what the "X" USE flag
> is there for in the first place? Having a package where, say, Gtk is
> *not* optional having a "gtk" USE flag doesn't make sense. The X tool
> of that package is optional, but Gtk is not optional for the X tool.
>
> A Gnome user probably has "X gtk -qt" in make.conf, while a KDE user has
> "X qt -gtk" in hope to have programs that support both Gtk and Qt being
> built with the toolkit that is more native to his DE. When a package
> has a GUI tool that is able to only use one of those toolkits, people
> who have it disabled in make.conf will get no GUI tool at all even
> though they have "X" in their USE flags.
>
> I hope I was able to explain the problem (as I see it) correctly :P If
> people agree with me, it might be a good idea for maintainers of
> packages that behave like that to start using "X" as the USE flag that
> controls building of the packages GUI tools.
>
>
Sounds sane. For correct usage lately the mplayer ebuild was rewritten
this way.

Might be good idea to open tracker for these and all bugs cced to it. So
interested persons can fix it.

Note for maintainers: qa bugs are considered as issue when adding new
packages. In longer perspective it is good to have them fixed, but you
don't have to proactively fix old packages. Writing this before people
starts complaining we are again filling lots of bugs.

@qa: any objections against me opening the tracker?

To sum up the issue:
use X wrap all other widget useflags if there is CLI interface
available, so if user don't want X usage for package he just set -X and
rest widget flags don't matter at all.

Tomas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAktv9fAACgkQHB6c3gNBRYdbfQCdEXeFhVbCJ/ci0yl3Z9aT/sLU
d8MAn3Y0RjOioEHxNEPEGgjKO42KtoQ3
=57xz
-----END PGP SIGNATURE-----

AllenJB 02-08-2010 10:36 AM

"X" vs "gtk" USE flags
 
On 08/02/10 11:15, Nikos Chantziaras wrote:
> Hello. Please don't be too harsh if I got this wrong or if this looks
> like whining :P
>
> A lot of ebuilds seem to ignore the "X" USE flag and instead only have
> "gtk", "qt" and the like. This should be declared absolutely wrong,
> IMHO. When a program provides a command-line tool and a GUI tool, and
> the GUI tool uses only one toolkit, then the USE flag should be "X".
> "gtk" vs "qt" vs "fltk" etc should be used only in cases where a program
> can be built with either of those toolkits. When there's only one
> choice, then this doesn't make sense. Isn't this what the "X" USE flag
> is there for in the first place? Having a package where, say, Gtk is
> *not* optional having a "gtk" USE flag doesn't make sense. The X tool
> of that package is optional, but Gtk is not optional for the X tool.
>
> A Gnome user probably has "X gtk -qt" in make.conf, while a KDE user has
> "X qt -gtk" in hope to have programs that support both Gtk and Qt being
> built with the toolkit that is more native to his DE. When a package
> has a GUI tool that is able to only use one of those toolkits, people
> who have it disabled in make.conf will get no GUI tool at all even
> though they have "X" in their USE flags.
>
> I hope I was able to explain the problem (as I see it) correctly :P If
> people agree with me, it might be a good idea for maintainers of
> packages that behave like that to start using "X" as the USE flag that
> controls building of the packages GUI tools.
>
>
I don't see that either system makes particularly more sense than the
other.

The only situation that comes immediately to mind is: Under the current
system, if packages add or remove support for multiple toolkits, the
changes are trivial, but under your system it would invoke shuffling use
flags around (which could easily affect dependencies in other packages).
It would also not be immediately clear which toolkits support has been
added/removed under the proposed system (since a package would go from,
for example, having use flags "gtk kde" to just "X").

Of course, even if your system was saner, the ultimate question is:
Who's going to run through all the graphical packages and update all the
use flags and dependencies?

AllenJB

Samuli Suominen 02-08-2010 10:39 AM

"X" vs "gtk" USE flags
 
On 02/08/2010 01:30 PM, Tomáš Chvátal wrote:
> Dne 8.2.2010 12:15, Nikos Chantziaras napsal(a):
>> Hello. Please don't be too harsh if I got this wrong or if this looks
>> like whining :P
>
>> A lot of ebuilds seem to ignore the "X" USE flag and instead only have
>> "gtk", "qt" and the like. This should be declared absolutely wrong,
>> IMHO. When a program provides a command-line tool and a GUI tool, and
>> the GUI tool uses only one toolkit, then the USE flag should be "X".
>> "gtk" vs "qt" vs "fltk" etc should be used only in cases where a program
>> can be built with either of those toolkits. When there's only one
>> choice, then this doesn't make sense. Isn't this what the "X" USE flag
>> is there for in the first place? Having a package where, say, Gtk is
>> *not* optional having a "gtk" USE flag doesn't make sense. The X tool
>> of that package is optional, but Gtk is not optional for the X tool.
>
>> A Gnome user probably has "X gtk -qt" in make.conf, while a KDE user has
>> "X qt -gtk" in hope to have programs that support both Gtk and Qt being
>> built with the toolkit that is more native to his DE. When a package
>> has a GUI tool that is able to only use one of those toolkits, people
>> who have it disabled in make.conf will get no GUI tool at all even
>> though they have "X" in their USE flags.
>
>> I hope I was able to explain the problem (as I see it) correctly :P If
>> people agree with me, it might be a good idea for maintainers of
>> packages that behave like that to start using "X" as the USE flag that
>> controls building of the packages GUI tools.
>
>
> Sounds sane. For correct usage lately the mplayer ebuild was rewritten
> this way.
>
> Might be good idea to open tracker for these and all bugs cced to it. So
> interested persons can fix it.
>
> Note for maintainers: qa bugs are considered as issue when adding new
> packages. In longer perspective it is good to have them fixed, but you
> don't have to proactively fix old packages. Writing this before people
> starts complaining we are again filling lots of bugs.
>
> @qa: any objections against me opening the tracker?
>
> To sum up the issue:
> use X wrap all other widget useflags if there is CLI interface
> available, so if user don't want X usage for package he just set -X and
> rest widget flags don't matter at all.
>
> Tomas

IMHO. USE="X" is for controlling X.org dependencies, not for avoiding
everything that deps on them, so I disagree.

MPlayer is a bad example here. The reason for writing it like that is
all the flags enabled by default with +.

-Samuli


All times are GMT. The time now is 09:14 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.