Photo - Roseanna Smith


Use PowerShell

To get to a PowerShell from a command prompt:


You can also hit the Windows (⊞) key and type in "PowerShell" to find a PowerShell Prompt.

I prefer to configure my IDEs to also use PowerShell. In Visual Studio Code (VSCode):

// Settings.json
    // ...
    "": "powershell.exe"

Use a Package Manager

There are several options such as scoop for Windows.

Set-ExecutionPolicy RemoteSigned -scope CurrentUser
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('')
scoop install sudo
sudo echo "Bloop"


The so-called Windows Subsystem for Linux.

Reset WSL2 Quickly

If you're getting Network Unreachable in WSL2 for some reason, try this:

sudo Disable-WindowsOptionalFeature -Online -FeatureName -NoRestart `
    $("VirtualMachinePlatform", "Microsoft-Windows-Subsystem-Linux")
sudo Enable-WindowsOptionalFeature -Online -FeatureName `
    $("VirtualMachinePlatform", "Microsoft-Windows-Subsystem-Linux")

Use Docker in WSL2

There are a few ways to get Docker working.

  • A hack such as this one.
  • The Docker Desktop WSL2 integration option.

If you only need Docker to work, I strongly suggest you use the Docker Desktop WSL2 integration.

Systemd in WSL2

You can use a hack such as this one, but really, this isn't a good solution. (Largely because Microsoft updates it a lot and things break often.)

I suggest you investigate a Hyper-V, VMWare, or VirtualBox VM. Alternatively, if you have another disk, dual booting is quite reasonable if you give each OS a disk.