git-annex.app
For easy installation, use the prebuilt app bundle.
- 10.9 Mavericks: git-annex.dmg
- 10.8.2 Mountain Lion: git-annex.dmg.bz2 warning: not being updated any longer
- 10.7.5 Lion: git-annex.dmg warning: not being updated any longer
To run the git-annex assistant, just install the app, look for the icon, and start it up.
To use git-annex at the command line, you can add
git-annex.app/Contents/MacOS
to your PATH
Alternatively, from the command line you can run
git-annex.app/Contents/MacOS/runshell
, which makes your shell use all the
programs bundled inside the app, including not just git-annex, but git, and
several more. Handy if you don't otherwise have git installed.
autobuilds
Joey autobuilds the app for Mavericks.
using Homebrew
git-annex is now available in Homebrew!
using MacPorts
Install the Haskell Platform from http://hackage.haskell.org/platform/mac.html. The version provided by Macports is too old to work with current versions of git-annex. Then execute
sudo port install git-core ossp-uuid md5sha1sum coreutils gnutls libxml2 libgsasl pkgconfig sudo cabal update PATH=$HOME/bin:$PATH cabal install c2hs git-annex --bindir=$HOME/bin
PATH setup
Do not forget to add to your PATH variable your ~/bin folder. In your .bashrc, for example:
PATH=$HOME/bin:$PATH
See also:
- OSX's haskell-platform statically links things
- OSX's default sshd behaviour has limited paths set
I've moved some outdated comments about installing on OSX to old comments. And also moved away some comments that helped build the instructions above.
Installing via the MacPorts method. I ran into this error.
I was able to solve and get git-annex to build buy providing the --extra-lib-dirs parameter
Cheers, Daniel Wozniak
Hi,
Are there plans to provide a git-annex.app that works on Snow Leopard?
Currently there are only installers for the Lions.
http://downloads.kitenet.net/git-annex/OSX/current/
Thanks :-)
Bad news, it looks like I'm not able to install git-annex to my machine: When I run
I get the following error:
What does ExitFailure 11 mean?
cabal update && cabal upgrade git-annex
i had macports installed. then i installed brew, instaled haskell via brew. i needed to set PATH=$HOME/bin:/usr/local/bin:$PATH
I'm having the same issue as @Pere, with a newer version of DAV :(
cabal: Error: some packages failed to install: DAV-0.3.1 failed during the building phase. The exception was: ExitFailure 11 git-annex-4.20130323 depends on shakespeare-css-1.0.3 which failed to install. persistent-1.1.5.1 failed during the building phase. The exception was: ExitFailure 11 persistent-template-1.1.3.1 depends on persistent-1.1.5.1 which failed to install. shakespeare-css-1.0.3 failed during the building phase. The exception was: ExitFailure 11 yesod-1.1.9.2 depends on shakespeare-css-1.0.3 which failed to install. yesod-auth-1.1.5.3 depends on shakespeare-css-1.0.3 which failed to install. yesod-core-1.1.8.2 depends on shakespeare-css-1.0.3 which failed to install. yesod-default-1.1.3.2 depends on shakespeare-css-1.0.3 which failed to install. yesod-form-1.2.1.3 depends on shakespeare-css-1.0.3 which failed to install. yesod-json-1.1.2.2 depends on shakespeare-css-1.0.3 which failed to install. yesod-persistent-1.1.0.1 depends on shakespeare-css-1.0.3 which failed to install. yesod-static-1.1.2.2 depends on shakespeare-css-1.0.3 which failed to install.
Any ideas?
I was able to build snow leopard completely for the first time over last night (it took a very long time to build all the tools and dependancies). Woohoo!
The way I was able to fully build on a 32-bit 10.6 machine was this
brew uninstall ghc and haskell-platform
brew update
brew install git ossp-uuid md5sha1sum coreutils libgsasl gnutls libidn libgsasl pkg-config libxml2
brew upgrade git ossp-uuid md5sha1sum coreutils libgsasl gnutls libidn libgsasl pkg-config libxml2
(Some of these were already installed/up to date.brew link libxml2
brew install haskell-platform
(This takes a long, long time).cabal update
(assuming you have added~/.cabal/bin
to your pathcabal install cablal-install
cabal install c2hs
cabal install git-annex
It also appears to be running fairly smoothly than it had in the past on a 32-bit SL system. Thats also neat.
The problem is that it seems to not really work as git annex though, probably due to the error relating you get when you start up the webapp: Running
git annex webapp
The browser starts up, and I get 3 of these errors:Watcher crashed: Need at least OSX 10.7.0 for file-level FSEvents
Pairing with a local computer appears to work to systems running 10.7, but when you complete the process, they never show up in the repository list.
Also on a side note, when running
git annex webapp
it triggers the opening of an html file in whatever the default html file handler is. I edit a lot of html, so for me that is usually a text editor. I had to change the file handler to open html files with my web browser for thegit annex webapp
to actually work. Is there a way to change that so thatgit annex webapp
uses the default web browser for the system rather than the default html file handler?@Bret, the assistant relies on FSEvents pretty heavily. It seems to me your best bet is to upgrade OSX to a version that supports FSEvents.
You can certainly use the rest of git-annex on Snow Leopard without FSEvents.
If you get an error like
undefined symbol _iconv for x86_64
, you're most likely using libiconv installed by macports. You can fix this by runningRather than specifying --bindir on the command line for cabal, I edited my ~/.cabal/config to add this line:
This installs the binaries to ~/.cabal/bin but symlinks them into /usr/local/bin alongside the links that homebrew installs. Additionally, I symlinked /usr/local/bin/git-annex-shell to /usr/local/bin/git-annex which made things work great from remote hosts via ssh.
I get this error when I try to build git-annex using "cabal install git-annex"
@Kristian, a new version of the DNS library has caused this. A workaround is to pass
-f-DNS
to the cabal command.I am in the process of adding support for the new DNS library version in git now.
By the way, please file a bug if you have a big ugly looking build failure like that, so as to not clutter up this page.
I have fiddled with the fresh (as of Oct 2nd) build of assistant on OS X 10.8.5, and there has been a lot of problems with bundled software
bundled git is an old 1.7.x version which keeps saying in the daemon logs it is too old to honor .gitignores etc at the same time I have git 1.8.4 installed through homebrew which works very nicely throughout my system
I also have homebrew-installed gpg2:
$ gpg2 --version gpg (GnuPG) 2.0.21 libgcrypt 1.5.3
(and have briefly experimented with using GPGSuite from gpgtools.org, which kept bailing with invalid autolocate directive in gpg.conf)
however there is some unidentifiable gpg binary bundled with the assistant, which cannot connect to gpg-agent from gpg2, and doesn't work with GPGSuite (see above)
is there a way to completely forgo usage of bundled software and have the webapp use whatever is already available on the system?
The FSevents framework itself has been around since leopard.
This fsevents wrapper project supports snow leopard and even leopard, maybe it will provide some clues on how it was done.
I'm guessing it would be worth it, snow leopard is still the most popular OSX as of April. From my own experience, snow leopard is a huge life extender for 2+ year old hardware. Lion just makes them sluggishly painful to use.
Maybe someone could volunteer an SL machine for remote development? Sorry, mine are tied down :(
Hello,
I just compiled git-annex using cabal on OS X, and I see there is no dbus support:
Is this problematic? I see I can install dbus using homebrew. If I do so, will I have dbus support (after recompiling git-annex)?
I'm trying to build git-annex with dbus support, and even though I installed dbus (through homebrew), at the end of compilation I get the warning about "building without dbus". Is there something special I need to do for git-annex to see I have installed dbus?
(Also, it tells me at the beginning that I don't have gcrypt, but libgcrypt is installed.)
You probably need to install libdbus dev stuff, and then the haskell dbus library. But it's certainly going to need code changes to make git-annex use dbus in any way on OSX, assuming there are even useful dbus events generated for network connections and drives being mounted on OSX.
It was saying "gcrypt" when it meant "git-remote-gcrypt".
Following the Mac OS X brew instructions from the top of the board, I got the following error:
[5 of 5] Compiling Yesod ( Yesod.hs, dist/build/Yesod.o ) In-place registering yesod-1.2.5... Installing library in /Users/srinathv/.cabal/lib/yesod-1.2.5/ghc-7.6.3 Registering yesod-1.2.5... Installed yesod-1.2.5 cabal: Error: some packages failed to install: git-annex-5.20140210 depends on libxml-sax-0.7.4 which failed to install. libxml-sax-0.7.4 failed during the configure step. The exception was: ExitFailure 1 network-protocol-xmpp-0.4.5 depends on libxml-sax-0.7.4 which failed to install.
Then I perused the comments and did: $brew link libmxl2 --force $cabal install git-annex --bindir=$HOME/bin
with success.