Subject: Re: Upgrading prebuilt pkgs
To: None <oinkfreebiker@att.net>
From: Frederick Bruckman <fredb@immanent.net>
List: port-i386
Date: 06/29/2001 18:25:39
On Fri, 29 Jun 2001 oinkfreebiker@att.net wrote:

> But know that I had to manually install one heck of a lot
> of stuff to get KDE 1.2.1 going. I was working from the
> Wasabi four-CD set. A simple pkg_add of the KDE tgz did
> not work. All the dependencies failed because they
> weren't in the directory where the script went to look
> for them.
>
> So I had to do pkg_add on each of the dependencies
> individually from off the CD. There were a lot of them.
> It wasn't fun. Memory of it leaves me timid about
> upgrading.
>
> I worry that my having manually run pkg_add on each
> dependency may have left pkg_delete with no clue of what
> to remove. Might that be so? Does anyone know?

Well, no. The "inverse dependency" is recorded in the
/var/db/<pkg>/+REQUIRED_BY of every package that satisfies a
dependency, whenever a package with dependencies is installed, so
"pkg_delete -r <pkg>" will get them.

> Will I have to sit down and make a handwritten checklist
> of the two versions of KDE for their repsective
> dependencies, then check the versions of each, and then
> remove certain among them manually so as to install
> upgrades for any such outdated dependencies?
>
> If so, it seems a great deal of bother, and VERY prone to
> fumbling newbie-error.

Yeah, that's about the size of it. I've starting working on a tool
that'll tell you which packages to delete and re-install, given the
packages you want to update, what you already have installed, and
other options, but it still has a way to go.

"pkg_info kde" will show you the recursive requirements for kde, and
"pkg_info -q -R <pkg>" will show you what else requires those
requirements.

It's not really that bad, though. If you do "pkg_delete -r png;
pkg_delete -r kde\*", you'll get most of them. Follow with "pkg_add
kde2". If you get an error that a newer version of some particular
package is required, delete that package and either "pkg_add kde2", or
"pkg_add" the updated package and try "pkg_add kde2" again. You may
not update every single package available, but it should be OK.


Frederick