From c45bdad1548876d37d634d446055c16671b28092 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 11 Sep 2026 13:08:11 +0200 Subject: [PATCH 1/8] Update push_services.md * Standardized app name spelling from "FOSSWarn" to "Foss Warn" across text. * Restructured the Android ntfy server section into organized **Markdown tables** for recommended and alternative servers, introducing new sub-sections (`Recommended public servers`, `Alternative & unreliable servers`, and `Community & privacy`) for better readability. * Corrected spelling errors (e.g., "goggle" to "google", "verry" to "very", and hyphenated "re-select"). * Enhanced readability of warning callouts and formatting elements under the Android installation steps. --- docs/docs/en/features/push_services.md | 57 ++++++++++++-------------- 1 file changed, 26 insertions(+), 31 deletions(-) diff --git a/docs/docs/en/features/push_services.md b/docs/docs/en/features/push_services.md index e096d641..9c3465e1 100644 --- a/docs/docs/en/features/push_services.md +++ b/docs/docs/en/features/push_services.md @@ -1,74 +1,69 @@ - - -In previous version of FOSSWarn, the app has used a polling service to check if there are alerts for the user. This has some downsides and drains you battery and produces a delay until you receive a notifications. Since version 1.0 FOSSWarn uses the FOSS Public Alert Server to receive alerts and notifications. In order to receive these near real time notifications the server uses UnifiedPush and the client to. +In previous version of Foss Warn, the app has used a polling service to check if there are alerts for the user. This has some downsides and drains you battery and produces a delay until you receive a notifications. Since version 1.0 Foss Warn uses the FOSS Public Alert Server to receive alerts and notifications. In order to receive these near real time notifications the server uses UnifiedPush and the client to. ## What is UnifiedPush? -[UnifiedPush](https://unifiedpush.org/) is a set of tool for push-notifications. Instead of polling, the client receive a push-notification and wakes up to perform an action. FOSSWarn uses unifiedPush to inform the client that an alert for the subscription occurred and the client can inform the user about that. +[UnifiedPush](https://unifiedpush.org/) is a set of tool for push-notifications. Instead of polling, the client receive a push-notification and wakes up to perform an action. Foss Warn uses unifiedPush to inform the client that an alert for the subscription occurred and the client can inform the user about that. ## What is the difference between Push and Polling? For push notifications, the system (in this case, the distributor app) holds an energy-efficient constant connection to the push server. This allows an application server to send a notification instantly without a lot of delay. -For polling, the app has to be woken up constantly. Every time the app wakes up, it connects to the server and checks if there is something new for the app. If this is the case, the app creates a notification and displays it; if not, the app goes back to sleep again. Using this, it is impossible to deliver near-realtime notifications. There will always be a delay. This can drain the battery, as this mechanism is not very optimized. +For polling, the app has to be woken up constantly. Every time the app wakes up, it connects to the server and checks if there is something new for the app. If this is the case, the app creates a notification and displays it; if not, the app goes back to sleep again. Using this, it is impossible to deliver near-real-time notifications. There will always be a delay. This can drain the battery, as this mechanism is not very optimized. ## What is a Distributor? Using UnifiedPush, there are multiple components involved in sending a push notification from our server to our phone. In short, it works like this: -FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy server) -> *sends message to phone* -> Distributor app -> *wakes* -> FOSSWarn +FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy server) -> *sends message to phone* -> Distributor app -> *wakes* -> Foss Warn All you have to do is choose a distributor. The distributor handles all the push notification connections for every app that is using UnifiedPush. ## Why not use goggle' push infrastructure -The whole project is about implementing a free and opensource infrastructure whithout the need for proprietary components. But you can select a Distributor which uses goggle if you really want. +The whole project is about implementing a free and opensource infrastructure without the need for proprietary components. But you can select a Distributor which uses goggle if you really want. ## Install a distributor ### Android If you already have a distributor installed choose this distributor in the selection menu. If you do not have a distributor installed, take a look at the overview which distributors are available for your platform. [To the overview](https://unifiedpush.org/users/distributors). If you don't know which one to choose, try `sunup` or `nfty`. -#### for nfty: Which default server should I use? +#### Which ntfy server should I use? !!! Warning **Do not use the default (ntfy.sh) server.** This server has a rate limit of 250 notifications per day for each publisher. We can therefore not accept subscriptions with this push server. Please change the default server in the settings of the ntfy app and select a different one. - If you don't change the server, the default FOSS Public Alert Server instance will not accept any subscriptions with this server. So if you get the error message `Your UnifiedPush Server ntfy.sh is blocked`, please check the ntfy app and change the default server. You can reset the push configuration in FOSSWarn if you go to the 'settings' -> 'Push Services' and reselect your Push service. +If you don't change the server, the default FOSS Public Alert Server instance will not accept any subscriptions with this server. So if you get the error message `Your UnifiedPush Server ntfy.sh is blocked`, please check the ntfy app and change the default server. You can reset the push configuration in Foss Warn if you go to the 'settings' -> 'Push Services' and re-select your Push service. +##### Recommended public servers Here is an incomplete list of push ntfy servers you could choose: -- [ntfy.adminforge.de](https://ntfy.adminforge.de/) 🇩🇪 Germany - -- [ntfy.envs.net](https://ntfy.envs.net/) 🇩🇪 Germany - -- [ntfy.mzte.de](https://ntfy.mzte.de/) 🇩🇪 Germany - -- [ntfy.hostux.net](https://ntfy.hostux.net/) 🇫🇷 France +| Server | Country | +| --- | --- | +| [ntfy.adminforge.de](https://ntfy.adminforge.de/) | 🇩🇪 Germany | +| [ntfy.envs.net](https://ntfy.envs.net/) | 🇩🇪 Germany | +| [ntfy.mzte.de](https://ntfy.mzte.de/) | 🇩🇪 Germany | +| [ntfy.hostux.net](https://ntfy.hostux.net/) | 🇫🇷 France | +| [push.tchncs.de](https://push.tchncs.de/) | 🇩🇪 Germany | -- [push.tchncs.de/](https://push.tchncs.de/) 🇩🇪 Germany -The follwing servers might work, but we might get rate-limited verry fast. Only use them if you know what you are doing. +##### Alternative & unreliable servers +| Server | Country | Status / notes | +| --- | --- | --- | +| [ntfy.tedomum.fr](https://ntfy.tedomum.fr) | 🇫🇷 France | Might get rate-limited very fast (use only if you know what you are doing) | +| [ntfy.fossman.de](https://ntfy.fossman.de/) | 🇩🇪 Germany | Might get rate-limited very fast (use only if you know what you are doing) | +| [unifiedpush.kde.org](https://unifiedpush.kde.org/) | — | Quite unreliable in the past; not recommended | -- [ntfy.tedomum.fr](https://ntfy.tedomum.fr) 🇫🇷 France - -- [ntfy.fossman.de](https://ntfy.fossman.de/) 🇩🇪 Germany - -!!! Notice - The server under `unifiedpush.kde.org` was quite unreliable in the past. We can not recommend using it. This might change in the future. - -!!! help - If you know more reliable push servers, please give us a hint, and we will extend this list. Or open a merge request and help to improve this page. +##### Community & privacy +If you know more reliable push servers, please give us a hint, and we will extend this list. Or open a merge request and help to improve this page. Please be aware that server operators can log your messages. We are using encrypted push messages, so this should not be an issue. - ### Linux For Linux there is only `kunifiedpush` available. The package is available for most platforms. [Here](https://repology.org/project/kunifiedpush/versions), you can check if your distro has the package. (you need at least version `25.04.0`) -### special note about /e/ OS Phones +### Special note about /e/ OS phones /e/ OS brings its own fork of the ntfy app that is preinstalled. While this is a good idea, they missed making the UI accessible. With the preinstalled version, it is impossible to change the app settings, which is required to change the default server. More advanced users can read this [blog post](https://wrily.foad.me.uk/going-google-free-with-unifiedpush-in-e-os) for details. For everyone else, I would recommend installing the ntfy version from the F-Droid store and following the instructions here to change the default server. I hope the /e/OS team will improve that in the future. ## Select your push service ![](/assets/push_services/push_service_selection.png){ align=right width="400" } -If you don't already selected a Push service, FOSSWarn will ask you which UnifiedPush distributor you would like to use. If you don't have any distributor installed on your system, please install one first. +If you don't already selected a Push service, FOSS Warn will ask you which UnifiedPush distributor you would like to use. If you don't have any distributor installed on your system, please install one first. -If you want to change or refresh your push service / UnifiedPush distributor later, you can do that in `settings` -> `Push service`. When you select one, the configuration is refreshed and your subscriptions updated. Please wait until the process is finished. \ No newline at end of file +If you want to change or refresh your push service / UnifiedPush distributor later, you can do that in `settings` -> `Push service`. When you select one, the configuration is refreshed and your subscriptions updated. Please wait until the process is finished. From a14bdc82562191f06386ec40590479a9e8f6a3d1 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 11 Sep 2026 13:10:30 +0200 Subject: [PATCH 2/8] Update push_services.md Replaced "goggle'" with "Google's" --- docs/docs/en/features/push_services.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/en/features/push_services.md b/docs/docs/en/features/push_services.md index 9c3465e1..05a4c472 100644 --- a/docs/docs/en/features/push_services.md +++ b/docs/docs/en/features/push_services.md @@ -16,7 +16,7 @@ FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy s All you have to do is choose a distributor. The distributor handles all the push notification connections for every app that is using UnifiedPush. -## Why not use goggle' push infrastructure +## Why not use Google's push infrastructure The whole project is about implementing a free and opensource infrastructure without the need for proprietary components. But you can select a Distributor which uses goggle if you really want. ## Install a distributor From 7ed0ec923bfb00727479817232864b2ce2876ced Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 11 Sep 2026 13:17:30 +0200 Subject: [PATCH 3/8] Update push_services.md Added quotation mark to "## Why not use Google's push infrastructure" --- docs/docs/en/features/push_services.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/en/features/push_services.md b/docs/docs/en/features/push_services.md index 05a4c472..30feb069 100644 --- a/docs/docs/en/features/push_services.md +++ b/docs/docs/en/features/push_services.md @@ -16,7 +16,7 @@ FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy s All you have to do is choose a distributor. The distributor handles all the push notification connections for every app that is using UnifiedPush. -## Why not use Google's push infrastructure +## Why not use Google's push infrastructure? The whole project is about implementing a free and opensource infrastructure without the need for proprietary components. But you can select a Distributor which uses goggle if you really want. ## Install a distributor From 89521e54421945d43e1948c0aeb8c2186e36abdd Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 11 Sep 2026 18:59:52 +0200 Subject: [PATCH 4/8] Update push_services.md minor --- docs/docs/en/features/push_services.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docs/en/features/push_services.md b/docs/docs/en/features/push_services.md index 30feb069..ff538395 100644 --- a/docs/docs/en/features/push_services.md +++ b/docs/docs/en/features/push_services.md @@ -41,14 +41,14 @@ Here is an incomplete list of push ntfy servers you could choose: | [push.tchncs.de](https://push.tchncs.de/) | 🇩🇪 Germany | -##### Alternative & unreliable servers +##### Alternative and unreliable servers | Server | Country | Status / notes | | --- | --- | --- | | [ntfy.tedomum.fr](https://ntfy.tedomum.fr) | 🇫🇷 France | Might get rate-limited very fast (use only if you know what you are doing) | | [ntfy.fossman.de](https://ntfy.fossman.de/) | 🇩🇪 Germany | Might get rate-limited very fast (use only if you know what you are doing) | | [unifiedpush.kde.org](https://unifiedpush.kde.org/) | — | Quite unreliable in the past; not recommended | -##### Community & privacy +##### Community and privacy If you know more reliable push servers, please give us a hint, and we will extend this list. Or open a merge request and help to improve this page. Please be aware that server operators can log your messages. We are using encrypted push messages, so this should not be an issue. From fce4d88913f58214e5daf52c269d875db2209853 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 29 Oct 2026 09:06:41 +0100 Subject: [PATCH 5/8] Fix typo in 'Clone the FOSS Warn repository' section --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a3d8f579..06541fc9 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ FOSS Warn is developed by a very small team. So if you want to help make FOSS Wa ### How to get started with the project? - Make sure you have installed the Flutter SDK and plugins for AndroidStudio. -- Clone the FOSSWarn repository +- Clone the FOSS Warn repository - Inside the project, run `flutter gen-l10n` to build the translation strings. - You are now ready to run the application. From f7688f97b9b6022c2b4bdc98391a06f0bb95d4d1 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 29 Oct 2026 09:15:15 +0100 Subject: [PATCH 6/8] Correct capitalization of 'FOSS' to 'Foss' in README --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 06541fc9..b6696a60 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@
-

