"udev-acl" is something that is present only in dead version of udev but sys-auth/consolekit incorporated it since it is deprecated too and needed udev-acl to work however hplip is not deprecated and other distributions don't have dependency of this type as they install hplip always with --disable-udev-acl-rules (the default) which lets the build system to install alternative rules files based on sysfs (or could some of them actually enable it, but yet not have "udev-acl" and get things working succesfully?) the later udevs, starting from about 180, have new USE="acl" which is different type of acl support than the previous one was but i don't think this is something hplip can use, so we are back to dropping USE=acl and always install with --disable-udev-acl-rules and removing this from the ebuild: --- /tmp/hplip-3.12.9.ebuild 2012-09-16 19:40:39.176402118 +0300 +++ hplip-3.12.9.ebuild 2012-09-16 19:42:47.231405906 +0300 @@ -21,15 +21,11 @@ # zeroconf does not work properly with >=cups-1.4. # Thus support for it is also disabled in hplip. -IUSE="doc fax +hpcups hpijs kde libnotify minimal parport policykit qt4 scanner snmp static-ppds -acl X" +IUSE="doc fax +hpcups hpijs kde libnotify minimal parport policykit qt4 scanner snmp static-ppds X" -# udev-acl has been moved as part of consolekit and is legacy code that -# shouldn't be used anymore. figure out dropping USE=acl also from hplip? -# -ssuominen 2012, August COMMON_DEPEND=" virtual/jpeg hpijs? ( >=net-print/foomatic-filters-3.0.20080507[cups] ) - acl? ( || ( >sys-auth/consolekit-0.4.5[acl] <sys-fs/udev-171[extras] ) ) !minimal? ( >=net-print/cups-1.4.0 virtual/libusb:1 @@ -204,7 +200,7 @@ $(use_enable parport pp-build) \ $(use_enable scanner scan-build) \ $(use_enable snmp network-build) \ - $(use_enable acl udev-acl-rules) \ + --disable-udev-acl-rules \ $(use_enable qt4 gui-build) \ $(use_enable qt4) \ $(use_enable policykit) (i dont have HP printer or anyway to test this, but i've verified it by reading the code best I can)
as in, the original udev-acl which got removed from udev is now internal part of ConsoleKit meant to be used only by ConsoleKit
I think the suggested changes are okay. Feel free to apply them. The only change this flag causes is installing the udev rules in a different notation. For me it makes no difference if the flag is disabled or enabled. NOTE: The SYSFS/ATTRS has nothing to do with this and is handled by the --enable/disable-udev-sysfs-rules flag --disable-udev-acl-rules installs them like this: ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="c302", OWNER="root", GROUP="lp", MODE="660" and --enable-udev-acl-rules like this: ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="c302", GROUP="lp", ENV{ID_HPLIP}="1"
okay, I'll apply them tomorrow (got no commit access right now) btw, this is not just cosmetics, this also resolves the "unnecessary" blockers for systemd users with USE=acl enabled :)
Today I had some time fixing this. Thanks for the report.