From owner-freebsd-ports@FreeBSD.ORG Sun Aug 12 08:35:17 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1459F16A419 for ; Sun, 12 Aug 2007 08:35:17 +0000 (UTC) (envelope-from fullermd@over-yonder.net) Received: from optimus.centralmiss.com (ns.centralmiss.com [206.156.254.79]) by mx1.freebsd.org (Postfix) with ESMTP id C57F313C461 for ; Sun, 12 Aug 2007 08:35:16 +0000 (UTC) (envelope-from fullermd@over-yonder.net) Received: from draco.over-yonder.net (adsl-072-148-013-213.sip.jan.bellsouth.net [72.148.13.213]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by optimus.centralmiss.com (Postfix) with ESMTP id E21F128B3D for ; Sun, 12 Aug 2007 03:35:15 -0500 (CDT) Received: by draco.over-yonder.net (Postfix, from userid 100) id 78FD261C42; Sun, 12 Aug 2007 03:35:15 -0500 (CDT) Date: Sun, 12 Aug 2007 03:35:15 -0500 From: "Matthew D. Fuller" To: freebsd-ports@freebsd.org Message-ID: <20070812083515.GE94464@over-yonder.net> References: <20070811115642.L34115@obelix.home.rakhesh.com> <20070811083357.GA34007@eos.sc1.parodius.com> <20070811104229.GD94464@over-yonder.net> <20070811210716.GB78245@eos.sc1.parodius.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070811210716.GB78245@eos.sc1.parodius.com> X-Editor: vi X-OS: FreeBSD User-Agent: Mutt/1.5.16-fullermd.4 (2007-06-09) Subject: Re: How did upgrading applications happen before portupgrade etc? X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Aug 2007 08:35:17 -0000 On Sat, Aug 11, 2007 at 02:07:17PM -0700 I heard the voice of Jeremy Chadwick, and lo! it spake thus: > > I'm aware it manages all of the "regular" /var/db/pkg files just > like the pkg_* tools do. It has to for it to play nice. But it > also maintains a separate database for (I think) versioning and > dependency matching. I've been told the reason it does this is "due > to shortcomings in /var/db/pkg or the pkg_* tools". As far as I can tell, there's nothing in the DB files that isn't in the /var/db/pkg files (or at least derivable from them), as I've never seen anything unusual happen when I blow away the .db files. About the only times I've ever seen them go wonky is around a bdb/ruby/portupgrade upgrade. Sure, it'd be nice if that didn't happen, but if that's the biggest flaw I have to contend with, I'm buying a lottery ticket in the morning. > Also, if you use portupgrade, you pretty much HAVE to use it > exclusively for everything, e.g. you can't go mix-and-matching use > of portupgrade and the base pkg_* tools without there being some > inconsistency induced and thus "breaking" portupgrade. Am I > correct? I sure hope not, or all these years of installing ports manually is has been biting me without me knowing it. I almost never use portinstall (xref "slow"). I use pkg_delete to remove stuff. And I upgrade stuff manually with some regularity (like portupgrade, just for my own sanity, and ruby upgrade usually involve me doing a mass pkg_delete and reinstall. AFAIK, those would work just fine with portupgrade, but I like the net). All that happens is that portupgrade notices its db is out of date, and updates it. > Where the only solution is to rm the pkgdb.db file and then run > pkgdb -u, correct? That class of things, yes. It's happened to me in ways I couldn't attribute to upgrades, but I could count the number of times on one hand and have fingers left over. > But if someone asks me "Why don't you use portupgrade" I'm going to > tell them why. Well, that's why I asked 8-} I don't develop portupgrade, and I don't get paid for people using it (I do accept certified checks, however), and I certainly wish that many of its long-time shortcomings would get cleaned up. But this thing you hold up as constant dealbreakers, my experience slots as minor, trivially deal-with-able, and extremely rare hiccups. > I see claims like the above ("you just nuke the db and move on. > What's the problem?") and I think "What the f***?". Removing a file > and ignoring the problem because the problem then goes away (until > the next time it happens...) makes me think of a Windows-like > solution. I can run a 10 line shell script and lock a filesystem up so it's dirty and can't be unmounted. I can upgrade a system and make it lose the ability to see its hard drives. I think "What the f***?". Who would use this FreeBSD crap? That sort of thing makes me think of Windows. "Don't upgrade your system, and treat your filesystems with kid gloves, and the problem goes away". Both of these have been reported, multiple times over time, and they're still there. In fact, neither of them has that I recall even elicited a single response from anybody. *THAT* sure as hell makes me uncomfortable. I managed systems manually for years before portupgrade came along (and for that matter, for years after, because I don't like changing methods that works, however badly). It was miserable, and everything was always out of date. Portupgrade turned that into very minor effort to keep everything always up to date (or firmly out of date, if that's my intention for something). A peripheral and totally optional tool that very occasionally ends up with a broken cache that takes a minute to rebuild, and otherwise turns that part of my admin life from a living hell to a blissful joy, is a looooong way down my list of things to worry about. -- Matthew Fuller (MF4839) | fullermd@over-yonder.net Systems/Network Administrator | http://www.over-yonder.net/~fullermd/ On the Internet, nobody can hear you scream.