FOSS Warn

+

Foss Warn

@@ -58,16 +58,16 @@ Edit the `Exec=` line where necessary. Can be found here: https://docs.fosswarn.org ## Contribute -FOSS Warn is developed by a very small team. So if you want to help make FOSS Warn even better, I'd love to hear from you. If you are familiar with Flutter and Dart and would like to fix or implement one or more issues, please get in touch with me, either by email or via Mastodon. Checkout the [onboarding document](https://github.com/nucleus-ffm/foss_warn/wiki/Onboarding-document) to learn more about our work. +Foss Warn is developed by a very small team. So if you want to help make Foss Warn even better, I'd love to hear from you. If you are familiar with Flutter and Dart and would like to fix or implement one or more issues, please get in touch with me, either by email or via Mastodon. Checkout the [onboarding document](https://github.com/nucleus-ffm/foss_warn/wiki/Onboarding-document) to learn more about our work. ### How to get started with the project? - Make sure you have installed the Flutter SDK and plugins for AndroidStudio. -- Clone the FOSS Warn repository +- Clone the Foss Warn repository - Inside the project, run `flutter gen-l10n` to build the translation strings. - You are now ready to run the application. ### Translation -We are using Weblate to translate FOSS Warn. Feel free to help translate the application at [weblate](https://hosted.weblate.org/projects/foss-warn/foss-warn-app/). +We are using Weblate to translate Foss Warn. Feel free to help translate the application at [weblate](https://hosted.weblate.org/projects/foss-warn/foss-warn-app/). ### Contributors special thanks to: @@ -85,7 +85,7 @@ special thanks to: * [**MINA (Matrix)**](https://github.com/djmaze/nina-matrix-bot) MINA is a matrix bot that can be used to subscribe to alerts from the NINA API. * [**Apocalypse (Sailfish OS)**](https://github.com/black-sheep-dev/harbour-apocalypse) Apocalypse is an application for showing of messages from NINA API. * [**NINA XMPP bot**](https://github.com/jplitza/nina_xmpp) XMPP bot that sends messages from the German NINA official warning app. -* [**Nina-FOSS**](https://github.com/SailReal/nina-foss) Similar to FOSS Warn, but written with Java +* [**Nina-FOSS**](https://github.com/SailReal/nina-foss) Similar to Foss Warn, but written with Java ## Screenshots [](fastlane/metadata/android/en-US/images/phoneScreenshots/shot_1.png) @@ -103,3 +103,4 @@ This app was created in the hope that it will be useful, but it comes WITHOUT AN ## Haftungsausschluss Diese App wurde in der Hoffnung erstellt, dass sie nützlich ist, kommt aber OHNE JEGLICHE GEWÄHRLEISTUNG. Der Entwickler kann zu keinem Zeitpunkt garantieren, dass die App fehlerfrei funktioniert und alle Warnungen jederzeit anzeigt, und übernimmt daher keine Haftung (außer im Falle von grober Fahrlässigkeit oder von Vorsatz). Verlassen Sie sich zu KEINEM ZEITPUNKT auf diese App. Beachten Sie immer andere Warnungsquellen und folgen Sie den Hinweisen der örtlichen Behörden. +v From 2bf5e5447c98dd37ac7154765ffe8c35ee48d777 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 30 Oct 2026 13:25:32 +0100 Subject: [PATCH 7/8] Fix capitalization and minor formatting in documentation --- docs/docs/en/features/push_services.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/docs/en/features/push_services.md b/docs/docs/en/features/push_services.md index ff538395..b19b8a8d 100644 --- a/docs/docs/en/features/push_services.md +++ b/docs/docs/en/features/push_services.md @@ -1,7 +1,7 @@ -In previous version of Foss Warn, the app has used a polling service to check if there are alerts for the user. This has some downsides and drains you battery and produces a delay until you receive a notifications. Since version 1.0 Foss Warn uses the FOSS Public Alert Server to receive alerts and notifications. In order to receive these near real time notifications the server uses UnifiedPush and the client to. +In previous version of FOSS Warn, the app has used a polling service to check if there are alerts for the user. This has some downsides and drains you battery and produces a delay until you receive a notifications. Since version 1.0 FOSS Warn uses the FOSS Public Alert Server to receive alerts and notifications. In order to receive these near real time notifications the server uses UnifiedPush and the client to. ## What is UnifiedPush? -[UnifiedPush](https://unifiedpush.org/) is a set of tool for push-notifications. Instead of polling, the client receive a push-notification and wakes up to perform an action. Foss Warn uses unifiedPush to inform the client that an alert for the subscription occurred and the client can inform the user about that. +[UnifiedPush](https://unifiedpush.org/) is a set of tool for push-notifications. Instead of polling, the client receive a push-notification and wakes up to perform an action. FOSS Warn uses unifiedPush to inform the client that an alert for the subscription occurred and the client can inform the user about that. ## What is the difference between Push and Polling? For push notifications, the system (in this case, the distributor app) holds an energy-efficient constant connection to the push server. This allows an application server to send a notification instantly without a lot of delay. @@ -11,7 +11,7 @@ For polling, the app has to be woken up constantly. Every time the app wakes up, ## What is a Distributor? Using UnifiedPush, there are multiple components involved in sending a push notification from our server to our phone. In short, it works like this: -FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy server) -> *sends message to phone* -> Distributor app -> *wakes* -> Foss Warn +FOSS Public Alert Server -> *sending notification* -> Push Server (e.g. a ntfy server) -> *sends message to phone* -> Distributor app -> *wakes* -> FOSS Warn All you have to do is choose a distributor. The distributor handles all the push notification connections for every app that is using UnifiedPush. @@ -27,7 +27,7 @@ If you already have a distributor installed choose this distributor in the selec !!! Warning **Do not use the default (ntfy.sh) server.** This server has a rate limit of 250 notifications per day for each publisher. We can therefore not accept subscriptions with this push server. Please change the default server in the settings of the ntfy app and select a different one. -If you don't change the server, the default FOSS Public Alert Server instance will not accept any subscriptions with this server. So if you get the error message `Your UnifiedPush Server ntfy.sh is blocked`, please check the ntfy app and change the default server. You can reset the push configuration in Foss Warn if you go to the 'settings' -> 'Push Services' and re-select your Push service. +If you don't change the server, the default FOSS Public Alert Server instance will not accept any subscriptions with this server. So if you get the error message `Your UnifiedPush Server ntfy.sh is blocked`, please check the ntfy app and change the default server. You can reset the push configuration in FOSS Warn if you go to the 'settings' -> 'Push Services' and re-select your Push service. ##### Recommended public servers Here is an incomplete list of push ntfy servers you could choose: From 8178b72270c9df93f27d956528ef8053d31896da Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 30 Oct 2026 13:26:05 +0100 Subject: [PATCH 8/8] Fix capitalization of 'FOSS Warn' in README --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b6696a60..35f1b284 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@
-

