I have lost count of the number of people's systems I have had to help fix after
they removed 'acl' without re-emerging coreutils etc. It's a silly thing to do,
but a common occurence nonetheless. Currently a lot of people's existing
installations are having the acl USE flag "mysteriously" appearing on them, and
so they unset it and unmerge acl, to soon find out that 'ls' and such are
broken. A warning at the end of the acl emerge would probably be helpful, along
the lines of:
ewarn "If you ever choose to set -acl in USE, remember to emerge --newuse world"
ewarn "*before* unmerging this package or sys-apps/attr, otherwise coreutils"
ewarn "(including the 'ls' command) may break"
Considering how easy it is to add a warning of this kind, I think it's worth it
if it saves even one system. From my own experiences in #gentoo it would save
it wouldnt be useful at the end of the acl emerge ... they'd already shoot themselves in the foot ;)
we can force a check in pkg_setup ...
if built_with_use coreutils acl ; then
eerror "Refusing to unmerge acl since coreutils was built with USE=acl"
die "Dont shoot yourself, it hurts"
there doesnt seem to be a clean solution for this
when doing `emerge -C acl`, the ebuild would be read from /var/db/pkg/ rather than an updated version i put in the tree ... so users would still be screwed even if i added this check
there is no good way of figuring out if the user is upgrading and thus an older acl is being auto-cleaned, or if the user just did `emerge -C acl` ... both utilize the same functions and in the first case, we wouldnt want acl to bail