We kind of do something along those lines with some added layers.

I have VirtualBox installed on a windows laptop. I then have an Ubuntu WSL 2 
that I run through Terminal/bash. I then have a tool called Vagrant installed 
on Windows and WSL where I can spin up and destroy various dev environments 
through the VagrantFile, some additional provisioning through Ansible to have 
basics like java, npm, etc already installed, and then using the VirtualBox 
WSL2 plugin
https://developer.hashicorp.com/vagrant
https://developer.hashicorp.com/vagrant/docs/other/wsl
https://github.com/Karandash8/virtualbox_WSL2

Your box can be anything, used to use Centos6/7, but now use Rocky9. I then ssh 
into them using vagrant ssh and complete anything I need to do as you would any 
other VM.  I just clone repos down and can build right from there on my 
provisioned box. If my dev environment ever acts up, I just destroy it and spin 
up a new one. Some people store their repos just in the home directory which is 
lost on destroy, but others will use /vagrant directory which is a shared 
folder between it and the host so they can use an IDE and still build through 
the box and have it backed up somewhere. You can use the Windows Remote 
Development extension pack to allow you to have some GUI apps to develop from 
the vagrant box or WSL just typing `code .` for example here is how you would 
use vscode. You can also use VcXsrv Windows X as an alternative. There are 
other apps available now as well.

https://learn.microsoft.com/en-us/windows/wsl/tutorials/wsl-vscode
https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack

It's a bit of setup and moving parts, but once its setup, its fairly efficient 
and easy to get into and start working. This is also just one aspect of each of 
these tools and there's plenty to expand upon and fine tune to your own needs 
and customizations.

I think the need for vagrant may or may not still be there as WSL improves with 
remote development, but it's nice to be able to quickly destroy and spin back 
to a known state and not fight with your WSL instance. I have not  looked into 
these, but there is something similar you can do now with dev docker containers 
that looks really cool.
https://code.visualstudio.com/docs/devcontainers/containers
https://code.visualstudio.com/docs/remote/wsl#_advanced-opening-a-wsl-2-folder-in-a-container

Another way would be through a Linux VDI through something like VMware 
Horizons, so that may be something you'd want to bring up with your IT 
department as an option, but there is cost and you may also get the added need 
of a VPN when remote.

-----Original Message-----
From: Mike Beckerle <mbecke...@apache.org>
Sent: Tuesday, January 30, 2024 2:22 PM
To: dev@daffodil.apache.org
Subject: WSL for linux on Windows?

Is anyone doing development using WSL or WSL2 linux support?

If so what is your experience with it? positive, negative,.... does it work 
reliably?

I have been having lots of freeze-ups using VMWare Workstation running Ubuntu 
guest on windows host, and I'm starting to get pessimistic about VMWare 
Workstation long term.

I'd run Linux natively, but my employer requires that we use managed laptops, 
but we can use Virtual Machines on them for development.

Mike Beckerle
Apache Daffodil PMC | daffodil.apache.org OGF DFDL Workgroup Co-Chair | 
http://www.ogf.org/ogf/doku.php/standards/dfdl/dfdl
Owl Cyber Defense | http://www.owlcyberdefense.com/

Reply via email to