Having trouble using darcs with SSH on Windows?
Make sure darcs knows where to find ssh. Darcs 2.8 and below search for ‘ssh’, ‘scp’, and ‘sftp’ by default. Newer darcs may be smarter, but for now, you’ll have to copy plink to ssh, pscp to scp and pscp to scp and update your PATH.
Set up an SSH key with pageant
Log in manually once and trust the server key.
Always use `firstname.lastname@example.org` instead of `server.com`
Steps 2-4 are due to a usability bug in Darcs. The problem is that Putty SSH communicates with users by reading on stdin and writing to stderr, as opposed to the terminal. The code which interacts with darcs transfer-mode does not cope with this situation very well at the moment. It neither passes the output through nor feeds any user input into putty, thus leading to an apparent hang. Sorry for the inconvenience. We’re working on it!
Darcs is a native Windows console program, it doesn’t use the Cygwin or MSYS libraries. This has some consequences, and affects which shell environments work best with darcs.
We recommend running darcs in one of the following ways on Windows:
- Ordinary Windows CMD shell
- Cygwin shell with
CYGWINnot set to anything)
- console2 also seems to work here
- MSYS without rxvt
- you can rename rxvt so that msys.bat only launches sh under the DOS prompt
- or you can run
C:\msys\1.0\bin\sh --login -iunder console2)
These other shell environments don’t work as well with darcs:
- MSYS rxvt shell
- Cygwin bash shell with
- Cygwin xterm or rxvt
- Emacs shell buffer
The main reason is that in these environments if you hit control-C to terminate darcs, it won’t be able to catch the event and clean up. The usual result is that the
_darcs/lock file is left behind and has to be manually removed, but worse things could happen.
There are other side effects: in an interactive conversation with darcs, you’ll have to hit return after each answer, whereas in a standard Windows console darcs can see the keystroke as soon as you press it.
- strace for Windows:
- BuildingUnderWindows - supplementary documentation
- WindowsConfiguration - setting up your darcs to work nicely under windows