changed-use and newuse are not explained to well in the man page these inspect all of @selected every run (hence why selective is needed). It makes it so they can't be used without --selcetive=n to install specific packages (negating most of their usefullness). I think it would be helpful if this was documented. It's useful to have this option in emerge_default_opts on servers that get semi-auto-updated as well (in my experience, ymmv, etc). But it conflicts with emerging packages directly without --selective=n To help with this I'd like to see a feature where EMERGE_DEFAULT_OPTS can have seperate opts for diferent package sets. @WORLD would be nice to have --changed-use=y @preserved-rebuild would be nice to have --usepkg=n --get-binpkg=n etc. So I guess this is a doc/feature bug :D Reproducible: Always
How about if allow you to define commands that you can refer to using names, with commands like 'emerge --command=world-update'. The config file could be called /etc/portage/emerge/commands.conf, and appear as follows: [world-update] options = --update --deep --newuse --changed-use --with-bdeps=y arguments = @world [preserved-rebuild] options = --usepkg=n --get-binpkg=n arguments = @preserved-rebuild You would also be able to specify arguments/options on the command line, to override pre-defined options/arguments.
How would emerge @foo @bar somepackage work if @foo and @bar both specify options? What if they specify conflicting options?
--command is a better option, I like it :D Adding features to it might be good too. @mgorny, with commands it's more explicit I think. I also think we should only accept one command for simplicity, or maybe chain them (exec one at a time for no conflicts).
I don't get this. What tangible advantage is there to this compared to just using a shell alias?
this is more for user set defaults