Cabal
From HaskellWiki
(Difference between revisions)
(→Information for package users: Added a link to 'Repeat after me: “Cabal is not a Package Manager”') |
|||
| Line 3: | Line 3: | ||
http://www.haskell.org/cabal/ | http://www.haskell.org/cabal/ | ||
| + | |||
| + | == Summary == | ||
| + | * Cabal is a package and build system. Cabal is only involved in the creation of packages and the building of their contents. It does not manage packages. | ||
| + | * cabal-install installs cabal packages. It is distinct from Cabal (the build system). This often confuses new users. Furthermore, cabal-install is not a fully featured package manager. For example, it cannot install non cabal packaged dependencies, it cannot uninstall packages, nor can it automatically upgrade installations. | ||
== Information for package users == | == Information for package users == | ||
Revision as of 01:27, 25 August 2011
The Haskell Cabal:
- The Common Architecture for Building Applications and Libraries
1 Summary
- Cabal is a package and build system. Cabal is only involved in the creation of packages and the building of their contents. It does not manage packages.
- cabal-install installs cabal packages. It is distinct from Cabal (the build system). This often confuses new users. Furthermore, cabal-install is not a fully featured package manager. For example, it cannot install non cabal packaged dependencies, it cannot uninstall packages, nor can it automatically upgrade installations.
2 Information for package users
- How to install a Cabal package
- FAQ: Frequently Asked Questions
- Cabal-Install - tool that greatly simplifies installation of Cabal packages
- Cabal-Sort - assistance with compilation of multiple cabal packages
- CabalFind - finding Cabal packages on the web (now superseded by Hackage)
- Storage and Identification of Cabalized Packages
- cabal-dev, a tool for managing development builds of Haskell projects. It supports maintaining sandboxed cabal-install repositories, and sandboxed ghc package databases. See PSA: Use cabal-dev to solve dependency problems for an extensive description.
- Blog article: Repeat after me: “Cabal is not a Package Manager”
3 Information for package developers
- How to write a Haskell program
- FAQ: Frequently Asked Questions of package authors
- Upgrading packages
- Package versioning policy
- Creating Debian packages from Cabal package
- Adding data files using Cabal
- Cabal Setup file examples
- Cabal-make - automation based on makefiles
- Setting up Cabal, the FFI and c2hs
