Development Setup: WSL

If you are using Windows, you should be able to use WSL (Windows Subsystem for Linux).

First, in the box in the lower right corner type "cmd" to get a command shell.  Note that the shell you get will NOT be bash.

At the prompt, run the command

wsl--set-default-version 2

Image

Note that if WSL is not installed, you can install it in the Microsoft Store.

Next run these two commands

wsl --update

wsl --shutdown

Finall run 

wsl

and you should get a "Linux-looking" command prompt.    This would give you a good way to use some Linux commands, but we need a bit more than that.  So go ahead and quit (exit or control-d)

Next to this link to install Ubuntu 22.04 for WSL

When you first run Ubuntu (you should get prompted to open it once it is installed), it will ask you for a username and password---you can pick any username and password you want.

If you get an error about how it can't work with compression/encryption, then open your file explorer and go to 

Users\(your name)\AppData\Local\Packages

Find the directory whose name starts with CanonicalGroupLimited.Ubuntu.22.04LTS (mine was called CanonicalGroupLimited.Ubunut22.04LTS_79rhkp1fndgsc).

Right click it, then choose "Properties".   Then press the "Advanced" button.   There should be a checkbox near the bottom for "Compress contents to save disk space".  Uncheck that and press OK, then try opening Ubuntu again.

In the future, you can type "Ubuntu" into the search box in the lower left.

The first two things you should do are

sudo apt update

sudo apt full-upgrade

If you get asked for a password, it is the one you just selected when you first setup Ubuntu.

You should now be ready to git clone https://gitlab.oit.duke.edu/adh39/ece651-dev-setup.git 

and run

./packages-linux.sh

(answer N to the first question)

and then

./emacs-config.sh

At this point you should be pretty much good to go.  One quick note: When I tried this out, I had to do M-x lsp-workspace-restart after creating my first Java file to get things working.  I don't know why.

You may wish to install evince 

sudo apt install evince

so that you can use it to open pdfs, e.g.

cd doc

evince walkthrough.pdf &