Difference between revisions of "Cabal"

From HaskellWiki
Jump to navigation Jump to search
(→‎Information for package users: Added a link to SandFix.hs)
(→‎Information for package users: Changed the sandfix link)
Line 21: Line 21:
 
* [http://www.mew.org/~kazu/proj/cab/en/ cab], a maintenance command of Haskell cabal packages
 
* [http://www.mew.org/~kazu/proj/cab/en/ cab], a maintenance command of Haskell cabal packages
 
* Blog article: [http://softwaresimply.blogspot.fr/2014/07/haskell-best-practices-for-avoiding.html Haskell Best Practices for Avoiding "Cabal Hell"]
 
* Blog article: [http://softwaresimply.blogspot.fr/2014/07/haskell-best-practices-for-avoiding.html Haskell Best Practices for Avoiding "Cabal Hell"]
* [https://github.com/exFalso/sandfix/blob/master/src/SandFix.hs SandFix.hs], a utility for moving Cabal sandboxes to another location
+
* [https://github.com/exFalso/sandfix sandfix], a utility for moving Cabal sandboxes to another location
   
 
== Information for package developers ==
 
== Information for package developers ==

Revision as of 11:54, 11 October 2014

The Haskell Cabal:

The Common Architecture for Building Applications and Libraries

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 developers