Changes between Version 2 and Version 3 of HackageDB
- Timestamp:
- 01/12/07 17:28:19 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
HackageDB
v2 v3 3 3 HackageDB is a pool of Cabal packages, like [http://www.cpan.org CPAN], 4 4 [http://caml.inria.fr/pub/old_caml_site/humps/ the Caml Humps] or [http://cean.process-one.net/ CEAN], except for Haskell. 5 * [http://hackage.haskell.org/packages/unstable/ initial collection] 5 6 == Web interface == 7 8 There is a [http://hackage.haskell.org/packages/hackage.html basic web interface] to the Hackage database. 9 It presents a simple listing of packages, and has forms for checking and uploading packages. 10 The source code is available via 11 * `darcs get` [http://darcs.haskell.org/hackage-scripts] 12 For future enhancement plans, see HackageToDo. 6 13 7 14 == Structure == … … 9 16 A package collection is a directory with a simple structure: 10 17 * `00-index.tar.gz` 18 * `log` 11 19 * ''pkg''/ 12 20 * ''pkgid''`.cabal` … … 17 25 The collection may contain several versions of a particular package. 18 26 27 For example, see the [http://hackage.haskell.org/packages/archive/ package collection] underlying the above interface. 28 19 29 ''Suggestion:'' replace the index with a concatenation of the `.cabal` files with some separator (say `@`), and having both gzipped and uncompressed versions. 20 30 21 == Browsing the package database==31 == Old stuff == 22 32 23 A web interface for browsing the package database is currently in beta. 24 The source is available via 33 The source to an earlier web interface is available via 25 34 * `darcs get` [http://darcs.haskell.org/~lemmih/hackagedb] 26 35 27 Another experiment web interface is [http://hackage.haskell.org/packages/hackage.html]. This interface allows package upload as well as browsing. 28 29 == Adding packages == 30 31 In addition to the experimental web interface you can add packages to the collection if you have a login on `hackage.haskell.org` and belong to the `hackage` group. 32 (If that's not you, ask on the `libraries` mailing list; someone will be glad to do it for you.) 33 Upload your Cabal package to that machine, login and and run 34 {{{ 35 cabal-put MyPackage-1.2.3.tar.gz 36 }}} 37 The tool checks that the package has the structure produced by `cabal sdist`, and installs the package in the collection. 38 39 A future goal is a mechanism for uploading packages remotely, perhaps similar to [http://www.cpan.org/modules/04pause.html The Perl Authors Upload Server]. 40 41 ([wiki:CabalPut Client-side cabal-put] was an early prototype, but is currently defunct.) 36 [wiki:CabalPut Client-side cabal-put] was an early prototype of an upload tool, but is currently defunct.
