Introduction | Hackage (original) (raw)
Hackage: The Haskell Package Repository
Hackage is the Haskell community's central package archive of open source software. Hackage has been online since January 2007 and is constantly growing. You can publish libraries and programs or download and install packages with tools like cabal-install (or via your distro's package manager).
Package Downloads
Supplementary views:
- Packages by category
- Tags
- Deprecated packages
- Candidate packages
- Preferred and deprecated version information
Package Uploads
Guidelines for Hackage Packages:
- Hackage accepts uploads of Cabal packages
- Packages must be in the standard compressed tarball form produced by Cabal'ssdistcommand.
- Packages cannot be deleted, so you should consider uploading new package versions as package candidates and testing before publishing to the main index.
- All curated packages should follow the Package Versioning Policy (PVP).
- Packages uploads may opt-out of curation through use of the x-curation field
- Please consult the documentation for uploading packages for more in-depth information about Hackage's policies, including the usage of the x-curation field.
Administrative issues
- Taking over a package
- Abandoning a package
- Hackage trustees and what they do
- Submitting changes for the base library
Reporting problems
For issues with accounts or permissions please contact the administrators by email at hackage-admin@haskell.org
Bugs with the site code or server/hosting issues should be reported in the issue tracker.
Scheduled infrastructure status information is available at status.haskell.org and automated uptime information at auto-status.haskell.org. Serious issues requiring immediate action should be reported to admin@haskell.org or on the #haskell-infrastructure irc channel on libera.chat.
The Hackage API
Hackage serves most resources in JSON as well as HTML. It also provides automatically-generated documentation of the site api. Core operations of clients interacting with hackage as a repository should be conducted through the hackage-security library.
Contributing to development
Hackage-server is on github and we welcome contributions including pull requests, bug reports, and feature requests. Developer documentation is on in the github README, includig a quick guide to running your own server instance, and mirroring the central server. You can ask questions on the cabal-devel mailing list or on IRC in the #hackage
channel on libera.chat.
Credits
The current Hackage codebase was spearheaded by Well-Typed. Key funding was provided by the Industrial Haskell Group, which was a consortium of companies that rely on Haskell. The website is maintained by volunteers from the Haskell community. Hosting is provided by Packet and real-time CDN by Fastly.