Skip to content
forked from haskell/cabal

Official upstream development repository for Cabal and cabal-install

License

Notifications You must be signed in to change notification settings

geekosaur/cabal

This branch is 6 commits behind haskell/cabal:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d93f066 · Mar 16, 2025
Aug 7, 2022
May 24, 2023
Feb 27, 2025
Apr 30, 2024
Jan 24, 2025
Jan 18, 2025
Mar 5, 2025
Mar 5, 2025
Jan 24, 2025
Jan 24, 2025
Mar 15, 2025
Dec 26, 2024
Jan 15, 2025
Jan 24, 2025
Jan 15, 2025
Mar 5, 2025
Mar 5, 2025
Mar 3, 2025
Jan 17, 2025
Mar 3, 2025
Mar 16, 2025
Sep 15, 2024
Sep 16, 2024
Dec 26, 2024
Jan 19, 2025
Dec 29, 2024
Jan 24, 2025
Jan 24, 2025
Jun 28, 2024
Jun 28, 2024
Dec 11, 2019
Oct 4, 2024
Jan 17, 2025
Jan 20, 2020
Jan 9, 2025
Apr 16, 2024
Jan 7, 2025
Aug 27, 2019
May 21, 2024
Jan 15, 2025
Aug 27, 2019
Feb 18, 2025
Feb 28, 2024
Jan 18, 2025
Nov 30, 2024
Dec 26, 2024
Apr 30, 2024
Dec 22, 2024
Dec 26, 2024
Apr 30, 2024
Dec 22, 2024
Dec 23, 2024
Mar 16, 2024
Jul 16, 2023
Jan 26, 2022
Jul 18, 2016
Mar 7, 2022
Apr 23, 2024
Sep 9, 2024

Repository files navigation

Cabal

Hackage version Stackage version Documentation Status IRC chat Matrix chat GitLab pipeline status

This Cabal Git repository contains the following main packages:

The canonical upstream repository is located at https://github.com/haskell/cabal.

Ways to get the cabal-install binary

  1. GHCup (preferred): get GHCup using the directions on its website and run:

    ghcup install --set cabal latest
    
  2. Download from official website: the cabal-install binary download for your platform should contain the cabal executable.

Preview Releases

Getting unreleased versions of cabal-install: gives you a chance to try out yet-unreleased features. Currently, we only provide binaries for x86_64 platforms.

  1. GitHub preview release built from the tip of the master branch: download from GitHub or use this GHCup command to install:

    ghcup install cabal -u https://github.com/haskell/cabal/releases/download/cabal-head/cabal-head-Linux-x86_64.tar.gz head
    

    Replace "Linux" with "Windows" or "macOS" as appropriate.

    The default Linux build is dynamically linked against zlib, gmp and glibc. You will need to have appropriate versions of these libraries installed to use it. Alternatively a statically linked "Linux-static" binary is also provided.

    You might need to add the following to your cabal.project file if your build fails because of an out-of-date Cabal library:

    allow-newer:
      *:Cabal,
      *:Cabal-syntax
    
    source-repository-package
        type: git
        location: https://github.com/haskell/cabal.git
        subdir: Cabal Cabal-syntax
    
  2. Even more cutting-edge binaries built from pull requests are always available from the Validate workflow page on GitHub, at the very bottom of the page, or from the build-alpine workflow for statically linked Linux builds.

Ways to build cabal-install for everyday use

  1. With cabal-install: if you have a pre-existing version of cabal-install, run:

    cabal install cabal-install
    

    to get the latest version of cabal-install. (You may want to cabal update first.)

  2. From Git: again with a pre-existing version of cabal-install, you can install the latest version from the Git repository. Clone the Git repository, move to its root, and run:

    cabal install --project-file=cabal.release.project cabal-install
    
  3. Bootstrapping: if you don't have a pre-existing version of cabal-install, look into the bootstrap directory.

Learn how to use cabal and get support

cabal comes with a thorough User Manual. If you are new to cabal and want to quickly learn the basics, check Getting Started With Haskell and Cabal.

Got questions? Ask in Haskell Matrix (online chat) or Haskell Discourse.

Build for hacking and contributing to cabal

Refer to CONTRIBUTING.md.

About

Official upstream development repository for Cabal and cabal-install

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Haskell 98.4%
  • Shell 0.4%
  • Python 0.2%
  • Dockerfile 0.2%
  • Vim Script 0.2%
  • Makefile 0.2%
  • Other 0.4%