On Sun, May 2, 2010 at 19:10, Pierre Schmitz <pierre@archlinux.de> wrote:
What about a directory structure like this? We could also remove the os subdir and backwards compatibility could be achieved by some symlinks.
ftp └── repo ├── arch │ ├── core │ ├── extra │ ├── packages │ └── testing └── community ├── community ├── community-testing └── packages
The actual names might not be final, but with this structure we separate our repos from everything else on the ftp and we separate the "official" and community repos from each other.
Regardless of the internal structure of arch and community trees, do we _want_ to separate them? If it's just because of cleanup scripts, access rights etc., then it can be solved this way: arch - packages from gerolde go there pkg - packages are written/removed by db-scripts here pkg1.i686.tar.xz pkg2.any.tar.xz pkg3.x86_64.tar.xz repo - db files and symlinks are written/removed by db-scripts here testing i686 testing.db.tar.gz pkg1.i686.tar.xz -> ../../../pkg/pkg1.i686.tar.xz pkg2.any.tar.xz -> ../../../pkg/pkg2.any.tar.xz x86_64 core extra community - packages from sigurd go there pkg repo community-testing community ftp - this is what users will see iso pkg - union mount of arch/pkg and community/pkg repo - union mount of arch/repo and community/repo The magic: mount -t aufs -o br=/arch/pkg=ro+wh:/community/pkg=ro+wh none /ftp/pkg mount -t aufs -o br=/arch/repo=ro+wh:/community/repo=ro+wh none /ftp/repo Once union mounts hit the upstream it will be even easier: mount /arch/pkg /ftp/pkg mount --union /community/pkg /ftp/pkg mount /arch/repo /ftp/pkg mount --union /community/repo /ftp/pkg Pros/cons of this particular scheme: * no arch/community separation from the user point of view * no os prefix * one huge pool of packages * packages can be moved even between official and community repos without the need for mirrors/users to redownload them * all packages must have arch suffix * a big initial resync is needed Opinions? P.S.: this is just an idea, I'm not going to argue about it, so if you don't like it - just ignore it. -- Roman Kyrylych (Роман Кирилич)