Scroll to navigation

CABAL-INSTALL(1) User Commands CABAL-INSTALL(1)

NAME

cabal-install - manual page for cabal-install version 3.8.1.0

SYNOPSIS

cabal [GLOBAL FLAGS] [COMMAND [FLAGS]]

DESCRIPTION

Command line interface to the Haskell Cabal infrastructure.

See http://www.haskell.org/cabal/ for more information.

Commands:

[global]
Updates list of known packages.
Install packages.
Help about commands.
Display detailed information about a particular package.
List packages matching a search string.
Downloads packages for later installation.
Display and update the user's global cabal configuration.
[package]
Download/Extract a package's source code (repository).
Deprecated alias for 'get'.
Create a new cabal package.
Add extra project configuration.
Compile targets within the project.
Clean the package store and remove temporary files.
Run an executable.
Open an interactive session for the given component.
Run test-suites.
Run benchmarks.
Check the package for common mistakes.
Generate a source distribution file (.tar.gz).
Uploads source packages or documentation to Hackage.
Upload build reports to a remote server.
Freeze dependencies.
Generate dependency bounds.
Check for outdated dependencies.
Build Haddock documentation.
Generate HsColour colourised code, in HTML format.
Give a command access to the store.
list-bin
List the path to a single executable.
[new-style projects (forwards-compatible aliases)]
Compile targets within the project.
Add extra project configuration.
Open an interactive session for the given component.
Run an executable.
Run test-suites.
Run benchmarks.
Freeze dependencies.
Build Haddock documentation.
Give a command access to the store.
Updates list of known packages.
Install packages.
Clean the package store and remove temporary files.
Generate a source distribution file (.tar.gz).
[legacy command aliases]
Compile all/specific components.
Prepare to build the package.
Open an interpreter session for the given component.
Builds and runs an executable.
Run all/specific tests in the test suite.
Run all/specific benchmarks.
Freeze dependencies.
Generate Haddock HTML documentation.
Install packages.
Clean up after a build.
Copy the files of all/specific components to install locations.
Register this package with the compiler.
Reconfigure the package if necessary.

For more information about a command use:

cabal COMMAND --help

or cabal help COMMAND

To install Cabal packages from hackage use:

cabal install foo [--dry-run]

Occasionally you need to update the list of available packages:

cabal update

Global flags:

Show this help text
Print version information
Print just the version number
Set an alternate location for the config file
Ignore expiry dates on signed metadata (use only in exceptional circumstances)
Set a transport for http(s) requests. Accepts 'curl', 'wget', 'powershell', and 'plain-http'. (default: 'curl')
Enable Nix integration: run commands through nix-shell if a 'shell.nix' file exists
Disable Nix integration
The location of the build store
The active package repositories (set to ':none' to disable all repositories)

You can edit the cabal configuration file to set defaults:

/homedoesnotexistatbuildtime/.cabal/config

This file will be generated with sensible defaults if you run 'cabal update'.

compiled using version 3.8.1.0 of the Cabal library

October 2023 cabal-install version 3.8.1.0