Cabal (software)

From Wikipedia, the free encyclopedia
Cabal
Original author(s)Isaac Potoczny-Jones
Developer(s)Duncan Coutts
Initial releaseJanuary 2005; 19 years ago (2005-01)
Stable release
3.10.2.1[1] Edit this on Wikidata / 9 November 2023; 5 months ago (9 November 2023)
Repository
Written inHaskell
Operating systemAny Unix-like, Microsoft Windows
Available inEnglish
TypeApplication level package manager
LicenseBSD
Websitewww.haskell.org/cabal/

The Haskell Cabal (common architecture for building applications and libraries) aids in the packaging and distribution of software packages.

History[edit]

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.

Use[edit]

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]

References[edit]

  1. ^ "Release 3.10.2.1". 9 November 2023. Retrieved 18 November 2023.
  2. ^ "1.4. Release notes for version 6.4". GHC 6.4 user manual. Retrieved 2016-01-12.
  3. ^ "Announcing cabal new-build: Nix-style local builds". Retrieved 1 October 2019.
  4. ^ "cabal-install: The command-line interface for Cabal and Hackage". Hackage. Retrieved 12 January 2016.

External links[edit]