Why is there no Windows port of Vesta yet?

Often people new to Vesta express interest in using it on Windows. So why hasn't Vesta been ported to Windows yet?

Lack of Motivated Developers

Most of the development effort put into Vesta these days comes from Intel which employs two full-time developers to work on it. However, they are concerned primarily with the needs of microprocessor designers using Vesta at Intel who work exclusively in a Linux environment. While the question of Windows support occasionally comes up at Intel, there's really no compelling need for it so Intel doesn't commit any development effort to it.

In order for a Windows port to get completed, a developer who is familiar with Windows will need to to have a reason to begin working with Vesta and devote their time and effort to making Vesta work on Windows.

Building for Windows is Problematic

It shouldn't be too hard to get the source control portions of Vesta working on Windows. While nobody has demonstrated using the repository's NFS virtual filesystems directly, a simple Samba trick makes it possible to access them. The repository tools like vcheckout are pretty simple programs that just need to make a few remote procedure calls over TCP.

However, the really interesting parts of Vesta (guaranteed build repeatability, cross-user build caching, multi-machine build parallelization) are in the build system. The build system is based around the concept of complete encapsulation of each build step. On UNIX systems this is done with the chroot and execve system calls. These make is possible to completely define the filesystem and environment variables observed by each step of the build.

Unfortunately, Windows does not have the chroot system call or anything analogous to it. In order to get the Vesta build system to be able to build for Windows (i.e. run Windows tools such as compilers), we would need to build some sort of filesystem virtualization layer for Windows that would give us an equivalent of chroot (the ability to completely cut off access to all files and directories except for those which the Vesta builder prepares specifically for the current build step). We believe this is possible in theory, and we've even heard rumors that others have built such a system, but it's clearly not a simple problem. (There is even a commercial offering called WinJail which claims to implement chroot for Windows.) We expect it would take a Windows developer with a lot of expertise to implement it.