NetBSD-current CTM Distribution


Introduction

CTM is a software distribution utility written by Poul-Henning Kamp. Originally it was "CVS Through eMail" but is now much more general.

Why use CTM?

CTM is excellent if you want to receive updates via email, for example if you are behind a restrictive firewall or if your network performance is not good enough to support sup or rsync easily.

CTM is also a lot more careful than sup, and will checksum files before and after it updates them so you are a lot less likely to get a corrupted source tree.

A disadvantage of CTM is that if you destroy part of your source tree sup will download it again for you but with CTM you must rebuild it from one of the base deltas. (A "base delta" is a delta that creates and populates a whole tree. The unsplit base delta for a -current source tree is about 50Mb.)

What is distributed?

Presently there are three CTM distributions for NetBSD, and more will follow as they are requested.

The first two distributions are "allsrc" and "doc". These match the sup distributions of the same names.

allsrc
NetBSD-current/src/ (excludes "domestic" export-restricted source)
doc
NetBSD-current/doc/

These distributions will all have mailing lists created for them shortly. For now, the deltas can be found at:

It is expected that the non-security distributions will be mirrored to most of the current sup and ftp mirrors.

Obtaining and Installing CTM

CTM is not part of the NetBSD source tree. Shortly it should be placed in 'othersrc' along with 'sup', but for now a NetBSD-port configured to install under /usr/local can be found at:

ftp://ftp.netbsd.org/REVISIT/ctmkit.tar.gz client software
ftp://ftp.netbsd.org/REVISIT/ctm.tar.gz client and server software
ftp://ftp.netbsd.org/REVISIT/libmd.tar.gz MD5 support needed for NetBSD releases prior to 1.3

The "official" site for CTM is the src/usr.sbin/ctm in the FreeBSD source tree.

Having obtained ctmkit.tar.gz, unpack it, compile and install. (The README file has instructions.)

Fetching the base delta

The base deltas are marked with an "A" in their name. The base deltas are large. Depending on demand, they may be made available in smaller pieces. It is a very good idea to backup and keep the base delta.

Only fetch the latest base delta, and don't uncompress it. New base deltas are typically created after every one hundred ordinary deltas to limit the number anyone need apply to get a -current source tree.

All CTM deltas can be ftp'd from the main NetBSD ftp server and mirrors:

ftp://ftp.netbsd.org/CTM

Fetching ordinary deltas

The base deltas are far too large to mail. Regular deltas, however, may be obtained via ftp or "as they happen" from a mailing list. (The mailing lists will be commissioned shortly.)

Applying deltas

Deltas are applied with the ctm_rmail command. This can be can be run automatically from a mail alias or .forward file, or manually. The ctmkit includes the manual page for ctm_rmail.