Florent Rougon <[EMAIL PROTECTED]> writes: > Hello, > > I am not quite sure it is the best place to post this, but anyway. > > I wrote a Python script to create and manage APT repositories which has > the following features:
I think reprepro obsoletes your efforts. I think it already covers all your needs and much more. > - supports repositories with a structure almost identical to that of > the Debian archive, with distributions, the main/contrib/non-free > sections and package pools (the only difference being that I thought > the structure pool/p/packagename/<files> was overkill for > reasonably-sized distributions, and therefore used > pool/packagename/<files> instead); > > - can create and sign the master Release file for a distribution, > which allows APT 0.6 and later to trust (authenticate) the > repository after checking the GnuPG signature of the master Release > file; > > - rudimentary command-line interface to remove packages from the > Sources[.gz,.bz2] and Packages[.gz,.bz2] files; Reprepro handles all that for you just fine. It also keeps sources in the archive as long as debs build from it are there (e.g. GPL requires this) [provided you import sources at all] and removes old versions when newer ones are added. Reprepro can also mirror/merge existing repositories into the local one. I have debian + security in main/contrib/non-free and my own packages in an extra section local. > - can automatically replicate the repositories to one or several local > or remote locations (for the remote case: with scp and ssh[1]). If you replicate a repository with reprepro (i.e. use a file:// url) it will use hardlinks where possible. I find that a very usefull feature to preserve diskspace. For remote replication I just run reprepro update on the remote site and it updates its mirror. > That's it. It is adequate to my way of working, and I'd be happy if it > could be useful to someone else. > > The program is documented at http://people.debian.org/~frn/fmdr.txt > and can be downloaded at http://people.debian.org/~frn/fmdr > > Happy hacking. > > > [1] ssh is needed because scp blindly follows symbolic links. Use rsync. MfG Goswin -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]