On 16/08/13 20:12, Michael Weber wrote:
Hello,

gtk is a global use flag [1], gtk2 and gtk3 are used in metadata.xml [2].

Is there a consensus how to use these flags if an app provides gtk2
and gtk3 gui in parallel or exclusive?

'gtk' uses best possible version as defined by the package maintainer

'gtk3' is a special flag that is used when package supports both gtk and gtk3 at the same time, and matches the criteria of sanity which is a) it's an library that is used by multiple programs b) is not easy to
split, which would otherwise be preferred over using the USE flag

'gtk2' is never required, those matching it down from the list have weak design which goes against every other ebuild in tree, but is still package maintainers decision

special flags like 'IUSE="+deprecated"' can be used if there is a need to enable the old GTK+ implementation by default, but still provide the new one, in programs. like if enabling GTK+3 instead of GTK+2 would disable you from using flash plug-in in a browser, would qualify in.

imho :)

- Samuli


Michael

[1] /usr/portage/profiles/use.desc
gtk - Add support for x11-libs/gtk+ (The GIMP Toolkit)


[2] egrep "gtk(2|3)" /usr/portage/profiles/use.local.desc
app-admin/gtkdiskfree:gtk3 - Use GTK+3 instead of 2
app-editors/emacs:gtk3 - Link against version 3 of the GIMP Toolkit
instead of version 2 (x11-libs/gtk+)
app-editors/emacs-vcs:gtk3 - Link against version 3 of the GIMP
Toolkit instead of version 2 (x11-libs/gtk+)
app-i18n/fcitx:gtk3 - Install GTK3 IM module
app-i18n/fcitx-configtool:gtk3 - Use GTK+3 instead of 2
app-i18n/ibus:gtk3 - Enable support for gtk+3
app-i18n/ibus-anthy:deprecated - Install deprecated pygtk2 library
app-i18n/ibus-unikey:gtk3 - Enable support for gtk+3
app-i18n/imsettings:gtk3 - Enable support for x11-libs/gtk+:3
app-i18n/scim:gtk3 - Enable support for x11-libs/gtk+:3
app-i18n/uim:gtk3 - Enable support for x11-libs/gtk+:3
app-office/libreoffice:gtk3 - Enable highly experimental gtk3 frontend
dev-java/icedtea-web:gtk2 - Use x11-libs/gtk+:2 instead of x11-libs/gtk+:3
dev-java/icedtea-web:gtk3 - Use x11-libs/gtk+:3 (default)
dev-python/matplotlib:gtk3 - Use x11-libs/gtk+:3 instead of
x11-libs/gtk+:2
lxde-base/lxdm:gtk3 - Use GTK+3 instead of 2
mail-client/claws-mail:gtk3 - Build support for GTK+3
media-libs/libcanberra:gtk3 - Enables building of gtk+3 helper
library, gtk+3 runtime sound effects and the canberra-gtk-play
utility. To enable the gtk+3 sound effects add canberra-gtk-module to
the colon separated list of modules in the GTK_MODULES environment
variable.
media-plugins/audacious-plugins:gtk3 - Link against version 3 of the
GIMP Toolkit instead of version 2 (x11-libs/gtk+)
media-sound/audacious:gtk3 - Link against version 3 of the GIMP
Toolkit instead of version 2 (x11-libs/gtk+)
media-sound/jalv:gtk2 - Adds support for GTK+2 in addition to GTK+3
controlled by the gtk useflag.
media-sound/mp3splt-gtk:gtk3 - Link against x11-libs/gtk+:3 instead of
x11-libs/gtk+:2
net-analyzer/wireshark:gtk2 - Build the wireshark executable with a
GTK+ UI version 2.
net-analyzer/wireshark:gtk3 - Build the wireshark executable with a
GTK+ UI version 3.
net-dns/avahi:gtk3 - Build the avahi-ui-gtk3 library, and use gtk3 for
the avahi utilities under USE=utils
net-libs/gtk-vnc:gtk3 - Build the gtk3 gtk-vnc library and other gtk3
assets
net-misc/spice-gtk:gtk3 - Link against x11-libs/gtk+:3 instead of
x11-libs/gtk+:2
net-p2p/eiskaltdcpp:gtk3 - Use x11-libs/gtk+:3 instead of x11-libs/gtk+:2
www-client/dwb:gtk3 - Link against x11-libs/gtk+:3 instead of
x11-libs/gtk+:2
www-client/uget:gtk3 - Use x11-libs/gtk+:3 instead of x11-libs/gtk+:2
www-client/uzbl:gtk3 - Use x11-libs/gtk+:3 instead of x11-libs/gtk+:2
x11-themes/light-themes:gtk3 - Support GTK 3.x, too
x11-wm/fvwm:gtk2-perl - Enable GTK2 Perl bindings



Reply via email to