macOS
brew install cabal-installlocal Homebrew formula metadata
sudo port install cabalMacPorts ports tree · lang/cabal/Portfile · source: api.github.com
brew
Command-line interface for Cabal and Hackage. Version 3.16.1.0 via Homebrew; verified from local package data.
install
brew install cabal-installlocal Homebrew formula metadata
sudo port install cabalMacPorts ports tree · lang/cabal/Portfile · source: api.github.com
sudo apt install cabal-installDebian stable package indexes · cabal-install · source: deb.debian.org
sudo dnf install cabal-installFedora Rawhide package metadata · cabal-install · source: dl.fedoraproject.org
nix profile install nixpkgs#cabal-installnixpkgs package indexes · cabal-install · source: raw.githubusercontent.com
sudo pacman -S cabal-installArch Linux sync databases · cabal-install · source: geo.mirror.pkgbuild.com
sudo zypper install cabal-installopenSUSE Tumbleweed package metadata · cabal-install · source: download.opensuse.org
sudo apk add cabalAlpine Linux edge package indexes · cabal · source: dl-cdn.alpinelinux.org
choco install cabalChocolatey community package catalog · cabal · source: community.chocolatey.org
scoop install extras/cabalScoop official bucket manifest trees · bucket/cabal.json · source: api.github.com
winget install --id haskell.cabal -eWindows Package Manager source index · haskell.cabal · source: cdn.winget.microsoft.com
overview
Command-line interface for Cabal and Hackage
history
cabal-install provides the cabal command-line interface for Cabal and Hackage. It is the traditional Haskell package/build tool and remains central to building, fetching, configuring, and installing Haskell packages.
The Haskell Cabal project defines the Common Architecture for Building Applications and Libraries. The project distinguishes cabal-the-spec, cabal-the-library, and cabal-the-tool; the Homebrew cabal-install package is the tool that supplies the cabal executable.
Cabal's package description format and library became part of the common Haskell packaging infrastructure, while cabal-install added the command-line layer for interacting with local packages, remote packages, and Hackage. The upstream repository now contains Cabal, Cabal-syntax, cabal-install, cabal-install-solver, and related components.
Hackage records Cabal package releases back to 1.1.6 and cabal-install releases back to 0.4.0, with current 3.x releases maintained by the Cabal Development Team.
cabal-install became a default expectation in Haskell development because it is tightly coupled to Hackage, the central package archive. The official Cabal site recommends GHCup as the preferred way to install the cabal executable, while still documenting distribution package managers and source/binary downloads.
The tool has stayed relevant alongside newer Haskell tooling because it is both a package manager and a build driver. Its v2/new-build model, package solver, freeze files, project files, and Hackage integration make it an important base layer even when users reach it indirectly through other workflows.
Common commands include cabal init to create package metadata, cabal build to build a project, cabal run to run an executable target, cabal test for tests, cabal update to refresh the package index, and cabal install cabal-install to self-upgrade when appropriate.
The tool manages Haskell package source, dependency solving, build plans, local project configuration, and interaction with Hackage. It is commonly installed alongside GHC, and the upstream README lists GHCup, official downloads, source builds, and preview releases as supported ways to obtain cabal-install.
For package nerds, cabal-install is a foundational package manager because it helped define the Haskell package metadata culture around .cabal files, Hackage uploads, solver-driven dependency plans, and reproducible-ish local project builds before many language ecosystems standardized similar workflows.
Its distinction between a package description format, a library that understands the format, and a CLI that talks to Hackage is historically important. Many later package managers blur those roles; Cabal made them explicit and reusable within the Haskell ecosystem.
security posture
package manager and build ecosystem.
orange risk · high confidence · infrastructure
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
$XDG_CONFIG_HOME/cabal/config~/.config/cabal/config~/.cabal/config%APPDATA%/cabal/configexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
cabal | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://www.haskell.org/cabal/
install metadata
| Package key | brew:cabal-install |
|---|---|
| Version | 3.16.1.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/cabal-install |
| Homepage | https://www.haskell.org/cabal/ |
| Repository | https://github.com/haskell/cabal |
| Upstream docs | https://cabal.readthedocs.io/en/stable |
| License | BSD-3-Clause |
| Source archive | https://hackage.haskell.org/package/cabal-install-3.16.1.0/cabal-install-3.16.1.0.tar.gz |
| Dependencies | gmp |
| Build dependencies | ghc |
| Uses from macOS | libffi |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | cabal-install |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
cabal-install 3.10.3.0-1+b1
command-line interface for Cabal and Hackage
https://www.haskell.org/cabal/
sudo apt install cabal-installcabal-install
nix profile install nixpkgs#cabal-installcabal-install 3.8.1.0-1
command-line interface for Cabal and Hackage
https://www.haskell.org/cabal/
sudo apt install cabal-installcabal-install 3.12.1.0-2.fc45
The command-line interface for Cabal and Hackage
https://hackage.haskell.org/package/cabal-install
sudo dnf install cabal-installghc-cabal-install 3.12.1.0-2.fc45
Haskell cabal-install library
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-installghc-cabal-install-devel 3.12.1.0-2.fc45
Haskell cabal-install library development files
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-develghc-cabal-install-doc 3.12.1.0-2.fc45
Haskell cabal-install library documentation
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-docghc-cabal-install-prof 3.12.1.0-2.fc45
Haskell cabal-install profiling library
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-profghc-cabal-install-solver 3.12.1.0-2.fc45
Haskell cabal-install-solver library
https://hackage.haskell.org/package/cabal-install-solver
sudo dnf install ghc-cabal-install-solverghc-cabal-install-solver-devel 3.12.1.0-2.fc45
Haskell cabal-install-solver library development files
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-solver-develghc-cabal-install-solver-doc 3.12.1.0-2.fc45
Haskell cabal-install-solver library documentation
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-solver-docghc-cabal-install-solver-prof 3.12.1.0-2.fc45
Haskell cabal-install-solver profiling library
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-cabal-install-solver-profghc-open-browser 0.4.0.0-2.fc45
Haskell open-browser library
https://hackage.haskell.org/package/open-browser
sudo dnf install ghc-open-browserghc-open-browser-devel 0.4.0.0-2.fc45
Haskell open-browser library development files
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-open-browser-develghc-open-browser-doc 0.4.0.0-2.fc45
Haskell open-browser library documentation
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-open-browser-docghc-open-browser-prof 0.4.0.0-2.fc45
Haskell open-browser profiling library
https://hackage.haskell.org/package/cabal-install
sudo dnf install ghc-open-browser-profsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.