Gentoo Archives: gentoo-project

From: Michael Orlitzky <mjo@g.o>
To: gentoo-project@l.g.o
Subject: Re: [gentoo-project] Some focus for Gentoo
Date: Thu, 15 Jan 2015 01:10:35
Message-Id: 54B7137E.3030404@gentoo.org
In Reply to: [gentoo-project] Some focus for Gentoo by Donnie Berkholz
1 On 01/13/2015 10:43 PM, Donnie Berkholz wrote:
2 > Wanted to share my thoughts on where I think Gentoo should go, in terms
3 > of direction. Would love to hear your thoughts.
4 >
5 > http://dberkholz.com/2015/01/13/gentoo-needs-focus-to-stay-relevant/
6 >
7
8 My perspective as a system administrator:
9
10 The package manager solves a lot of problems that I didn't even know I
11 had. When we deploy anything (a new website for example), I create a
12 package for it. Usually for a website the package is empty except for an
13 RDEPEND on php[foo] and smarty or something like that, but doing this
14 gives me an audit trail for every piece of software installed on every
15 system. It also prevents someone from uninstalling smarty on a web
16 server that needs it.
17
18 In theory you could do this with any distribution, but the fact that
19 Gentoo is source-based makes it super easy to do. I just add a few lines
20 of text to an overlay, and boom, new package.
21
22 It also works for more complicated software. Each programming language
23 has its own build system these days, and you'll hear developers
24 complaining about e.g. "rubygems hell" or "cabal hell" when their build
25 system can't resolve dependency conflicts. That's a stupid problem to
26 have, because it's already been solved by real package managers that
27 don't respect some imaginary programming language boundary.
28
29 But the reason most people avoid using a real package manager is because
30 all of the packages are outdated and a pain to update. This isn't true
31 with Gentoo. If I need a Haskell package, I run `hackport merge foo` and
32 99% of the time it creates a perfect ebuild. Portage makes sure the
33 dependencies are sane across my entire system (even if a non-Haskell
34 dependency is involved), and hell is avoided for one more day.
35
36 Every script, utility, and report has an ebuild that could easily be
37 re-emerged on another machine. By making packages easy, Gentoo lets me
38 keep track of everything that's happening on the systems I'm responsible
39 for.