Thu, 3 Mar 2011

6:29 PM - mport tools

I've been working on getting the mport tool to list packages that need updating.  Some of this code was already in place, but there was no driver for it.  It also required creating a new utility to generate an index from our magus package cluster system.  

A new command is available:

mport list updates

Output currently looks like this:

# mport list updates

apache: 2.2.17 < 2.2.17_1

clamav: 0.96.3 < 0.96.5

dirmngr: 1.0.2_1 < 1.1.0_1

docbook: 4.1_3 < 4.2_1

The system supports aliases for package names.  We could eventually add aliases like apache for the apache22 port to make it easier to work with popular packages.

Indexes are created from the MySQL based magus database for a specific run (os version + arch are unique).  The index is a sqlite3 database containing the package meta data such as the name, version and license as well as the aliases and list of mirrors to download from.  The index file is bzip2 compressed and placed on the HTTP server for distribution to clients.  If an index is older than twenty-four hours, mport will download an updated index, extract it and then perform operations on it.

The next step is writing the upgrade and update commands in mport to automatically fetch and update packages. When this work is complete, mport will be come the new default package format.