On Thu, Feb 02, 2017 at 09:11:26AM -0500, Michael Orlitzky wrote: > IUSE defaults are used in a few different ways: > > 1 To ensure that critical functionality is enabled. > > * Example: force the "unix" module for apache.
Why provide a flag for something that is required anyway? And if it's a case of "you *really* should have this, but if you want to break it, here's how", then why not put it in package.use.force instead? An IUSE default for this doesn't make sense. > 2 To avoid an unsatisfied REQUIRED_USE by default. > > * Example: having a non-empty RUBY_TARGETS by default. This seems reasonable - two mutually exclusive options, of which one is preferred. That being said, I do see it as akin to 3 and 4. > 3 To make Gentoo defaults the upstream defaults. > > * Example: right now the defaults for dev-lang/php build > you a "normal" PHP installation. > > 4 To make the default build agree with the maintainer's personal > preferences. > The way I see it, IUSE defaults are provided by the maintainer as a way to offer a package with "what you probably would want enabled" to facilitate users who either aren't interested in ricing their system or aren't experienced enough with Gentoo to tweak all the flags. Consider: a new user, coming from Ubuntu or Fedora or Windows, starts building their system. They start installing packages they want, only to find that half of the package isn't there because no USE flags were enabled. They have to enable these flags for almost every package they want because there's no defaults, you must manually specify anything that's not a direct dependency or forced by profile. Conversely, users who want a minimal system are ones who are much more likely to inspect emerge's output before committing to a build. They are likely more willing to tweak the flags to have the system provide only the things they want. Often they'll have USE="-*", accepting that they'll probably have to enabled a bunch of things to get their desired functionality. IUSE defaults are a convenience for those either inexperienced with Gentoo or uncaring of cruft. Certainly maintainers should put some forethought into which flags they default to enabled, but I see the end goal as helping the users who need the help most (not to discount more advanced users, but they are more likely to *want* to tweak than one for whom this is their first CLI). That's my two cents, at least. -- Sam Jorna (wraeth) GnuPG Key: D6180C26
signature.asc
Description: Digital signature