No description
| .woodpecker | ||
| app | ||
| buildSrc | ||
| fastlane/metadata/android | ||
| gradle | ||
| scripts | ||
| .editorconfig | ||
| .gitignore | ||
| build.gradle.kts | ||
| distributor | ||
| distributor_ui | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| settings.gradle.kts | ||
Sunup - Android
UnifiedPush provider using Autopush
Usage
- Install this application
- Open it, and grant background usage without restrictions permission
- Register your application compatible with UnifiedPush (may be transparently done)
Self-host
It is possible to host your own Autopush server. Autopush is designed to work with Google BigTable but it is also possible to use it with redis.
For this:
- Clone Autopush (this fork until redis support has been merged).
- Generate Fernet keys:
- Set a python virtual env, for instance:
venv .venv && . .venv/bin/activate - Install cryptography
python -m pip install cryptography - Run the generation script:
python scripts/fernet_key.py
- Set a python virtual env, for instance:
- Replace the following values in
redis-docker-compose.yml:AUTOCONNECT__CRYPTO_KEYAUTOCONNECT__ENDPOINT_SCHEMEAUTOCONNECT__ENDPOINT_HOSTNAMEAUTOCONNECT__ENDPOINT_PORTAUTOEND__CRYPTO_KEYSAUTOEND__ENDPOINT_URL
- Setup a reverse proxy to add TLS support, for instance with caddy:
# Autoconnect endpoint
push.domain.tld {
reverse_proxy 127.0.0.1:8080
}
# Autoend endpoint
updates.push.domain.tld {
reverse_proxy 127.0.0.1:8000
}
- In the android app, change server to the autoconnect endpoint (here
push.domain.tld).
Signing certificate hash
The package name along with the SHA-256 hash can be found below.
To verify the APK use the AppVerifier Android application or the apksigner tool.
org.unifiedpush.distributor.sunup
3B:33:D7:8A:5B:CA:C1:B9:52:75:6B:08:FE:88:30:CE:D3:87:AB:B6:B9:56:B0:2A:47:EF:80:32:1D:4A:2B:88
Developers
It is possible to configure a few things with build config:
| Name | Description | Default |
|---|---|---|
| DEFAULT_API_URL | Define the API Url used by default | "https://push.services.mozilla.com" |
| URGENCY | To add support for urgency requirement depending on the battery level | false until this is supported by the main server |


