The current stable release is darcs 2.12.
You can grab the source of the latest reviewed branch from
You can also clone darcs’ repository using darcs itself:
darcs clone --lazy http://darcs.net/ # more up-to-date, less tested darcs clone --lazy http://darcs.net/reviewed # less up-to-date, more tested
If for whatever reason you need an older release of darcs, see Releases.
Darcs is written in Haskell, and to build it we recommend the installation of the Haskell Platform. Building can then be done by typing
cabal update followed by
cabal install in the source directory. Note for Mac users: by default, cabal will attempt to install packages with profiling enabled, which may cause installation failures; disabling profiling may help - see issue2268 for details.
There some flags that can be used to alter compilation. They are specified like this:
$ cabal install -fflag_name
Here are some may be of interest. Search for “flags” in the
darcs.cabal file file for the complete list.
-f-curl: By default the cabal-based build requires the cURL library and development headers. If you can’t provide cURL, use this flag to disable the use of it. The pure Haskell ‘HTTP’ package will be used instead.
-frts: When trying to use the patch-index feature, you can may get an error like this: “Stack space overflow: current size 8388608 bytes.” darcs can be recompiled with this flag to avoid the issue.
-fstatic: Builds a static binary, which bundles most dependencies. The resulting binary is larger, but is able to be installed on similar machines without also installing all the dependencies separately.
Official Windows binaries:
For local or HTTP access, just download the zip file above and unpack it. If you need SSH support, see Windows.
MacOS X now has four binary architectures; ppc, ppc64, x86, x86_64. For the purposes of haskell/darcs building, I think this mostly amounts the two architectures of the ppc/x86 split. The Rosetta emulation layer that ships with 10.4 x86 allows x86 users to run many (but not all) ppc binaries, however ppc users cannot run x86 binaries.
brew install http://darcs.covariant.me/darcs.rb
Official MacOS X binaries:
Binary not recent enough? Compiling from source can actually be quite easy. Just download the Haskell Platform and run
cabal install darcs
For former versions of OS X you can compile like this:
MACOSX_DEPLOYMENT_TARGET=10.7 cabal install darcs
or like this (which is not tested yet):
cabal install --gcc-options="-mmacosx-version-min=10.7" darcs
Binary for Linux
v2.2.0 above may be useful to run with older kernels.
Packages for Debian and Ubuntu
Download a .deb from packages.debian.org
Distributions that provide darcs
http://packages.gentoo.org/package/dev-util/darcs. You can try the “unstable” version (for non-i386 platforms replace ~x86 with correct keyword, for amd-64 use ~amd64):
mkdir /etc/portage(if you have not already done so)
echo "dev-util/darcs ~x86" >> /etc/portage/package.keywords
To see wether Darcs builds on your FreeBSD version, check the FreeBSD ports collection:
To build from source:
cd /usr/ports/devel/darcs && make install or, to install the server as well:
cd /usr/ports/devel/darcs && make -DWITH_SERVER install If you install the server, the CGI executable is installed as /usr/local/libexec/darcs/cgi-bin/darcs, and its configuration file is /usr/local/etc/darcs/darcs/cgi.conf.
Since darcs depends on Haskell, be prepared for the above to also download and install any Haskell related ports that you don’t already have, such as ghc.
To fetch and install a binary package from an official FreeBSD server:
pkg_add -r darcs
The statically-linked Linux binary above also appears to work if you’ve got COMPAT_LINUX in your kernel.
If you want to compile darcs yourself on FreeBSD, be sure to use
gmake instead of
darcs is available in ports. To install the binary ports package:
export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/`uname -r`/packages/`machine -a`/ pkg_add -v darcs
The following table lists the darcs version available in each OpenBSD release.
|OpenBSD release||darcs version|
No native binaries are available yet. On x86, the statically-linked Linux binary above works if you’ve got COMPAT_LINUX in your kernel.
It’s possible to use pkgsrc to install binary or build Darcs from sources. Darcs is in directory pkgsrc/devel/darcs.