The repository layout

Our needs are:

So we decide that these should be our repositories:

repo/
`-- deb 
1
|-- private 
2
|   |-- debian 
3
|   |   |-- lenny
4 {main5, mirrored}
|   |   |-- lenny-experimental {main, mirrored}
|   |   |-- lenny-machinegroup1 {main, mirrored}
|   |   |-- lenny-machinegroup2 {main, mirrored}
|   |   |-- lenny-machinegroup3 {main, mirrored}
|   |   |-- sid {main, mirrored}
|   |   |-- sid-experimental {main, mirrored}
|   |   |-- sid-machinegroup1 {main, mirrored}
|   |   |-- sid-machinegroup2 {main, mirrored}
|   |   |-- sid-machinegroup3 {main, mirrored}
|   |   |-- squeeze {main, mirrored}
|   |   |-- squeeze-experimental {main, mirrored}
|   |   |-- squeeze-machinegroup1 {main, mirrored}
|   |   |-- squeeze-machinegroup2 {main, mirrored}
|   |   `-- squeeze-machinegroup3 {main, mirrored}
|   `-- ubuntu
|       |-- hardy {main, mirrored}
|       |-- hardy-experimental {main, mirrored}
|       |-- hardy-machinegroup1 {main, mirrored}
|       |-- hardy-machinegroup2 {main, mirrored}
            <snip>
|       |-- lucid {main, mirrored}
|       |-- lucid-experimental {main, mirrored}
|       |-- lucid-machinegroup1 {main, mirrored}
|       |-- lucid-machinegroup2 {main, mirrored}
|       |-- lucid-machinegroup3 {main, mirrored}
|       |-- maverick {main, mirrored}
|       |-- maverick-experimental {main, mirrored}
|       |-- maverick-machinegroup1 {main, mirrored}
|       |-- maverick-machinegroup2 {main, mirrored}
|       `-- maverick-machinegroup3 {main, mirrored}
`-- public
    |-- debian
    |   |-- lenny {main, mirrored}
            <snip>
    `-- ubuntu
        |-- hardy {main, mirrored}
            <snip>

1

This is just a directory

2

This is also just a directory, and it will be shared through Apache as well. Separating private and public this way allows us to set different access controls on the repositories under either.

3

This too is a directory, with a reprepro-made repository structure directly under it.

4

This is a distro within the repository. Packages can be copied and moved between distros.

5

main and mirrored are components of a distro