I'd just like to report a usability issue with regards to GLEP 81. The issue is that now that users and groups are managed by ebuilds and called upon by dependencies there's a lot of ambiguous entries created when searching through portage. As an example, if you `emerge mythtv` or `emerge asterisk` etc, portage complains it's an ambiguous request with the actual package you requested and the two helper ebuilds. There's virtually a 0% chance that a user is requesting an ebuild to create a user on the system - they want the package itself. There's a brief thread on gentoo-user about this with a couple potential solutions. One was to have emerge check to see if the packages with the same name depend on each other and select one accordingly. A second was to have emerge ignore anything from acct-user/* and acct-group/* when searching via a single atom - thus still allowing a fully qualified request to work. It was pointed out in the gentoo-user thread a bug should be created, so here it is. Reproducible: Always Steps to Reproduce: 1. Emerge any package under acct-group/acct-user with a single atom Actual Results: Portage stops and complains about an ambiguous request. Expected Results: Portage should select the actual package requested, and not one of the helper ebuilds.
(In reply to Daniel Frey from comment #0) > As an example, if you `emerge mythtv` or `emerge asterisk` etc, portage > complains it's an ambiguous request with the actual package you requested > and the two helper ebuilds. There's virtually a 0% chance that a user is > requesting an ebuild to create a user on the system - they want the package > itself. # emerge -vp asterisk These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] acct-group/asterisk-0::gentoo 0 KiB [ebuild N ] net-misc/asterisk-core-sounds-1.6.1-r1::gentoo USE="gsm -alaw -g722 -g729 -siren14 -siren7 -sln16 -ulaw -wav" L10N="-en-AU -en-GB -es -fr -it -ja -ru -sv" 2,409 KiB [ebuild N ] net-misc/asterisk-extra-sounds-1.5.2::gentoo USE="gsm -alaw -g722 -g729 -siren14 -siren7 -sln16 -ulaw -wav" L10N="-en-GB -fr" 4,154 KiB [ebuild N ] net-misc/asterisk-moh-opsound-2.03-r1::gentoo USE="gsm -alaw -g722 -g729 -siren14 -siren7 -sln16 -ulaw -wav" 1,737 KiB [ebuild N ] acct-user/asterisk-0::gentoo 0 KiB [ebuild N ] net-misc/asterisk-16.11.1::gentoo USE="alsa bluetooth caps iconv ldap postgres ssl syslog vorbis -calendar -cluster -curl -dahdi -debug -doc -freetds -gtalk -http -ilbc -libressl -lua -mysql -newt -odbc -osplookup -oss -pjproject -portaudio -radius (-selinux) -snmp -span -speex -srtp -static -statsd -unbound -xmpp" VOICEMAIL_STORAGE="file -imap -odbc" 27,056 KiB Total: 6 packages (6 new), Size of downloads: 35,355 KiB # emerge -vp mythtv These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] acct-group/mythtv-0::gentoo 0 KiB [ebuild N ] acct-user/mythtv-0::gentoo 0 KiB [ebuild N ] media-fonts/tex-gyre-2.501::gentoo USE="X" 2,500 KiB [ebuild N ] x11-misc/wmctrl-1.07-r2::gentoo 86 KiB [ebuild N ] dev-db/mysql-connector-c-8.0.20:0/21::gentoo USE="ldap -libressl -static-libs" ABI_X86="(64) -32 (-x32)" 260,042 KiB [ebuild R ] dev-qt/qtsql-5.15.0:5/5.15.0::gentoo USE="mysql* postgres sqlite -debug -freetds -oci8 -odbc -test" 0 KiB [ebuild N ] media-tv/mythtv-31.0-r1::gentoo USE="X alsa bluray cdda cdr dvb dvd egl exif fftw lame opengl raw v4l vaapi vpx wrapper x264 xml xvid zeroconf (-altivec) -asi -autostart -cec -ceton -debug -hdhomerun -hdpvr -ieee1394 -ivtv -jack -java -lcd -libass -lirc -nvdec -oss -perl -pulseaudio -python -systemd -vbox -vdpau -x265 -xmltv" INPUT_DEVICES="-joystick" 100,149 KiB Total: 7 packages (6 new, 1 reinstall), Size of downloads: 362,776 KiB
What a user may or may not want is kind of ambiguous as well. I mean, despite your virtual 0% I have acct-*/git in my world file and I've adopted GLEP81 in my local overlay for other additions so that portage can auto-setup new systems using those. A portage enhancement for a user-configurable blacklist of search omissions could be interesting though. Like could add dev-haskell/* dev-ruby/* acct-*/* or whatever else bothers the user. Personally I'd like to omit cross-x86_64-w64-mingw32/* given things like "emerge binutils" will ask me if I meant the cross-* one and it's rarely the case.
*** This bug has been marked as a duplicate of bug 691798 ***