
Plattformübergreifende Electron-Desktop-App zum Ausführen von OONI-Probe-Netzwerkmessungstests, die Internetzensur, Verkehrsmanipulation und andere Netzwerkbeeinträchtigungen erkennen.
OONI Probe ist eine freie und quelloffene Software, die entwickelt wurde, um Internetzensur und andere Formen von Netzwerkbeeinträchtigung zu messen.
Klicken Sie hier, um einen Fehler zu melden
Weitere unterstützte Plattformen: iOS, Desktop, CLI
Dies ist die Desktop-Implementierung von OONI Probe.
Unsere beiden primären Zielplattformen sind:
Da es in Electron geschrieben ist, planen wir außerdem, auch Linux-Desktop-Nutzer zu unterstützen.
Für etwas Hintergrund zur Entscheidung, Electron und die von uns gewählten Bibliotheken zu verwenden, siehe: Writing a modern cross-platform desktop app.
Um mit der Entwicklung zu beginnen, gehen wir davon aus, dass Sie node und yarn installiert haben.
Dann können Sie ausführen:
yarn install
Du musst außerdem eine kompilierte Binärdatei von probe-cli und tor
in das Verzeichnis für die Plattform kopiert haben, auf der du entwickeln möchtest.
Um die heruntergeladenen tor-Binärdateien zu verifizieren, solltest du den PGP-Schlüssel der tor- Entwickler wie folgt importieren (er kann verifiziert werden unter: https://support.torproject.org/tbb/how-to-verify-signature/):
gpg --recv-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
Du kannst die Assets dann herunterladen, indem du Folgendes ausführst:
yarn run download:probe-cli
yarn run download:tor
Um eine Electron-Instanz im Entwicklungsmodus zu erstellen und auszuführen, führen Sie aus:
yarn run start
data/lang-en.csvnode scripts/update-translations.js ausdata/lang-en.csv, lang/*.json und renderer/static/translations.js
in gitBesorge das Entwicklungszertifikat und den privaten Schlüssel für unser Team (YWCG8FZTLT)
von einem anderen OONI-Entwickler, der Zugriff darauf hat. Er muss sicherstellen, dass er
nicht nur das Zertifikat, sondern auch den zugehörigen privaten Schlüssel exportiert. Du solltest eine
passwortverschlüsselte .p12-Datei erhalten, die beides enthält. Doppelklicke einfach auf diese Datei und
gib das Passwort ein, um das Zertifikat und den Schlüssel in deinen Schlüsselbund zu importieren. Danach
entsorge die .p12-Datei mit rm -P.
Erstelle eine .env-Datei im Stammverzeichnis mit folgendem Inhalt:
GH_TOKEN=TOKEN
[email protected]
OONI_APPLEIDPASS=XXXX
OONI_TEAMID=YWCG8FZTLT
wobei TOKEN ein persönliches GitHub-Token mit Repository-Berechtigung ist, [email protected] die Apple ID, die du als Teil unseres Teams verwendest, XXXX ein anwendungsspezifisches Passwort, das durch Aufrufen von appleid.apple.com und Anmelden als [email protected] erstellt wurde, und YWCG8FZTLT die von OONI verwendete Team-ID ist.
Führe anschließend Folgendes aus:
yarn install
yarn pack:mac
Dadurch wird ./dist/OONI Probe-$VERSION.dmg erstellt.
Sie benötigen eine Kopie des Code-Signatur-Schlüssels für Windows, die mit .p12 endet.
Um einen signierten Build zu erzeugen, müssen Sie die Umgebungsvariablen festlegen:
WIN_CSC_LINK=/path/to/key.p12
WIN_CSC_KEY_PASSWORD=KEY_PASSWORD
Sie können dann Folgendes ausführen:
yarn install
yarn run pack:win
Führen Sie aus:
yarn install
yarn run publish:mac
yarn run publish:win
Wichtiger Hinweis: Stellen Sie sicher, dass Sie das Tag für das kommende Release erst pushen, nachdem der Befehl yarn run publish erfolgreich ausgeführt wurde. Andernfalls erhalten Nutzer der OONI Probe Desktop-App eine Fehlermeldung beim Start der App, da das Auto-Update-System versuchen wird, die mit diesem Tag verknüpften Metadaten abzurufen.