Cabal (software)


title: "Cabal (software)" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["free-software-programmed-in-haskell", "free-package-management-systems", "software-using-the-bsd-license"] topic_path: "general/free-software-programmed-in-haskell" source: "https://en.wikipedia.org/wiki/Cabal_(software)" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::data[format=table title="Infobox software"]

FieldValue
nameCabal
authorIsaac Potoczny-Jones
developerDuncan Coutts
released
latest release version
latest release date
programming languageHaskell
operating systemUnix, Unix-like, Windows
platformIA-32, x86-64
languageEnglish
genreApplication level package manager
licenseBSD
website
::

| name = Cabal | logo = | screenshot = | caption = | collapsible = | author = Isaac Potoczny-Jones | developer = Duncan Coutts | released = | latest release version = | latest release date = | programming language = Haskell | operating system = Unix, Unix-like, Windows | platform = IA-32, x86-64 | language = English | genre = Application level package manager | license = BSD | website =

The Cabal (common architecture for building applications and libraries) is a type of package manager to aid in packaging and distributing software packages, in the forms of application software and libraries, for the programming language Haskell.

History

Cabal was introduced to simplify packaging of Haskell software and modules. It was added to the Glasgow Haskell Compiler in version 6.4 as the default package manager, 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, which became the default in 2019.

Use

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 automated downloading, compiling, and installing of desired packages from Hackage.

References

References

  1. "1.4. Release notes for version 6.4".
  2. "Announcing cabal new-build: Nix-style local builds".
  3. "cabal-install: The command-line interface for Cabal and Hackage".

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

free-software-programmed-in-haskellfree-package-management-systemssoftware-using-the-bsd-license