Foss Warn

+

FOSS Warn

@@ -58,16 +58,16 @@ Edit the `Exec=` line where necessary. Can be found here: https://docs.fosswarn.org ## Contribute -Foss Warn is developed by a very small team. So if you want to help make Foss Warn even better, I'd love to hear from you. If you are familiar with Flutter and Dart and would like to fix or implement one or more issues, please get in touch with me, either by email or via Mastodon. Checkout the [onboarding document](https://github.com/nucleus-ffm/foss_warn/wiki/Onboarding-document) to learn more about our work. +FOSS Warn is developed by a very small team. So if you want to help make FOSS Warn even better, I'd love to hear from you. If you are familiar with Flutter and Dart and would like to fix or implement one or more issues, please get in touch with me, either by email or via Mastodon. Checkout the [onboarding document](https://github.com/nucleus-ffm/foss_warn/wiki/Onboarding-document) to learn more about our work. ### How to get started with the project? - Make sure you have installed the Flutter SDK and plugins for AndroidStudio. -- Clone the Foss Warn repository +- Clone the FOSS Warn repository - Inside the project, run `flutter gen-l10n` to build the translation strings. - You are now ready to run the application. ### Translation -We are using Weblate to translate Foss Warn. Feel free to help translate the application at [weblate](https://hosted.weblate.org/projects/foss-warn/foss-warn-app/). +We are using Weblate to translate FOSS Warn. Feel free to help translate the application at [weblate](https://hosted.weblate.org/projects/foss-warn/foss-warn-app/). ### Contributors special thanks to: @@ -85,7 +85,7 @@ special thanks to: * [**MINA (Matrix)**](https://github.com/djmaze/nina-matrix-bot) MINA is a matrix bot that can be used to subscribe to alerts from the NINA API. * [**Apocalypse (Sailfish OS)**](https://github.com/black-sheep-dev/harbour-apocalypse) Apocalypse is an application for showing of messages from NINA API. * [**NINA XMPP bot**](https://github.com/jplitza/nina_xmpp) XMPP bot that sends messages from the German NINA official warning app. -* [**Nina-FOSS**](https://github.com/SailReal/nina-foss) Similar to Foss Warn, but written with Java +* [**Nina-FOSS**](https://github.com/SailReal/nina-foss) Similar to FOSS Warn, but written with Java ## Screenshots [](fastlane/metadata/android/en-US/images/phoneScreenshots/shot_1.png)