dev-libs/e_dbus-1.7.4 uses udev USE flag to depend on upower and udisks.
On a system that uses udev but does NOT use upower/udisks/polkit/consolekit, this makes installing E17 from x11-wm/enlightenment with +udev -ukit still pull in upower/udisks/polkit/consolekit. The bug comes from this ebuild.
My suggestion would be to change the e_dbus ebuild to use the ukit USE flag instead of udev, this will be a more exact match to functionality, and would align with what was done on x11-wm/enlightenment-0.17.0 where you have both udev and ukit USE flags and can actually have CHOICE.
Such a change would need to also edit the x11-wm/enlightenment ebuild accordingly
This is a relatively trivial change but multiple solutions are possible, I can provide new ebuilds if necessary.
Steps to Reproduce:
1. On a upower/udisks/polkit/consolekit free system, USE"udev -ukit" emerge enlightenment-0.17.0 will pull in e_dbus[udev]
2. e_dbus[udev] will pull in upower and udisks and so also all *kit
e_dbus[udev] pulls in upower and udisks
e_dbus should use a USE flag relating to upower and udisks, not udev when e_dbus does not use udev.
It should be possible to emerge enlightenment-0.17.0 with udev -ukit without pulling upower/udisks/polkit/consolekit
USE=udev for desktop users is designed to pull in any helpers it needs, be it udisks, upower or something else, whatever glues the kernel/udev to the desktop
so this is correct the way it is, USE=udisks/upower is a invention of Gentoo KDE developers, and is not something that should be done at all
global use flags (searching: udev)
[+ D ] udev - Enable sys-fs/udev integration (device discovery, power and storage device support, etc)
device discovery = usually libgudev
power = upower
storage device support = usually gvfs, or udisks
etc = figure it out ;)
then let me reverse the question: why provide udev and ukit USE flag for x11-wm/enlightenment ?
e_dbus does not use udev at all, only upower/udisks, so depending on the udev USE flag is technically a misleading as udev and upower/udisks are not necessarily present on a desktop system.
If you think udev = upower = udisks for the desktop user, then you are thinking about systemd, not udev standalone and its alternatives that some of your desktop users still want to use.
What could we do then to make choice still possible?
(In reply to comment #3)
> then let me reverse the question: why provide udev and ukit USE flag for
> x11-wm/enlightenment ?
> e_dbus does not use udev at all, only upower/udisks, so depending on the
yes it does, udisks and upower are just udev helpers
> If you think udev = upower = udisks for the desktop user, then you are
> thinking about systemd
nothing to do with systemd
I see two options here:
- Keep USE="udev" for both udisks and upower
- Use USE="udisks" and USE="upower" like some patches, like KDE, already do, and REQUIRED_USE="udisks? ( udev ) upower? ( udev ) if required
USE="udisks" and USE="upower" are now global USE flags, but using USE="udev" for them is still not wrong, it's up to the package maintainer
dropped via bug 571796