Gentoo USE Flags: Control Build-Time Features Without Unneeded Dependencies
Use Gentoo USE flags in make.conf for system-wide defaults and package.use for per-package overrides to control optional build-time features and dependencies.
ReadMeFeed / Community knowledge
Real questions. Useful conversations. Find the people who know your stack.
Use Gentoo USE flags in make.conf for system-wide defaults and package.use for per-package overrides to control optional build-time features and dependencies.
Global USE flags in Gentoo can create hidden dependencies. Learn how to use per-package overrides in package.use and audit your builds with equery to keep your system lean.
USE flags let Gentoo administrators enable or disable optional capabilities when Portage builds packages from source. Learn where to set them, how to verify the effective set, and which flag combinations break builds.
Gentoo's USE flags expose compile-time feature selection to users, trading maintenance complexity for precise control over binary size, dependency graphs, and attack surface. A practical walkthrough of the engineering trade-offs, a minimal server example, and the rebuild costs you'll actually face.
Learn how Gentoo’s USE flags enable fine‑grained compile‑time customization, how to set them safely, and the trade‑offs they introduce. Follow a concrete example and practical checklist to keep your system stable.
Gentoo's Portage offers three rebuild mechanisms after USE flag or library updates. Learn when to use --changed-use, @preserved-rebuild, and preserve-libs, and how to preview changes safely.
Override global Gentoo USE flags for a single package via /etc/portage/package.use to control compile-time features without triggering a system-wide rebuild.
Gentoo USE flags let you decide which optional features get compiled into each package. Learn how global and per-package settings interact, how to preview changes safely, and the mistakes that silently waste rebuilds.
Learn how to use Gentoo USE flags to eliminate unnecessary dependencies and reduce binary bloat through global and package-specific configurations.