It's not, "Just not true," only because you can hack the ebuild. It's also just not true because the USE flag mechanism is most typically used to directly expose the package's build options. When you make a USE flag change, you're selecting from the configurability the package author exposed. Gentoo is just the friendly middleman, making it easy.

While the coverage of compile-time options by USE flags is impressive, it is not complete. Moreover, quite often USE flags are used not for compile-time options but for pulling in optional dependencies. So I would say USE flags have a broader scope than just exposing upstream configurability, and this entails some design decisions by the ebuild maintainers.

That said, I usually agree with their decisions, and if I don't they can almost always be remedied by per-package USE flag settings. Currently the ebuilds duplicated in my local overlay are only for applying patches not yet integrated by upstream._________________Personal overlay | Simple backup scheme

While the coverage of compile-time options by USE flags is impressive, it is not complete. Moreover, quite often USE flags are used not for compile-time options but for pulling in optional dependencies. So I would say USE flags have a broader scope than just exposing upstream configurability, and this entails some design decisions by the ebuild maintainers.

That said, I usually agree with their decisions, and if I don't they can almost always be remedied by per-package USE flag settings. Currently the ebuilds duplicated in my local overlay are only for applying patches not yet integrated by upstream.

Well, yes, which is why I said, "most typically." However, in the vast majority of the cases, if you pull in an optional dependency, isn't that done just to meet the requirements of a compile-time option?

I usually agree with the developer's decisions on scope of USE flag control as well.

- John_________________I can confirm that I have received between 0 and 999 National Security Letters.

Last edited by John R. Graham on Fri Jun 29, 2012 10:22 pm; edited 1 time in total

While the coverage of compile-time options by USE flags is impressive, it is not complete.

If there is anything missing that you need, please file a bug.

Hypnos wrote:

Moreover, quite often USE flags are used not for compile-time options but for pulling in optional dependencies.

Strictly spoken, that is an abuse of useflags (unless it's a meta ebuild). Optional runtime dependencies should not trigger a rebuild of the package, which is what happens when you change the useflag settings. The recommended practice is to mention these optional packages in an elog message. There are currently several proposals being discussed which should offer a better solution._________________"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
Free Culture | Defective by Design | EFF

I guess beandog is too busy to deal with it. I think the devs are generally good at maintaining ebuilds for software that's important to many users (e.g., core system, desktop environments), and then everything else depends on personal interest and free time.

To get more focused support, you can maintain your own overlay (by yourself or with friends using a VCS), or you can interact with the maintainers of the Gentoo overlays.

Indeed overlays are not the answer to broken packages in portage — unless no maintainer can be found and the package is removed from the portage tree.

In this case another developer has already volunteered to take over, so I will re-assign this issue to him. If nothing gets done within a week, please contact me and I will take care of it personally._________________"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
Free Culture | Defective by Design | EFF