Original author(s) | Isaac Potoczny-Jones |
---|---|
Developer(s) | Duncan Coutts |
Initial release | January 2005 |
Stable release | 3.8.1.0[1]
/ August 2022 |
Written in | Haskell |
Operating system | Any Unix-like, Microsoft Windows |
Available in | English |
Type | Application level package manager |
License | BSD |
Website | www |
The Haskell Cabal (common architecture for building applications and libraries) aids in the packaging and distribution of software packages.
Cabal was introduced to simplify packaging of Haskell software and modules[citation needed]. It was added to the Glasgow Haskell Compiler in version 6.4 as the default package manager,[2] (alongside GHC's internal manager "ghc-pkg"). Its approach has changed significantly over the course of its development, moving from global package installation to sandboxed builds, and eventually a Nix-inspired solution of local builds with global caching,[3] which became the default in 2019.
Cabal packages provide a standard set of metadata and build process; thus, it is possible to develop tools to upload Cabal packages to the CPAN-like community repository of software, Hackage, or even allow for automated downloading, compilation, and installation of desired packages from Hackage.[4]