Windscribe / Desktop-App

Windscribe 2.0 desktop client for Windows, Mac and Linux
https://windscribe.com
GNU General Public License v2.0
633 stars 88 forks source link

Windscribe 2.0 Desktop Application

This repo contains the complete source code for the Windscribe 2.0 app. This includes installer, service/helper, and GUI.

Windows

Prerequisites

Install build script dependencies

  python3 -m pip install -r tools/requirements.txt

In case of pyyaml building issue on Windows, execute the following:

pip install "cython<3.0.0" && pip install --no-build-isolation pyyaml==6.0
pip install setuptools wheel

Install signing certificate (optional)

Build libraries

Go to subfolder tools/deps and run the following scripts in order. Append --arm64 to the command to build a library for Windows arm64. Libraries will be placed in build-libs[-arm64].

install_qt
install_openvpn_dco
install_wintun
install_wireguard
install_wstunnel

Build the Windscribe 2.0 app

Go to subfolder tools and run build_all. Assuming all goes well with the build, the installer will be placed in build-exe. You can run build_all --sign --use-local-secrets for a code-signed build, using the certificate from the Install signing certificate section above, which will perform run-time signature verification checks on the executables. Note that an unsigned build must be installed on your PC if you intend to debug the project. Append --arm64 to the command to build for Windows arm64.

See build_all --help for other build options.

Logs

Mac

Prerequisites

Install signing certificate (required)

Build libraries

Go to subfolder tools/deps and run the following scripts in order. Libraries will be placed in build-libs.

install_qt
install_wireguard
install_wstunnel

Build the Windscribe 2.0 app

Go to subfolder tools and run build_all. Assuming all goes well with the build, the installer will be placed in build-exe.

See build_all --help for other build options.

Platform Notes:

Logs

Linux

Build with Docker

The repository contains Dockerfile to simplify building process. Skip all the other sections of this manual if you decide to use Docker.

Prerequisites

Build process tested on Ubuntu 20.04/ZorinOS 16 (gcc 9.3.0).

Build libraries

Go to subfolder tools/deps and run the following scripts in order. Libraries will be placed in build-libs. When building Qt6, you may encounter an error relating to check_for_ulimit. If so, downgrade to CMake version 3.24.

install_qt
install_wireguard
install_wstunnel

Build the Windscribe 2.0 app

Go to subfolder tools and run build_all. Assuming all goes well with the build, the installer will be placed in build-exe.

See build_all --help for other build options.

The application installs to /opt/windscribe.

Logs

Contributing

Please see our Contributing Guidelines

License

The Windscribe Desktop Client app License