:: Steve.org.uk
[ Home | About Steve | Free Software | Images ]



Free Software

rapt : Repository creation for apt-get

This tool is designed to make it easy to maintain simple repositories, and the pool structure which users would expect, for hosting Debian binary & source packages.

There are several solutions out there for creating a apt-get repository, but they tend to be rather cryptic to use, or have a lot of overhead.

reprepro is a nice simple system which allows pool structures, and repositories, to be created easily. It contains support for adding, removing, and updating packages in a pool structure - but it can be a little fiddly to work with.

Enter rapt - a simple tool to create an appropriate reprepro configuration fil and use that to make your repository - given only a directory of packages as input.

top
Download rapt

You may download the current stable release from the following links:

If you'd like to try something more cutting edge please see the rapt mercurial repository.

If you're a user of Debian GNU/Linux you may find a binary package contained in my apt-get repository - a repository it created!

top
Sample Usage

As an example of what this tool does please consider the followign directory tree:

skx@gold:~$ ls input/
spambayes-threaded_0.1-1_all.deb        spambayes-threaded_0.1-1.dsc
spambayes-threaded_0.1-1_amd64.build    spambayes-threaded_0.1-1.dsc.asc
spambayes-threaded_0.1-1_amd64.changes  spambayes-threaded_0.1-1.tar.gz

Now we can use rapt to turn that into a repository:

skx@gold:~$ rapt --input=./input/ --output=./output/
Data seems not to be signed trying to use directly...
Data seems not to be signed trying to use directly...
Exporting indices...

This gives us a complete pool structure:

skx@gold:~$ tree output/
output/
|-- dists
|   `-- etch
|       |-- Release
|       |-- main
|           |-- binary-amd64
|           |   |-- Packages
|           |   |-- Packages.bz2
|           |   |-- Packages.gz
|           |   `-- Release
|           `-- source
|               |-- Release
|               |-- Sources
|               |-- Sources.bz2
|               `-- Sources.gz
|-- index.html
`-- pool
    `-- main
        `-- s
            `-- spambayes-threaded
                |-- spambayes-threaded_0.1-1.dsc
                |-- spambayes-threaded_0.1-1.tar.gz
                `-- spambayes-threaded_0.1-1_all.deb
top