summaryrefslogtreecommitdiff
path: root/doc/todo/windows_support.mdwn
blob: c7078ec8d2d9c441f5412730480486d24edcf00b (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
36
37
38
39
40
41
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 with a rsyncurl of a local directory are known
			let r = if inr1 then r1 else r2
  buggy. (git-annex tells rsync C:foo and it thinks it means a remote host
  named C...)
* 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.
* The test suite does not 100% pass, although it seems to be getting
  quite close! Current known failures:
  * Some tests fail if git has not had the username and email configured.
    This is odd because the test suite goes to some lengths to
    get env vars set to prevent this problem.
* `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>