Boost logo

Boost :

From: Andreas Pokorny (andreas.pokorny_at_[hidden])
Date: 2005-10-15 04:17:18


Hi,
Some weeks ago someone metioned that we need a C++ variant of
CPAN or CTAN. The idea is really great. But I have no clue where
we would start. How should that service look like, and work internally?

I think we need some identifcation service for authors, maybe some
access control on the packages stored in the serivce. The client frontend
will need something to select mirrors, track dependencies to other packages.
An auto build, intstall and test feature would be nice too.

As Martin Wille just mentioned, something with some of these features
already exists. Gentoos portage [2], written in python handles,
dependencies, integrates a mirror selector, automatically build installs
and uinstalls packages fetched as source code. The package scripts are
shared using rsync[3]. The package source files are automatically
distributed into their mirror system. The only missing thing is the
author identification and access control part. Gentoo "works" with
an indirect system, requiring authors to provide scripts, or users to beg
for packages in their bugzilla system.

Another interesting system could be provided by monotone[4], a very nice
distributed version control system. We could use monotone to replace
rsync, in the suggestion above. Monotone provides a secure system to
get the build scripts anonymously, and allows identifying authors. The
distributive character of monotone allows very intersting use cases, in
which authors are able to update and provide new versions of their
software.

[1] http://www.cpan.org/misc/cpan-faq.html#How_does_the_CPAN_work
[2] http://www.gentoo.org/main/en/about.xml
[3] http://samba.anu.edu.au/rsync/
[4] http://venge.net/monotone/

Regards
Andreas Pokorny


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk