pkgupgrade

Michel Talon talon at lpthe.jussieu.fr
Thu Mar 15 12:59:29 UTC 2007


Hello,

this is to announce version 1.2 of pkgupgrade, a python tool aimed at
upgrading freebsd ports installations mainly using binary packages.
It has a companion program pkg_save.py by Cyrille Szymanski which
performs backups prior to upgrades, which has been upgraded to version
0.7 and a small documentation. You can find them at:
http://www.lpthe.jussieu.fr/~talon/pkgupgrade
http://www.lpthe.jussieu.fr/~talon/pkg-save.py
http://www.lpthe.jussieu.fr/~talon/README.pkgupgrade
The main difference with previous version:
- for homogeneity, Cyrille likes to call his program pkg_save.py, so i
  have changed the name accordingly in pkgupgrade. This requires
changing the name in /usr/local/sbin.
- there is a flag "pkg_release" such that, if True, it works as before,
  but if False, pkgupgrade will use the Latest packages from pointyhat.
- There is a list COMPILE where you can put ports you insist of
  compiling, instead of using binary packages. This is to cope with the
problem of people having special flags in /etc/make.conf for programs
they use a lot.
- When running UpgradeShell, if some postinstall scripts answer
  questions, they will not be screened out.

There are some user unfriendliness, for example you have to edit the
begnning of the script to modify its behavior, you need to put correct
origins in the lists HOLD and COMPILE, no globbing has been implemented
here, but otherwise the program has been tested on several machines and
by several people, and it works. You can expect rather important time
gains with respect to using portupgrade -aP to do the same job, and most
importantly, you will know beforehand exactly what will be removed and
upgraded or compiled, before changing anything on disk.

The programs above are under BSD licence, and anyone is welcome to do
anything he wants with them, including modifying, improving, rewriting
in C++, whatever. Personnally i have no intention to change them in the
short term. Perhaps rewrite in C++ later on, if nobody does, and if it
appears useful. 


-- 

Michel TALON



More information about the freebsd-ports mailing list