summaryrefslogtreecommitdiff
path: root/doc/todo/windows_support.mdwn
blob: fea8241cc4159de0e933dd81e2c232adac0395c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
The git-annex Windows port is not ready for prime time. But it does exist
now! --[[Joey]] 

## status

* Does not work with Cygwin's build of git (that git does not consistently
  support use of DOS style paths, which git-annex uses on Windows). 
  Must use Msysgit.
* rsync special remotes are known buggy.
* Bad file locking, it's probably not safe to run more than one git-annex
  process at the same time on Windows.
* Ssh connection caching does not work on Windows, so `git annex get`
  has to connect twice to the remote system over ssh per file, which
  is much slower than on systems supporting connection caching.
* `git annex assistant` has not been tested, is probably quite incomplete
  and/or buggy.
* Doesn't daemonize. Maybe use
  <http://hackage.haskell.org/package/Win32-services>
  or perhaps easier,
  <http://hackage.haskell.org/package/Win32-services-wrapper>
* XMPP library not yet built.
  
  This should work to install the deps, using libs from cygwin

	cabal install libxml-sax --extra-lib-dirs=C:\\cygwin\\lib --extra-include-dirs=C:\\cygwin\\usr\\include\\libxml2
	cabal install gnuidn --extra-lib-dirs=C:\\cygwin\\lib --extra-include-dirs=C:\\cygwin\\usr\\include\\
	cabal install gnutls --extra-lib-dirs=C:\\cygwin\\lib --extra-include-dirs=C:\\cygwin\\usr\\include\\

  While the 1st line works, the rest fail oddly. Looks like lack of
  quoting when cabal runs c2hs and gcc, as "Haskell Platform" is
  taken as 2 filenames. Needs investigation why this happens here
  and not other times..

  Also needs gsasl, which is not in cygwin. 
  See <http://josefsson.org/gsasl4win/README.html>