# Windows dependencies (WSL)

*Don't follow this step if you plan to run BlurIt OP on Linux.* [*Go there*](https://doc-op.blurit.io/blurit-on-premise/installation/linux-dependencies) *instead.*

#### Prerequisites Before Installation

Before starting the installation, ensure you have received the archive containing all necessary documents. This archive will be shared via a secured link protected by a password.

**Contents of the Archive**

**Main Archive**: `client_name_YYYYMMDD.tar.gz`

The archive will include the following files:

1. **License File**: `license_client_name_YYYYMMDD_YYYYMMDD`
   * The license file specifies the validity period (start and end dates).
2. **Registry Login**: `login_registry.txt`
   * Contains the credentials to access the registry.
3. **Custom Configuration File** (if applicable): `blurit_stack.yml`

## Nvidia Driver installation

Download the NVIDIA driver >= 470 exe from: <https://www.nvidia.com/Download/index.aspx?lang=en-us>

You can also update the drivers using [Nvidia Geforce Experience](https://www.nvidia.com/fr-fr/geforce/geforce-experience/).

## Install WSL 2 (Windows Subsystem Linux)

To Check if WSL is installed, open PowerShell as administrator and run:

{% code lineNumbers="true" %}

```powershell
wsl -l –v
```

{% endcode %}

If WSL is not installed:

{% code lineNumbers="true" %}

```
wsl --install -d Ubuntu
```

{% endcode %}

Then reboot your machine.

It is possible to modify the resources allocated to WSL. For more information, you can refer to this link: <https://learn.microsoft.com/fr-fr/windows/wsl/wsl-config#wslconfig>.

## Docker installation

Instruction to install docker CE on windows with WSL 2 backend : <https://docs.docker.com/desktop/install/windows-install/>.

During the install don't forget to tick the Use **WSL 2 instead of Hyper-V** checkbox.

Additionally, if you want the BlurIt app to restart automatically when the machine restarts, check the box labeled 'Start Docker Desktop when you sign, in.'

<figure><img src="https://content.gitbook.com/content/uJafrCUXoVcvKcrCtpgA/blobs/gizFpUYB2gBDeQe4RL8W/docker-config.PNG" alt=""><figcaption></figcaption></figure>

## Nvidia-docker installation

To enter WSL, open PowerShell and type `wsl` followed by pressing Enter.

{% code lineNumbers="true" %}

```bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

sudo nvidia-ctk runtime configure --runtime=docker
```

{% endcode %}

Verify that Nvidia-Docker is installed:

{% code lineNumbers="true" %}

```bash
sudo docker run --rm --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi -a
```

{% endcode %}

### Configuring Docker daemon

Append the following JSON content on the Docker Desktop config like this:

{% code lineNumbers="true" %}

```json
{
	... # current content
	"runtimes": {
		"nvidia": {
			"path": "/usr/bin/nvidia-container-runtime",
			"runtimeArgs": []
		}
	},
	"default-runtime": "nvidia"
}
```

{% endcode %}

<figure><img src="https://content.gitbook.com/content/uJafrCUXoVcvKcrCtpgA/blobs/9rCKmad43zr13MsOZ7Zh/Windows_daemon-docker.png" alt=""><figcaption></figcaption></figure>

Restart Docker for the change to take effect.

### Post-install docker linux on WSL (required):&#x20;

{% code lineNumbers="true" %}

```bash
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
```

{% endcode %}

### Blurit CLI Installation

The **Blurit CLI** enables you to easily **configure**, **start**, and **interact** with Blurit. It provides a command-line interface to manage features and streamline platform usage.

Start these commands from WSL:

```bash
wget https://cloud.wassa.io/s/Kuj5MDgqkMCdjRv/download --output-document=blurit
chmod +x blurit
sudo mv blurit /usr/bin
```
