Original (04/06/16), Insider Preview Build 14316:
This summer Microsoft is releasing their anniversary update to Windows 10 which includes their “Windows Subsystem for Linux” allowing the user to run Ubuntu Linux from the Windows command prompt. The developer insider preview build was released this morning, so inevitably…
… I tried to install the LSST stack on Windows.
Here are my notes of the attempt:
- I’ve successfully installed the windows preview build. (I had to remove my graphics drivers in safe mode, although I suspect I could just have disabled SLI before the windows update.)
- The “Windows Subsystem for Linux” works.
- I was unable to install all the pre-req libraries.
- I was unable to install the anaconda python distribution due to a symlink issue.
- I was unable to install the LSST stack from source, I tried with the miniconda but it also failed citing symlink issues. Without the miniconda it managed to install EUPS but failed at creating the basic environment citing symlink issues.
Sample symlink errors:
tar: addon/doxmlparser/src/doxmlintf.h: Cannot create symlink to ‘…/include/doxmlintf.h’: Invalid argument
tar: bin/python: Cannot create symlink to ‘python2.7’: Invalid argument
tar: bin/python2: Cannot create symlink to ‘python2.7’: Invalid argument
tar: lib/libpython2.7.so: Cannot create symlink to ‘libpython2.7.so.1.0’: Invalid argument
tar: lib/pkgconfig/python.pc: Cannot create symlink to ‘python-2.7.pc’: Invalid argument
tar: lib/pkgconfig/python2.pc: Cannot create symlink to ‘python-2.7.pc’: Invalid argument
So it seems from a very preliminary attempt and a bit of Googling that Microsoft currently needs to reconcile differences between file storage systems on Windows and the Linux subsystem allowing symlinks to work completely.
Update (05/24/16), Insider Preview Build 14342:
Microsoft released a few new features and fixes for the Windows Subsystem for Linux (WSL) including support for symlinks across different file systems. Time for attempt number two.
- Managed to install Anaconda.
- Did not succeed in installing all the pre-req software.
- Managed to install the conda distributed LSST stack.
- Managed to install the stack from source.
- However, due to missing pre-req dependencies the stack in both cases did not work. (Attempted importing lsst.afw.image in python to no avail).
Currently, WSL does not have the /proc filesystem fully implemented stopping libcurl4-openssl-dev, openjdk-7-jre and ca-certificates from apt-get installing. Fortunately, the issue is being tracked by Microsoft developers and has been fixed with a possible release within a few weeks. Full disclosure: there is an installation workaround of jdk / jre, however I have not tried it (…yet?).
All in all, more progress, and more importantly, progress in the right direction. Another update when the fix is live!
Update (05/26/16), Insider Preview Build 14352:
Microsoft deployed the /proc fix and now all listed pre-requisite libraries install from apt-get. Unfortunately, there are still unresolved errors. See comments and ongoing discussion below.