>>>>> Andrew Schulman writes: > I don't know OCaml, but that sure looks to me as though $UNISON is only > used if $USERPROFILE and $HOME are not set. And yet that behavior > doesn't match what I observe on my host. So that's why I asked, what > happens if you export UNISON=/home/volker/.unison and rerun? Does > unison use $UNISON, or $USERPROFILE/.unison?
As I told you above. It uses $UNISON also in my case. Probably this part from os.ml takes precedence then: (*****************************************************************************) (* UNISON DIRECTORY *) (*****************************************************************************) (* Gives the fspath of the archive directory on the machine, depending on *) (* which OS we use *) let unisonDir = try Fspath.canonize (Some (Unix.getenv "UNISON")) with Not_found -> let genericName = Util.fileInHomeDir (Printf.sprintf ".%s" Uutil.myName) in if Osx.isMacOSX then let osxName = Util.fileInHomeDir "Library/Application Support/Unison" in if Sys.file_exists genericName then Fspath.canonize (Some genericName) else Fspath.canonize (Some osxName) else Fspath.canonize (Some genericName) (* build a fspath representing an archive child path whose name is given *) So the first part of my patch seems ok: --- util.ml.orig 2004-09-28 09:45:32.940632000 +0200 +++ util.ml 2004-09-28 08:40:28.926936000 +0200 @@ -358,10 +358,10 @@ match osType with `Win32 -> let dirString = - try Unix.getenv "USERPROFILE" (* Windows NT/2K *) - with Not_found -> try Unix.getenv "HOME" (* Windows 9x with Cygwin HOME set *) with Not_found -> + try Unix.getenv "USERPROFILE" (* Windows NT/2K *) + with Not_found -> try Unix.getenv "UNISON" (* Use UNISON dir if none of the above are set *) with Not_found -> "c:/" (* Default *) in Ciao Volker -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/