LinuxConf Europe logo
LinuxConf Europe 2007
Conference and Tutorials
Sunday 2nd - Wednesday 5th September
University Arms Hotel, Cambridge, England

LinuxConf Europe 2007

Photos and reports




LPI Exams

Conference Dinner (Sunday)

Duxford Excursion (Monday)

Exhibitors and Sponsors




About Cambridge

Kernel Summit 2007

Other GUUG events

Other UKUUG events

Mark Overmeer - MARKOV Solutions

CPAN6: Collecting collections

This presentation is NOT about Perl. Probably the main reason to select the scripting language Perl for projects is its excellent module archive, CPAN. Many user groups of other programming languages have attempted to create comparable archives, but none have been as successful. The CPAN archive was developed back in 1996, when the first websites emerged, and has evolved in modest steps. However, it did not get a major overhaul with new technologies or modern requirements (like strong authenticity).

Being very much entangled with Perl5, an investigation was done how to support the upcoming Perl6 and related projects, like Parrot. The CPAN6 project started out as CPAN for Perl6. However, in the process of abstraction of the concept, it was discovered that the resulting infrastructure can be useful for everyone! For instance: how do you collect your digital pictures in a household with multiple people, cameras, and computers? You probably created your own ad-hoc solution; CPAN6 provides a simple and general solution.

People like to collect and share information: pictures, music and software modules. Everyone has a few of these digital collections on their computer. When you want to share your information, you may open the permissions on the directory (for other people on the same system), share a network-disk (for other people on the local network), or use some ftp-server or CVS server. In each of these situations, the distribution of the data is organized ad-hoc and implemented rather technically.

All around us, people try to control their data collections. People try to keep their different types of data nicely separated in directories on disk. Each ftp-mirror maintainer has his or her own way of selecting, collecting and storing. Linux distributions are developing strategies to avoid huge loads on their main servers just after a new release come out. Everywhere you see applications trying to implement some authenticity checking for downloaded data, often based on the horribly broken MD5 checksums. A company has to introduce all kinds of (paper) procedures to avoid leaking documents which did not receive sufficient signatures.

During the design of CPAN6, we found common grounds for all the situations listed above. We were unable to find any generally applicable infrastructure.

CPAN6 contains two basic components.

Firstly, a simple way to start new archives and to connect to existing archives; it must guarantee long term interoperability. This part behaves like your home-directory: the collection of collections, an archive of archives.

The second component is an archive administration implementation, which implements upload and download rights, release management, signing, name-space management, mirroring, basic searching, release under embargo and more of these common needs. Configurable to be extremely relaxed and forgiving, through to being very restrictive. Although the above looks very large to implement and use, that is certainly not the case. All complexity is in the area of defining new terminology and structure of meta-data - in which help is very welcome. Also, there is a need to create Open/Save-like interfaces for various applications. The functionality will be demonstrated.

This project is generously sponsored by foundation Stichting NLnet.

Submitted paper

Paper (PDF) and Paper (tgz) .

G O L D  S P O N S O R  S I L V E R  S P O N S O R 

S  P O N S O R S
Positive Internet
The Positive Internet Company

M  E D I A   S  P O N S O R S
Linux User
Linux User & Developer
Linux Magazine
Linux Magazine
The USENIX Association
The USENIX Association

For more information please contact UKUUG Problems? e-mail webmaster
© Copyright 2007 UKUUG Ltd