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. |