WSL

Windows WSL allows you to run Linux on a Windows machine.

Installed WSL Ubuntu (this example).

Open PowerShell and type WSL and press enter.
To shutdown:
logout
wsl –shutdown

Install BOINC

In PowerShell type wsl

sudo apt-get update
sudo apt-get install boinc-client

Start BOINC

sudo /usr/bin/boinc –dir /var/lib/boinc-client –allow_remote_gui_rpc –gui_rpc_port 31414

Run as a service

sudo /usr/bin/boinc –daemon –dir /var/lib/boinc-client –allow_remote_gui_rpc –gui_rpc_port 31414

You could leave out the port by specifying the port in the default settings file found: /etc/default/boinc-client

BoincTasks

Add a computer with IP localhost2 and port 31414 with a blank password.
Alternatively instead of localhost2, use the actual IP (same as Windows).

BoincTasks Js (V 1.23 or up)

Add a computer with IP localhost and port 31414 with a blank password.
Alternatively instead of localhost, use the actual IP (same as Windows).
< V1.23 use the actual IP address.

Run WSL using cron

sudo crontab -e

Add to the end of the file:
@reboot sudo /usr/bin/boinc –daemon –dir /var/lib/boinc-client –allow_remote_gui_rpc –gui_rpc_port 31414

To start manually in PowerShell Windows:
wsl.exe sudo /etc/init.d/cron start

Remove the password prompt

To remove the sudo password:
@echo $USER
sudo visudo
At the end of the file add:
username ALL=(ALL) NOPASSWD: ALL
Replace username with the one found with echo above.

Run WSL at Windows Login

Open Task Scheduler
Create Basic Task
Triggers -> New -> Any User -> Begin the task: At log on -> enabled -> OK
Actions -> New -> Action: Start a program
Program -> C:\Windows\System32\wsl.exe
Add argument -> sudo /etc/init.d/cron start