Electron desktop application for Cattr
Minimum system requirements to build the app
- MacOS: Monterey 12.3.1
- Windows: 22H2 10.0.19045, 11.0.22621
- Debian: bullseye+kde 11
- Ubuntu: LTS 22.04
- Alt linux: kworkstation 10
- Astra linux: orel 2.12
- CPU: amd64
For build to work, you need to have following dependencies:
MacOS
You need to install xcode from official website
Linux (apt based)
apt-get update apt-get install -y git cmake curl python3 build-essential pkg-config libsecret-1-0 libsecret-1-dev ca-certificates openssh-client dpkg-dev dpkg-sig
Installl nodejs 14.19.0 (MacOS & Linux)
Easiest way to do so is by using nvm, here is the official guide on how to install it.
Now we can use it to install nodejs.
nvm install 14.19.0 nvm use 14.19.0
Install yarn
You can verify the installation like so:
node -v # v14.19.0 yarn -v # 3.2.1
Windows
Download and install Docker Desktop from the official site.
For Docker to work in Windows you may need to enable virtualization in BIOS and install WSL 2. The installation process is described in details in the Docker user manual.
Launch development version (Linux & MacOS only)
- Clone this repository and open it's directory
- Install dependencies via
yarn - Specify version, for example
v1.0.0"
npm config set git-tag-version false npm version v1.0.0
- Run webpack via
yarn build-developmentfor development version - When build completes, run
yarn devto launch client in development mode
Development mode
Development installation uses different keychain service name and application folder path (with "-develop" suffix).
Build production version
- Clone this repository and open its directory
- (Windows only) run in PowerShell
docker run -it -v ${PWD}:/project electronuserland/builder:14-winenext commands should be executed inside running container. - Install dependencies via
yarn - Specify version, for example
v1.0.0
npm config set git-tag-version false npm version v1.0.0
- Build application in production mode via
yarn build-production - Build executable for your favourite platform (output directory is
/target).
How to build executable?
- macOS:
yarn package-macwill produce signed & notarized DMG - Linux:
yarn package-linuxwill produce Tarball, DPKG and AppImage - Windows:
yarn package-windowswill produce installer and portable executables
Compatibility sheet:
- Host with macOS: can produce builds only for macOS
- Host with Linux: can produce builds for Linux and Windows (using Wine)
- Host with Windows: can produce builds only for Windows
