Difference between revisions of "Cabal"
Jump to navigation
Jump to search
(→Information for package users: Removed deprecated cabal-dev) |
Tomjaguarpaw (talk | contribs) (Remove the most egregiously outdated links (several less outdated links remain)) |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 6: | Line 6: | ||
== Summary == |
== 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 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. |
+ | * [[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 == |
||
+ | |||
+ | *[https://cabal.readthedocs.io/en/latest/index.html Cabal User Guide] |
||
*[http://dev.stephendiehl.com/hask/#cabal An introduction to cabal-install] |
*[http://dev.stephendiehl.com/hask/#cabal An introduction to cabal-install] |
||
− | *[[Cabal/Survival | A short and transient survival guide for Cabal users]] |
||
− | *[[Cabal/How to install a Cabal package | How to install a Cabal package]] |
||
− | *[http://coldwa.st/e/blog/2013-08-20-Cabal-sandbox.html An Introduction to Cabal sandboxes] |
||
*[[Cabal/FAQ|FAQ: Frequently Asked Questions]] |
*[[Cabal/FAQ|FAQ: Frequently Asked Questions]] |
||
*[[Cabal-Install]] - tool that greatly simplifies installation of Cabal packages |
*[[Cabal-Install]] - tool that greatly simplifies installation of Cabal packages |
||
*[http://hackage.haskell.org/package/cabal-sort Cabal-Sort] - assistance with compilation of multiple cabal packages |
*[http://hackage.haskell.org/package/cabal-sort Cabal-Sort] - assistance with compilation of multiple cabal packages |
||
− | * |
+ | *[http://hackage.haskell.org/ Hackage] - the Haskell community's public repository of cabal packages |
+ | * Other [https://hackage.haskell.org/packages/search?terms=cabal cabal related packages on hackage] |
||
− | * [http://www.vex.net/~trebla/haskell/sicp.xhtml Storage and Identification of Cabalized Packages] |
||
− | * Blog article: [http://ivanmiljenovic.wordpress.com/2010/03/15/repeat-after-me-cabal-is-not-a-package-manager/ Repeat after me: “Cabal is not a Package Manager”] |
||
− | * [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"] |
||
== Information for package developers == |
== Information for package developers == |
||
*[[How to write a Haskell program]] |
*[[How to write a Haskell program]] |
||
− | *[ |
+ | *[https://wewantarock.wordpress.com/2010/11/03/building-a-shared-library-in-cabal/ Building a shared library in Cabal] |
− | *[[Cabal/Developer-FAQ|FAQ: Frequently Asked Questions of package authors]] |
||
− | *[[Cabal/How to install a Cabal package remotely | How to install a Cabal package remotely]] |
||
*[[Upgrading packages]] |
*[[Upgrading packages]] |
||
*[[Package versioning policy]] |
*[[Package versioning policy]] |
||
− | *[[Creating Debian packages from Cabal package]] |
||
*[http://neilmitchell.blogspot.com/2008/02/adding-data-files-using-cabal.html Adding data files using Cabal] |
*[http://neilmitchell.blogspot.com/2008/02/adding-data-files-using-cabal.html Adding data files using Cabal] |
||
− | *[ |
+ | *[https://web.archive.org/web/20161108012154/www.moonloop.net/haskell/docs/cbs-custom.html Cabal Setup file examples] |
− | *[[Cabal-make]] - automation based on makefiles |
||
*[http://blog.ezyang.com/2010/06/setting-up-cabal-the-ffi-and-c2hs/ Setting up Cabal, the FFI and c2hs] |
*[http://blog.ezyang.com/2010/06/setting-up-cabal-the-ffi-and-c2hs/ Setting up Cabal, the FFI and c2hs] |
||
Latest revision as of 12:34, 2 October 2020
The Haskell Cabal:
- The Common Architecture for Building Applications and Libraries
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
- Cabal User Guide
- An introduction to cabal-install
- FAQ: Frequently Asked Questions
- Cabal-Install - tool that greatly simplifies installation of Cabal packages
- Cabal-Sort - assistance with compilation of multiple cabal packages
- Hackage - the Haskell community's public repository of cabal packages
- Other cabal related packages on hackage