XWindows apps running natively on ... Windows?

Has anyone tried WSLg yet? Any comments on performance, or incompatibilities? This guy demonstrates nautilus and a Linux build of kdenlive running on a development build of Windows.

Jep running it here on my computer pretty nice if you need packages/applications from the linux subsystem

Using Ubuntu, Arch, Kali etc for the moment

Join dev channel and update your system → install GPU WSL driver
I had to join Nvidia Program to get to the driver but worked for me and my old GTX970. (Had to choose an organization when joining the Program, did not find my University so I did choose a similar sounding one and had not to login, just to fill out).

Install the Cuda Package in your Distribution for Cuda usage, using the guide on NV Page

Included Cuda / GPU usage in your Linux Distribution: e.g
$ ./BlackScholes
[./BlackScholes] - Starting…
GPU Device 0: “Maxwell” with compute capability 5.2

Initializing data…
…allocating CPU memory for options.
…allocating GPU memory for options.
…generating input data in CPU mem.
…copying input data to GPU mem.
Data init done.

Executing Black-Scholes GPU kernel (512 iterations)…
Options count : 8000000
BlackScholesGPU() time : 0.577092 msec
Effective memory bandwidth: 138.626122 GB/s
Gigaoptions per second : 13.862612

Pretty stable overall (no crashes of wsl / windows) since upgrade to the Win 10 from Dev Channel, but VirtualBox / Vagrant are not working atm.
Trying to get Vagrant to run with HyperV but no success there yet.

VirtualBox (if you need it) won’t work with WSL2 - at least it did not work on my computers - I guess the WSL2 Layer is hugging the “VM Layer” and VirtualBox can’t access it and start the virtual HDD etc - and there should be fixes around also some issues with it

But IMHO it’s a game changer! Easy GPU Support in Linux with WSL and
image
access to the filesystem from the windows explorer (no Setup needed).

Still open on my List to Test:
Testing Cross/Boostraping of Linux Distro on WSL2 - Did not work with WSL1, because some sys call where not implement. If I can cross-debootstrap a RaspberryPi Version, I’m Happy and I don’t need VirtualBox anymore (fingerscrossed)

Open Issues:
Vagrant - trying to switch/fix hyperv usage → Next step installing it without VirtualBox installed and testing again
VirtualBox with WSL2, It should work according to Oracle and Patch Notes :S → Next step install it after WSL2/HyperV is installed

What I find interesting are the drivers support listed on the WSLg Support Page from Microsoft. Microsoft is calling this “technology” virtual GPU (vGPU) enabled… So maybe vGPU support is now possible for Linux or what are your take on this calling this “technology” virtual GPU (vGPU) enabled… So maybe vGPU support is now possible for Linux or what are your take on this @wendell?
PS would love a video from you about WSLg :slight_smile:

/can not post links so you have to google/duckduckgo WSLg and fallow the links there.
Cuda install guide can be found the same way as you download the driver - my tipp open and save as bookmark.

I’ll have to post more later, but right now wanted to address the vGPU question. I know there are multiple ways to address this. I know some VM vendors just use a translation layer to e.g. translate OpenGL calls to DirectX. I’m not sure if this some kind of ‘pass through sharing’ option where the VM has direct access to the GPU. AFAIK this requires SR-IOV which these consumer cards supposedly don’t have. But Nvidia has recently relented on Code 43 errors, so who knows

Eh…

I’ve recently gave Windows 10, WSL and Docker for Windows a chance but when I realized nothing worked because the Windows version of git replaced all my line breaks with CRLF while cloning and ruined god knows how many lines of shell script I will never try such things again.

If you work with Linux or Unix get a proper Linux or Unix machine.

Pro Tipp (had same issue with university project) - you are searching for .gitattributes and . text eol=lf → linux encoding
*.docx binary for excluding from EOL conversion.

The files are correctly committed to the git (eg linux eol) but when unchecking them git will try to convert them to windows eol → why I don’t know nearly every editor can handle them but for some reason…

@imrazor they do have the capability, at least most newer one should, because Quadro cards uses the same GPU Core just different drivers.

The problem is not how the editor behaves but the fact that if you try to run a shell script with CRLF it will probably fail. So if you cloned the files from git Windows and plan to run the shell script inside a WSL instance (like Docker Desktop for Windows) it will fail.

Then imagine you only find out about this default behavior after you’ve committed work to your project.

not if you check in the .gitattributes file - like you do with the .gitignore file

But again, since I’ve only found out about the necessity to modify the default behavior after I spent some time working into that cloned project then my day was already ruined and I’d rather stay clear from using Windows to work on Unixy things.

Yeah this is definitely not something you want in production without careful vetting. I think it does require a Windows Insider build of Win 10, and that should be plenty of warning right there.

I haven’t had a chance to try it out myself yet, and probably won’t until this weekend sometime. It is interesting and useful to hear the difficulties others have had with it.