The darcs package

[Tags:gpl, library, test]

Darcs is a free, open source revision control system. It is:

This smartness lets you respond to changing demands in ways that would otherwise not be possible. Learn more about spontaneous branches with darcs.

[Skip to Readme]


Versions,,,, 2.2.0, 2.2.1, 2.3.0, 2.3.1, 2.4, 2.4.1, 2.4.3, 2.4.4, 2.5, 2.5.1, 2.5.2, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.10.0, 2.10.1, 2.10.2, 2.10.3, 2.12.0, 2.12.1, 2.12.2, 2.12.3, 2.12.4, 2.12.5
Change log NEWS
Dependencies array (>=0.1 && <0.5), base (>=4 && <4.6), bytestring (>=0.9.0 && <0.10), cmdlib (>=0.2.1 && <0.4), containers (>=0.1 && <0.5), directory (>= && <, extensible-exceptions (==0.1.*), filepath (>= && <, hashed-storage (>=0.5.6 && <0.6), haskeline (>=0.6.3 && <0.7), html (==1.0.*), HTTP (>=4000.0.8 && <4000.3), HUnit (>=1.0), mmap (==0.5.*), mtl (>=1.0 && <2.2), network (>=2.2 && <2.4), old-time (>=1.0 && <1.2), parsec (>=2.0 && <3.2), process (>= && <, QuickCheck (>=2.3), random (==1.0.*), regex-compat (>=0.95.1), regex-posix (>=0.95.1), shellish (>=0.1.3 && <0.2), tar (==0.3.*), terminfo (==0.3.*), test-framework (>=0.4.0), test-framework-hunit (>=0.2.2), test-framework-quickcheck2 (>=0.2.8), text (>= && <, unix (>=1.0 && <2.6), unix-compat (>=0.1.2), vector (>=0.7), zlib (>= && < [details]
License GPL
Author David Roundy <>, <>
Maintainer <>
Category Development
Home page
Source repository head: darcs get
Uploaded Mon May 14 18:08:27 UTC 2012 by GaneshSittampalam
Distributions Arch:2.12.5, Debian:2.10.2, Fedora:2.12.5, FreeBSD:2.10.1, LTSHaskell:2.12.5, NixOS:2.12.5, Stackage:2.12.5, Tumbleweed:2.12.5
Downloads 12587 total (179 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI




curlUse libcurl for HTTP support.EnabledAutomatic
httpUse the pure Haskell HTTP package for HTTP support.EnabledAutomatic
staticBuild static binaryDisabledAutomatic
terminfoUse the terminfo package for enhanced console support.EnabledAutomatic
threadedUse threading and SMP support.EnabledAutomatic
libraryBuild darcs libraryEnabledAutomatic
executableBuild darcs executableEnabledAutomatic
colorUse ansi color escapes.EnabledAutomatic
mmapCompile with mmap support.EnabledAutomatic
testBuild test harnessDisabledAutomatic
optimizeBuild with optimizations (-O2)EnabledAutomatic
warn-as-errorBuild with warnings-as-errorsDisabledAutomatic
force-char8-encodingAllow base 4.5 or above on Unix. base 4.4 introduces a change in the behaviour of filenames that requires API calls in base 4.5 to workaround. So base 4.4 is not supported at all.DisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for darcs

Readme for darcs-2.8.1

This is the source tree for darcs, a distributed version control system
written in Haskell.

For more information, visit the darcs web site:

Compilation and Installation

Building Darcs requires GHC, version 6.10.3 or higher. It also requires the
Cabal package, version 1.6 or higher.  The cabal-install package is also

If you have the "cabal-install" package on your system (that is, there is a
"cabal" executable in your path), you can use the following command to create
an executable in ~/.cabal/bin/darcs (this will also automatically fetch and
build dependencies from the Hackage server).

    $ cabal update
    $ cabal install

Otherwise, if you have the "cabal" package but not the "cabal-install"
package, run the following:

    $ runghc Setup configure
    $ runghc Setup build
    $ sudo runghc Setup install

You may also omit the last step and copy the darcs executable (found in
dist/build/darcs/darcs) to a location of your choosing.

More detailed instructions can be found at
including instructions on obtaining a copy of cabal-install.

Please also note that the cabal-based build by default requires the cURL
library (and development headers). If, for some reason, you cannot provide
cURL, please pass "-f-curl" to the configure step above.

For more information about darcs hacking and best practices please check
the darcs wiki at

Of particular interest are the following documents:

Comments about do-notation warnings
You may find a number of comments (163 of them at the time of writing) looking
-- Warning:  A do-notation statement discarded a result of type Whatever.
They signal warnings issued by GHC that have been automatically silenced.
See for more detail.

These warnings were most certainly harmless, but who knows... If you stumble
upon one such comment, take a minute or two to check if it is really okay to
ignore the return value (look for "_ <- " on the line next to the comment).  If
everything is correct, please remove the comment and send a patch (mentioning
issue1988).  If it isn't, you have found a bug, congratulations!  Fix it, or
fill a bug report on http//  Finally, if in doubt, leave it as
is.  Many thanks.

For more information about the test suite, including how to run specific
tests please read tests/README.test_maintainers.txt.

Happy hacking!