Unlike the Android and Apple clients, the Windows and Linux clients use the Electron framework, rather than Cordova.
To build the Electron clients, run (it will also package an installer executable into output/client/electron/build
):
npm run action client/electron/build [windows|linux]
To run the Electron clients, run:
npm run action client/electron/start [windows|linux]
To build the app for a platform target on a different host target, you will need a cross-compiler. We use zig to cross-compile with cgo.
Install zig and make sure it's in the PATH.
You can download the binary tarball, or use a package manager, like Homebrew:
brew install zig
- Visual Studio 2022 or later
If you see an error about node-gyp
not finding Visual Studio, try one of the following:
- (Recommended) Install the VSSetup PowerShell package using
Install-Module VSSetup -Scope CurrentUser
- Change PowerShell LanguageMode using
$ExecutionContext.SessionState.LanguageMode="FullLanguage"
To build the release version of Windows installer, you'll also need:
- Java 8+ Runtime. This is required for the cross-platform Windows executable signing tool Jsign. If you don't need to sign the executables, feel free to skip this.