Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 528904 - net-misc/dhcpcd-ui-0.7.4 blocks USE="-qt4 -gtk -gtk3"
Summary: net-misc/dhcpcd-ui-0.7.4 blocks USE="-qt4 -gtk -gtk3"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: tokiclover
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-11 10:28 UTC by charles17
Modified: 2014-11-13 17:25 UTC (History)
1 user (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 charles17 2014-11-11 10:28:13 UTC
net-misc/dhcpcd-ui-0.7.4 cannot be compiled without all of qt4, gtk and gtk3.

$ USE='-gtk -qt4 -gtk3 -icons' emerge -pvt dhcpcd-ui

These are the packages that would be merged, in reverse order:

Calculating dependencies \

!!! Problem resolving dependencies for net-misc/dhcpcd-ui
... done!

!!! The ebuild selected to satisfy "dhcpcd-ui" has unmet requirements.
- net-misc/dhcpcd-ui-0.7.4::gentoo USE="-debug -gtk -gtk3 -icons -libnotify -qt4" ABI_X86="64"

  The following REQUIRED_USE flag constraints are unsatisfied:
    any-of ( gtk gtk3 qt4 )

  The above constraints are a subset of the following complete expression:
    any-of ( gtk gtk3 qt4 ) gtk3? ( !gtk ) gtk? ( !gtk3 ) qt4? ( icons )
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-11 11:00:06 UTC
It should work fine installing only dhcpcd-online, I guess. Maybe the author intended:

REQUIRED_USE="?? ( gtk gtk3 qt4 )

instead of

REQUIRED_USE="|| ( gtk gtk3 qt4 )
Comment 2 tokiclover 2014-11-12 19:02:17 UTC
Is there any need to compile an UI related package without an UI implementation? I guess there are some uses cases that would require this. However, it is too complicated to add that ability without too much hassle related to icons USE flag.
Comment 3 Markos Chandras (RETIRED) gentoo-dev 2014-11-12 19:16:33 UTC
If there is a use case, we should try and satisfy it.
Comment 4 Markos Chandras (RETIRED) gentoo-dev 2014-11-12 19:28:42 UTC
I have applied the following

Index: dhcpcd-ui-0.7.4.ebuild
===================================================================
RCS file: /var/cvsroot/gentoo-x86/net-misc/dhcpcd-ui/dhcpcd-ui-0.7.4.ebuild,v
retrieving revision 1.3
diff -u -B -u -r1.3 dhcpcd-ui-0.7.4.ebuild
--- dhcpcd-ui-0.7.4.ebuild	11 Nov 2014 17:51:31 -0000	1.3
+++ dhcpcd-ui-0.7.4.ebuild	12 Nov 2014 19:25:42 -0000
@@ -14,9 +14,9 @@
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
 IUSE="debug gtk gtk3 +icons qt4 libnotify"
-REQUIRED_USE="|| ( gtk gtk3 qt4 )
+REQUIRED_USE="?? ( gtk gtk3 qt4 )
 	gtk3? ( !gtk ) gtk? ( !gtk3 )
-	qt4? ( icons )"
+	icons? ( || ( gtk gtk3 qt4 ) )"
 
 DEPEND="${DEPEND}
 	virtual/libintl


should be ok now. Thanks for the report

+  12 Nov 2014; Markos Chandras <hwoarang@gentoo.org> dhcpcd-ui-0.7.4.ebuild:
+  Allow building without gtk/gtk3/qt4 in order to get only the dhcpcd-online
+  application. Fix icon restrictions. Bug #528904
+
Comment 5 charles17 2014-11-13 07:01:37 UTC
Now it's possible compiling with gtk/qt4 without icons

net-misc/dhcpcd-ui-0.7.4  USE="gtk -debug -gtk3 -icons -libnotify -qt4" 0 kB
and also
net-misc/dhcpcd-ui-0.7.4  USE="qt4 -debug -gtk -gtk3 -icons -libnotify" 0 kB

IMHO the ui without icons makes no sense and should be prevented.
Comment 6 tokiclover 2014-11-13 08:12:27 UTC
Remains the issue with -icons... which bring in a icon theme package. (This icons USE flag was added to help gtk users to not install unecessary icons (which are already installed) when icons theme are installed. I guess removing that dependency and installing unconditionaly the bundled icons when an UI implementation is enabled is an easy fix if you go that route.)
Comment 7 tokiclover 2014-11-13 08:28:52 UTC
Almost forget this. If you remove 'qt4? ( icons )'... you should provide another means of installing the bundled icons in this case otherwise the qt applet won't function at all (bundled icons are required here).
Comment 8 Markos Chandras (RETIRED) gentoo-dev 2014-11-13 17:07:54 UTC
ok i got rid of the icons useflag altogether. hopefully that will make your build script happy

===================================================================
RCS file: /var/cvsroot/gentoo-x86/net-misc/dhcpcd-ui/dhcpcd-ui-0.7.4.ebuild,v
retrieving revision 1.4
diff -u -B -u -r1.4 dhcpcd-ui-0.7.4.ebuild
--- dhcpcd-ui-0.7.4.ebuild	12 Nov 2014 19:28:24 -0000	1.4
+++ dhcpcd-ui-0.7.4.ebuild	13 Nov 2014 17:06:49 -0000
@@ -13,10 +13,9 @@
 LICENSE="BSD-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="debug gtk gtk3 +icons qt4 libnotify"
+IUSE="debug gtk gtk3 qt4 libnotify"
 REQUIRED_USE="?? ( gtk gtk3 qt4 )
-	gtk3? ( !gtk ) gtk? ( !gtk3 )
-	icons? ( || ( gtk gtk3 qt4 ) )"
+	gtk3? ( !gtk ) gtk? ( !gtk3 )"
 
 DEPEND="${DEPEND}
 	virtual/libintl
@@ -29,8 +28,7 @@
 	gtk3? ( x11-libs/gtk+:3 )
 	qt4?  ( dev-qt/qtgui:4 )"
 
-RDEPEND=">=net-misc/dhcpcd-6.4.4
-	!icons? ( x11-themes/hicolor-icon-theme )"
+RDEPEND=">=net-misc/dhcpcd-6.4.4"
 
 src_prepare()
 {
@@ -41,12 +39,12 @@
 {
 	local myeconfargs=(
 		$(use_enable debug)
-		$(use_with icons)
-		$(usex gtk  '--with-gtk=gtk+-2.0' '')
-		$(usex gtk3 '--with-gtk=gtk+-3.0' '')
-		$(use_with qt4 qt)
+		$(usex gtk  '--with-gtk=gtk+-2.0 --with-icons' '')
+		$(usex gtk3 '--with-gtk=gtk+-3.0 --with-icons' '')
+		$(usex qt4 '--with-qt --with-icons' '')
 		$(use_enable libnotify notification)
 		$(use gtk || use gtk3 || echo '--without-gtk')
+		$(use gtk || use gtk3 || use qt4 || echo '--without-icons')
 	)
 	econf "${myeconfargs[@]}"
 }
Index: metadata.xml
===================================================================
RCS file: /var/cvsroot/gentoo-x86/net-misc/dhcpcd-ui/metadata.xml,v
retrieving revision 1.5
diff -u -B -u -r1.5 metadata.xml
--- metadata.xml	9 Nov 2014 11:20:48 -0000	1.5
+++ metadata.xml	13 Nov 2014 17:06:49 -0000
@@ -10,7 +10,5 @@
 	<flag name="gtk3">
 		Add support for <pkg>x11-libs/gtk+</pkg> (The GIMP Toolkit)
 	</flag>
-	<flag name="icons">
-	Install bundled-in user interface icons</flag>
 </use>
 </pkgmetadata>
Comment 9 tokiclover 2014-11-13 17:25:51 UTC
You could have avoided that `--with-icons' duplication with a single occurance with `$(use gtk || use gtk3 || echo '--without-gtk' && echo '--with-icons')'...

Pretty good anyway with fewer lines and minus (an unecessary) dependency.