pup – package update protocol

Pup was designed as a replacement for the aging CMU sup application. Sup has a number of limitations (not to mention bugs) but is useful because it performs file-level replication to multiple hosts. It existed a long time before rsync and is similar in concept but has a different focus (such as delivering files to multiple clients).

Pup is currently designed to work with “kpackages”.

Pup has a number of features including an audit trail back to the master (gold) server. Packages are essentially tamper proof because of checksums and optional file/package signatures.

Pre-install package dependencies and Post-install verification are performed by the kpkg package management tools rather than pup itself.

pup works reliably but is in alpha because it a) cannot update itself, b) has limited network security

Thanks to a Chris V for adding cryptographic signatures to the protocol.

The Pup User Guide (version 0.1)