a new category "app-busybox" with names similar to the packages they replace. This way, ownership of symlinks to busybox can be traced by the package manager and virtual dependencies can be used for packages where the standard package and the busybox symlink are functionally equivalent. Examples of packages that can be replaced by busybox: awk, grep, findutils, sed, which, wget, psmisc, man, vi
Concerning virtual/editor, this was discussed previously in bug 309147. The conclusion was that busybox should be removed from the virtual, and AFAICS the arguments from back then are still valid. Same reasoning for the other virtuals. IMHO introducing a dozen packages each installing a single symlink (which also collides with files installed by other packages) is an inefficient way of doing this. Also, the *If* this is really wanted, it should be handled with USE flags and USE dependencies in the sys-apps/busybox package itself.
This is an interesting idea, but I agree with ulm that dozens of "cheap" packages is not the way to go. Instead of a USE flag, I wonder if a USE_EXPAND would better. There is some criticism of using USE_EXPAND flags as "cheap namespaces" but there is a precedence for that in the tree and I'm not really convinced its that cheap. Comments?
(In reply to Ulrich Müller from comment #1) > Also, the *If* this is really wanted, it should be handled with USE > flags and USE dependencies in the sys-apps/busybox package itself. Sorry, cut/paste error. Strike "Also the" above.
I am not "married" to any solution. I just thought this solution with small symlink packages was fairly neat. An advantage with using small symlink packages approximately mapped to the corresponding functionality of the packages they replace is first of all that it is easy to know what they do so a user can evaluate each replacement side-by-side with the real package. Second of all, installing a symlink package depending on busybox instead of changing busybox USE flags has one major advantage: You don't have to rebuild/reinstall busybox all the time.
Sorry I'm closing this as WONT FIX. Please see the pull request for reasons why.