This document summarises setting up a Debian package repository.

I have taken care to provide the most accurate information at the time of writing but should you find any mistakes, please fix them.

There are 2 kinds of repositories from user's perspective:

archive style

apt line

apt-pinning

secure APT

trivial archive

"deb http://example.org/debian ./"

No

Yes

official archive

"deb http://example.org/debian unstable main"

Yes

Yes

These have different meta-data structure, but both store actual package files. Many repository HOWTOs address creation of a "trivial archive". These are problematic since the "trivial archive" lacks support for apt-pinning and modern secure APT due to the collision of 2 types of Release files. (e.g., old "Debian Reference (sarge)" and "APT HOWTO (sarge)")

Even with an "official archive", you can create a much simpler archive than the real official one. This is explained in Debian Reference (lenny) using apt-ftparchive in apt-utils and dupload. All uploaded packages are located in a directory and no database server is needed. This may be good enough for people hosting a few packages.

For creating something similar to the official archive, there are some good packages to help you but they tend to require a database server.

The following sections contain more info about these applications.

Available Tools

dak (Debian Archive Kit)

reprepro (formerly known as mirrorer)

debpool

debarchiver

mini-dinstall

apt-ftparchive

dpkg-scanpackages and dpkg-scansources

mini-dak

DebMarshal

Built by Google for their use.

Related software

to be some efforts to develop a wordpress-plugin based on these scripts.

HowTos

How to setup a mini-dinstall repository on people.debian.org

See also


CategoryPackageManagement

HowToSetupADebianRepository (last edited 2009-11-19 07:47:14 by Mac)