Can it be built on Windows? short answer: not yet First, you need to get some unix utilities for windows. Git of course. Also rsync, and a `cp` command that understands at least `cp -p`, and `uuid`, and `xargs` and `sha1sum`. Note that some of these could be replaced with haskell libraries to some degree. There are probably still some places where it assumes / as a path separator, although I fixed probably almost all by now. Then windows versions of these functions could be found, which are all the ones that need POSIX, I think. A fair amount of this, the stuff to do with signals and users, could be empty stubs in windows. The file manipulation, particularly symlinks, would probably be the main challenge.
addSignal blockSignals changeWorkingDirectory createLink createSymbolicLink emptySignalSet executeFile fileMode fileSize forkProcess getAnyProcessStatus getEffectiveUserID getEnvDefault getFileStatus getProcessID getProcessStatus getSignalMask getSymbolicLinkStatus getUserEntryForID getUserEntryForName groupWriteMode homeDirectory installHandler intersectFileModes isRegularFile isSymbolicLink modificationTime otherWriteMode ownerWriteMode readSymbolicLink setEnv setFileMode setSignalMask sigCHLD sigINT unionFileModesA good starting point is