Ühel kenal päeval, N, 26.01.2017 kell 22:33, kirjutas Mike Gilbert: > I recently ran into a REQUIRED_USE constraint that required I select > between berkdb and gdbm for an email client.
There shouldn't be a REQUIRED_USE constraint that forces you to select one or the other. The maintainer should be giving the choice of both, but if only one can be chosen, the maintainer should make the choice for you by preferring one of them. Likely gdbm, given berkdb licensing saga. Though I guess this is a little bit more problematic when that DB is long living, but I think it should still work good enough with this guideline. Then there is no need to think about what is enabled globally or not. Point being, use REQUIRED_USE sparingly, and rarely a good idea to block things with common global USE flags, or demand a local USE flag based on a default enabled global USE flag without locally USE defaulting that global flag too - and other such cases. I'd talk to the maintainer(s) of such package(s) via bugzilla or other means and discuss such REQUIRED_USE potential overuse. > Looking through our profiles, I see we have both berkdb and gdbm > enabled "globally". > > default/linux/make.defaults:USE="berkdb crypt ipv6 ncurses nls pam > readline ssl tcpd zlib" > releases/make.defaults:USE="acl gdbm nptl unicode" > > Is there any reason to have these USE flags enabled globally? > > These USE seem pretty package-specific in scope. On my system, they > are used by around a dozen of 1000+ installed packages. I think it > might make sense to migrate them to appropriate IUSE defaults, or > leave them disabled where they do not provide critical functionality.
