On Fri, 3 Feb 2017 08:43:50 -0500 Michael Orlitzky <m...@gentoo.org> wrote:
> On 02/03/2017 08:21 AM, Ian Stakenvicius wrote: > >> > >> How about rather changing our defaults to satisfy the minimalists > >> who don't mind drastically reduced functionality and usability in > >> pursuit of "minimalism" we just strive to make USE="-*" mostly > >> usable, so the minimalists can get what they want, while still > >> having sane defaults. > > > > I'm in favour of this too -- I know we don't "officially" support > > USE="-*" but I think we should still strive to make it work with > > minimal effort to end-users -- that effort being mainly setting > > whatever is necessary for REQUIRED_USE resolution. > > > > It will never be easy, because USE="-*" overrides your profile. What > people want is a way to have USE="-*" apply between the base profile > and the one that they select. > > This is all easily fixed by creating a new profile one-level above > base where developers can put their favorite USE flags: > > 1. We create a new empty profile called "penultimate" inheriting > from base. > > 2. Update the profiles that inherit from base to inherit from > penultimate. > > 3. Move every upstream and maintainer-pet IUSE default into the > penultimate profile. > > 4. Make it policy that IUSE defaults should only be used for > critical flags and REQUIRED_USE persuasion. > > 5. Now we can create embedded, hardened, etc. profiles that inherit > from base and get a minimal working set of USE flags. > We might as well go back to before IUSE defaults then. Part of the advantage of IUSE defaults is maintainers don't all have to fiddle with the profiles, everything can be self-contained in the ebuild. This drastically complicates maintenance, having two locations to track and change rather than just one. I don't know that I would agree that making an absolutely "minimal" build as easy as possible is something that most people want (especially if it makes maintainership more complicated for a significant number of packages). I suspect that there is a small subset of people interested in this, and perhaps those people could maintain a "minimal" profile that unsets IUSE defaults. Also, I would just point out that the particular IUSE default that you objected to in your original email does not really affect this "minimalist" ideal that you seem to hold. The "hpn" USE flag on openssh does not actually pull in any extra dependencies, it just adds some optimizations to the network code to make it faster.