OS-specific instructions

Using cabal

As a haskell package, git-annex can be built using cabal. For example:

cabal install git-annex --bindir=$HOME/bin

Installation by hand

To build and use git-annex, you will need:

Then just download git-annex and run: make; make install

Long answer, quoting from a mail to someone else:

Well, I can tell you that it assumes a POSIX system, both in available utilities and system calls, So you'd need to use cygwin or something like that. (Perhaps you already are for git, I think git also assumes a POSIX system.) So you need a Haskell that can target that. What this page refers to as "GHC-Cygwin": http://www.haskell.org/ghc/docs/6.6/html/building/platforms.html I don't know where to get one. Did find this: http://copilotco.com/mail-archives/haskell-cafe.2007/msg00824.html

(There are probably also still some places where it assumes / as a path separator, although I fixed some.)

FWIW, git-annex works fine on OS X and other fine proprietary unixen. ;P


Alternatively, windows versions of these functions could be found, which are all the ones that need POSIX, I think. A fair amount of this, the stuff to do with signals and users, could be empty stubs in windows. The file manipulation, particularly symlinks, would probably be the main challenge.

addSignal
blockSignals
changeWorkingDirectory
createLink
createSymbolicLink
emptySignalSet
executeFile
fileMode
fileSize
forkProcess
getAnyProcessStatus
getEffectiveUserID
getEnvDefault
getFileStatus
getProcessID
getProcessStatus
getSignalMask
getSymbolicLinkStatus
getUserEntryForID
getUserEntryForName
groupWriteMode
homeDirectory
installHandler
intersectFileModes
isRegularFile
isSymbolicLink
modificationTime
otherWriteMode
ownerWriteMode
readSymbolicLink
setEnv
setFileMode
setSignalMask
sigCHLD
sigINT
unionFileModes
Comment by joey Fri Jun 10 15:55:38 2011

Would be great! :-)

Jonas

Comment by Jonas Fri Jun 10 14:08:36 2011

Is there going to be an update of git-annex in debian squeeze-backports to a version that supports repository version 3? Thx

Comment by Matthias Wed Aug 17 08:34:46 2011

You can also use Homebrew instead of MacPorts. Homebrew's haskell-platform is up-to-date, too:

brew install haskell-platform git ossp-uuid md5sha1sum coreutils pcre
ln -s /usr/local/include/pcre.h /usr/include/pcre.h

As of this writing, however, Homebrew's md5sha1sum has a broken mirror. I wound up getting that from MacPorts anyway.

Comment by cfm [schleptet.net] Tue Aug 30 10:31:36 2011
Yes, I uploaded it last night.
Comment by joey Wed Aug 17 11:34:29 2011
Comments on this page are closed.