Gentoo takes source-based package management to its logical extreme — every package is compiled from source on your own machine, tailored to your specific hardware and configuration, rather than installed as a generic precompiled binary.
# Gentoo's package manager, Portage, compiles everything from source emerge --sync # update the package database (the "portage tree") emerge nginx # downloads source and COMPILES it locally # USE flags let you customize exactly what features get compiled in echo "nginx ssl http2" >> /etc/portage/package.use/nginx emerge nginx
Why Anyone Still Does This
- Genuine optimization — compiling with flags specific to your exact CPU can produce measurably faster binaries than generic distro packages built for broad compatibility
- Minimal bloat — USE flags let you compile out features you’ll never use, rather than installing a generic build with everything enabled
- Deep understanding — the process forces genuine familiarity with what’s actually being built and why
The Real Cost
Compiling everything from source is dramatically slower than installing precompiled binaries — a full system update can take hours instead of minutes, which is exactly why Gentoo remains a niche choice for enthusiasts and specific performance-critical use cases, not a mainstream distro recommendation.