Mozilla VPN for Windows

CircleCI

Structure

Folder Description Language
ui VPN client UI and the tunnel service interface C#
tunnel Wrapper around wireguard-windows's embeddable-dll-service for running a WireGuard process as a service. Go
installer WiX installer scripts, for setting up and creating an MSI installer XML
test Integration and end-to-end tests Go

Environment Preparation

  • Nuget CLI: Download Nuget.exe CLI from nuget.org. More information from Microsoft Doc
  • Add MSBuild.exe to System Environment Path. For Visual Studio 2019 user, the file is placed at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin

Building

Alternatively, this may all be done at once, like so:

C:\guardian-vpn> tunnel\build.cmd
C:\guardian-vpn> cd ui
C:\guardian-vpn\ui> nuget.exe restore -SolutionDirectory .\
C:\guardian-vpn\ui> MSBuild.exe /t:Rebuild /p:Configuration=Release /p:Platform="x86"
C:\guardian-vpn\ui> MSBuild.exe /t:Rebuild /p:Configuration=Release /p:Platform="x64"
C:\guardian-vpn\ui> cd ..
C:\guardian-vpn> installer\build.cmd
C:\guardian-vpn> msiexec /i installer\x64\MozillaVPN.msi

Testing

See the instructions in the test folder.

Code of Conduct

This repository is governed by Mozilla's Community Participation Guidelines and Developer Etiquette Guidelines.