Cabal- A framework for packaging Haskell softwareContentsIndex

The License datatype. For more information about these and other open-source licenses, you may visit

The .cabal file allows you to specify a license file. Of course you can use any license you like but people often pick common open source licenses and it's useful if we can automatically recognise that (eg so we can display it on the hackage web pages). So you can also specify the license itself in the .cabal file from a short enumeration defined in this module. It includes GPL, LGPL and BSD3 licenses.

data License
| BSD3
| BSD4
| PublicDomain
| AllRightsReserved
| OtherLicense
| UnknownLicense String
data License
This datatype indicates the license under which your package is released. It is also wise to add your license to each source file using the license-file field. The AllRightsReserved constructor is not actually a license, but states that you are not giving anyone else a license to use or distribute your work. The comments below are general guidelines. Please read the licenses themselves and consult a lawyer if you are unsure of your rights to release the software.
GPLGNU Public License. Source code must accompany alterations.
LGPLLesser GPL, Less restrictive than GPL, useful for libraries.
BSD33-clause BSD license, newer, no advertising clause. Very free license.
BSD44-clause BSD license, older, with advertising clause.
PublicDomainHolder makes no claim to ownership, least restrictive license.
AllRightsReservedNo rights are granted to others. Undistributable. Most restrictive.
OtherLicenseSome other license.
UnknownLicense StringNot a recognised license. Allows us to deal with future extensions more gracefully.
show/hide Instances
Produced by Haddock version 2.3.0