Skip to content
The next generation OONI Probe desktop app
JavaScript Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.storybook
build
data
lang
main
renderer
scripts
static
stories
.eslintrc.json
.gitignore
.travis.yml
Readme.md
Todo.md
package.json
yarn.lock

Readme.md

OONI Probe Desktop

This is the desktop implementation of OONI Probe.

Our two primary target platforms are:

  • macOS
  • Windows > 7 (we may also support older versions, but not as primary tagets)

Moreover, since it's written in electron, we plan on also supporting Linux desktop users.

For some background on the decision to use electron and the libraries we chose to use, see: Writing a modern cross-platform desktop app.

Setup

In order to start hacking on this, we assume you have node and yarn installed.

Then you can run:

yarn install

You will also need to have copied a compiled binary of probe-cli into the directory for the platform you plan to do development on.

You can download them by running:

yarn run download-bin

Usage

To build and run a development mode electron instance run:

yarn run start

To create a signed packaged app you will need to have configured the following environment variables:

CSC_NAME=Hermes OONI Dev Key
APPLEIDPASS=XXXX
APPLEID=xxx@yyy.com

CSC_LINK=/path/to/secrets/file.p12
CSC_KEY_PASSWORD=XXXX

You can place them inside of .env file and they will be picked up by the following build commands:

yarn run pack:mac
yarn run pack:win

To make a linux build run:

yarn run pack:linux

To publish a release you should run:

yarn run publish

Important caveat be sure to not push the tag for the upcoming release until after the yarn run publish command has run successfully. If you do so users of the OONI Probe Desktop app will get an error when they start the app because the auto-update system will try to fetch the metadata associated with that tag.

You can’t perform that action at this time.