Already complied binaries can be found on release section release section
Download the correspondent binary according your operating system. Available the following binaries:
AppImages
for the LinuxDMG
for the MacOSNSIS
installer for the WindowsAppImages require a Linux technology called Filesystem in Userspace (or short FUSE). The majority of systems ships with a working FUSE setup. However, sometimes, it doesn’t quite work. This section explains a few solutions that fix the most frequently reported problems.
Functionality has been tested on Ubuntu 22.04 LTS
To simplify setup/build/publish processes the following bash scripts are provided:
./scripts/setup.sh
- CLI as an easy way to get through the setup process. It will launch ./scripts/sync-repo.sh
script and then setup the development environment./scripts/sync-repo.sh
- CLI to fetch the last changes of the repository/sub-modules from the main remote repo./scripts/launch.sh
- CLI to launch Docker Compose services to build releases and publish executable artifacts of the electron app with the last fetched changesAdditional bash scripts:
./scripts/build-release.sh
- CLI as the entrypoint to start the build release process, uses in the docker container, but can be used independently./scripts/build-ui.sh
- CLI as the entrypoint to start the build UI process, uses in the docker container, but can be used independently./scripts/helpers
- folder with addition bash functions./scripts/node
- folder with addition NodeJS scriptsThe setup was tested with the following dependencies:
To install Docker
/Docker Compose
check the corresponding sections of the official docs:
After cloning the repository there's needed to configure the app. For it can be used ./scripts/setup.sh
bash script.
Available the following arguments:
./scripts/setup.sh -h
Usage: ./scripts/setup.sh [options] [-h]
Options:
-r Sync all repositories
-o Sync only sub-modules
-s Use staging BFX API
-d Set development environment
-u Turn off auto-update
-h Display help
Also there will be executed the following steps:
To launch ./scripts/setup.sh
script also can be used the following NPM script:
npm run setup -- -r
In case needs to fetch the last changes all repository/sub-modules might be used ./scripts/sync-repo.sh
bash script.
Available the following arguments:
./scripts/sync-repo.sh -h
Usage: ./scripts/sync-repo.sh [options] | [-h]
Options:
-a Sync all repositories
-m Sync bfx-report-electron only
-w Sync bfx-reports-framework only
-u Sync bfx-report-ui only
-e Sync bfx-report-express only
-h Display help
To launch ./scripts/sync-repo.sh
script also can be used the following NPM script:
npm run sync-repo -- -wue
For Dev purpose to launch the Electron app locally might be used the following NPM script:
npm start
Also, there's available an option to debug the auto-update flow non-packaged build, in that case, just need to set the corresponding environment variable before running npm start
:
export IS_AUTO_UPDATE_BEING_TESTED=true
For doing builds for other platforms please have Multi Platform Build in consideration
To launch Docker Compose services to build releases and publish executable artifacts of the electron app available the ./scripts/launch.sh
bash script.
Available the following arguments:
./scripts/launch.sh -h
Usage: ./scripts/launch.sh [options] [-h]
Options:
-a Build all releases
-l Build Linux release
-w Build Windows release
-m Build Mac release
-r Sync all repositories
-o Sync only sub-modules
-s Use staging BFX API
-d Set development environment
-u Turn off auto-update
-p Publish artifacts
-h Display help
It provides the following steps:
./scripts/build-ui.sh
entrypoint, compiled UI files will be used in the build process of the Electron app./scripts/build-release.sh
entrypoint-p
flag is passed and GH_TOKEN
or GITHUB_TOKEN
environment variable is set:
draft
-p
flag, artifacts will be in the ./dist
folderTo launch ./scripts/launch.sh
script also can be used the following NPM script:
npm run launch -- -aop
Also, we provide GitHub Actioins workflows configs for automated building and publishing of the Electron app artifacts using the above-described scripts
./scripts/launch.sh
and./scripts/build-release.sh
, see the corresponding file.github/workflows/build-electron-app.yml