upgrade-oldest(8) selectively upgrades a Debian system by upgrading the packages with the oldest and most significant version numbers. It can be limited to certain sections, and the level of version differece necessary to trigger an upgrade can be controlled.
It is a simple Python script, but it is very powerful.
License: GPL
Copyright: (c) 2005 Alexander
'zowers'
Petrov <zowers@gmail.com>
Suppose you have a slow internet connection and would like to upgrade your old Debian system. You have 3 opportunities:
apt-get
upgrade
to upgrade all your
packages;apt-get
install packages1 package2 ... packageN
;upgrade-oldest
to upgrade only packages, which version numbers changed most.Debian Policy Manual, Chapter 3 - Binary packages describes Debian package management system and version numbering of binary packages. The version number of a package has the following format: [epoch:]upstream_version[-debian_revision].
.deb
file has been made, if this is applicable. Usually this will be in the
same
format as that specified by the upstream author(s); however, it may
need to be
reformatted to fit into the package management system's format and
comparison
scheme.upgrade-oldest compares version
number of currently installed package with version number of package
available for download splitting whole version number into parts, which
are compared to each other. Each part of version number has its level:
epoch is level 0, major upstream_version is level 1, next to major is
level 2 and so on. Package is upgraded when current version part is
lower than corresponding part of available version. You can set maximum
level to which such comparison applies with -u
option, by default it is 2.
upgrade-oldest.py
-u 1 -i x11,admin
upgrade-oldest.py
-u 0 -a wajig
upgrade-oldest.py
-a list
For now (03.Feb.2005) upgrade-oldest must be downloaded from sourceforge.net.
Binary Debian package is upgrade-oldest_x.x.x_all.deb
Download page: http://sourceforge.net/project/showfiles.php?group_id=129295
Python
interpreter and apt_pkg
Python module: apt-get
install python-apt
dpkg
-i upgrade-oldest_x.x.x_all.deb
Debian GNU/Linux: http://debian.org
Python language: http://python.org
apt_pkg module: http://packages.debian.org/python-apt
upgrade-oldest(8) manual page: upgrade-oldest.8
Freshmeat.net upgrade-oldest
project info: http://freshmeat.net/projects/upgrade-oldest/
Sourceforge.net upgrade-oldest
project page: http://sourceforge.net/projects/upgrade-oldest/
Copyright: Alexander 'zowers' Petrov, 03.Feb.2005