binary package maintenance tool

Alexey V. Degtyarev alexey at renatasystems.org
Mon May 4 11:39:23 UTC 2009


> > The port sysutils/bsdadminscripts has just been updated to
> > version 6.0, which features pkg_upgrade, a binary only
> > package maintenance tool.
> > It makes no use of the ports tree, so unlike other build
> > oriented tools, you do not need a copy of the ports tree
> > to keep your packages up to date.
> > It only requires an INDEX file from pointyhead or your
> > personal Tinderbox.
> 
> Great! T've done some tests at my home machine and I really
> like this tool. I was deaming for it for a long time. And
> it works much faster than "portupgrade -PP".

 pkg_upgrade works very good for me too, except one thing:
 
 Assume package pkg-1.1 installed on the system and is going to upgrade.
 The pkg-1.2 version of package requires a little bit more packages that
 required by pkg-1.1: + a new one package newpkg-1.1 for example. After
 pkg_upgrade upgrades package `pkg', there is no newpkg-1.1 installed on
 the system and there is a error occured while updating. Here is the
 illustration with some names screened:

$ export PACKAGESITE=http://some.path.to/packages/
$ pkg_upgrade -na
Update <pkg-1.1> to <pkg-1.2>(nice/pkg)
$ pkg_upgrade -a
/usr/ports/packages/All/pkg-1.2.tbz        100% of 3537  B 5464 kBps
===> Update <pkg-1.1> to <pkg-1.2>
(nice/pkg)
pkg_add: could not find package newpkg-1.1  (proceeding anyway)
pkg_add: can't open dependency file '/var/db/pkg/newpkg-1.1/+REQUIRED_BY'!
dependency registration is incomplete
=> Update <pkg-1.1> to <pkg-1.2>
(nice/pkg) succeeded
$ pkg_info -Ex newpkg
$ pkg_info -Ex pkg
pkg-1.2

 I think that pkg_upgrade should respect a new package's dependency list
 and pre-fetch all the new dependencies before pkg_add.


-- 
Alexey V. Degtyarev


More information about the freebsd-ports mailing list