|Version 7 (modified by ross@…, 6 years ago)|
The Hackage Database
The package collection can be presented in various ways. So far we have fairly simple interfaces:
- simple package browser. The source code is available via
- basic web interface to the Hackage database.
It presents a simple listing of packages, and has forms for checking and uploading packages.
The source code is available via
- darcs get http://darcs.haskell.org/hackage-scripts
For future enhancement plans, see HackageToDo.
cabal-upload is a command-line tool for uploading Cabal packages to HackageDB. Its usage is
cabal-upload user-name password cabal-file
It works by wrapping an interaction with the upload form in the basic web interface. The source is included in the Cabal repository.
A package collection is a directory with a simple structure:
- latest.misc (symbolic link)
where 00-index.tar.gz tars up all the pkg/pkgid.cabal files.
The collection may contain several versions of a particular package.
For example, see the package collection underlying the above interface.
Suggestion: replace the index with a concatenation of the .cabal files with some separator (say @), and having both gzipped and uncompressed versions.
Client-side cabal-put? was an early prototype of an upload tool, but is currently defunct.
There is also a Perl script cabal-put on darcs.haskell.org, now superceded by the web interface.