Hi Sean,

I think your statement *can* be true, but it doesn't have to be nor is
it by default.  By definition change is not stable and IMHO Gentoo
changes frequently (e.g. portage/ebuilds).  It's really up to the
administrator(s) to accomplish this stability.  Gentoo gives you the
flexibility to keep your installed packages up-to-date or stable, it's
just not stable by default.  BTW, I'm interpreting "stable" here to mean
server and application uptime.

Why do I say "not stable" by default?  I believe that blindly emerging
world every night is asking for stability trouble.  One example I can
think of is portage itself.  At some version recently, the "strict"
FEATURE became the default, which broke several ebuilds that had
previously worked.  I've also had issues with openssh and ssh
commandline switch changes.  Others that come to mind are with the
multimedia stuff like transcode and the codec libs, but those aren't
typically server packages.

But if one doesn't emerge world on a "regular" basis, Gentoo becomes
broken because ebuilds have a limited lifetime and will be deleted from
emerge syncs even though that ebuild is still installed.  By "broken" I
mean that updates -- especially major security updates -- of base
packages can no longer be successfully integrated into a running system
because the admin must run revdep-rebuild after updating these packages
(openssh comes to mind).  But since revdep-rebuild requires the original
ebuilds of affected packages and many packages' ebuilds can age out (be
deleted from portage), revdep-rebuild fails.  I've run into this and was
left with basically a broken system that had to be either rebuilt from
scratch or have an emerge world run.  I chose the former because I had
little faith that the massive emerge world would have been successful.

So what's an Admin supposed to do?  As someone mentioned, I use
PORTDIR_OVERLAY (nee PORTAGE_OVERLAY) in /etc/make.conf.  In my case, my
PORTDIR_OVERLAY is shared via NFS to my two Gentoo desktops'
PORTDIR_OVERLAYs, so all have access to my latest portage
"automatically" without resorting to multiple emerge syncs.  Here's the
script I run every night on my Gentoo server:

rsync -rlt /usr/portage /my/portdir_overlay
# don't use "esync" for max compatibility.
emerge sync
eupdatedb -q

It's simple, but does the job for me.  I've been doing this since my
systems' inceptions, so I'm guaranteed to have the "old" ebuilds on hand
for the necessary revdep-rebuilds.  Note the caveat of the
PORTDIR_OVERLAY lagging one day behind, but that's acceptable for me.

One change I would like to see in Gentoo to improve stability would be
to make the delete of ebuilds in an emerge sync optional, defaulting to
the current "yes".  I'm not saying that an emerge sync should verify
that no ebuilds that are currently installed get deleted (I don't
believe this to be an easy option to implement), just an all-or-nothing
option.  I understand that over time the portage tree grows (my current
overlay is ~100MB larger) and that this would not be good for Gentoo's
rsync servers worldwide, but I'm willing to give up 1GB of disk on my
server for some package/system stability.  I know this was discussed on
the Gentoo-Alpha list (where I got the PORTDIR_OVERLAY idea), but I've
since retired my wonderful Alpha.

Just my $.02 on the whole shmear,
Rich

Rich Jesse                        System/Database Administrator
[EMAIL PROTECTED]      QuadTech, Sussex, WI USA




-----Original Message-----
From: Sean Cook [mailto:[EMAIL PROTECTED] 
Sent: Friday, September 23, 2005 11:48 PM
To: [email protected]
Subject: Re: [gentoo-server] Stable Portage tree

[snip]

Gentoo is stable and is not bleeding edge unless you are using keywords
and unmasking from the stable distro.

[snip]

-- 
[email protected] mailing list

Reply via email to