Foghorn

Rating: 
5
Your rating: None Average: 5 (4 votes)

Foghorn is a UnifiedPush distributor for Sailfish OS. It supports the Mozilla push service or ntfy.sh (either the public instance or a self-hosted one). With this app installed, other applications can register for push notifications. It does nothing by itself. Unleash the toot toot.

  • Sailfish OS Apps: Can be used to provide push notifications for any supported app, which currently includes Livewire, Doomsday, and xmatic.
  • Android Apps (Experimental): If enabled, Foghorn can be used as a UnifiedPush distributor for compatible Android apps. See more below.

Push Services

UnifiedPush supports arbitrary push notification services as the transport for receiving push notifications on-device. Foghorn can currently receive push notifications via:

  • Mozilla Autopush: This is the default mode of operation, and recommended if you don't want to fiddle with anything.
  • ntfy (public instance or self-hosted): This is recommended if you want more control over where push notifications actually travel.
  • Nextcloud: An alternative to ntfy. If a Nextcloud account on your Sailfish OS device supports UnifiedPush, it will show up in Foghorn. Requires authenticating Foghorn with Nextcloud separately.

Android App Support (Experimental)

If enabled, Foghorn will expose itself to the running Android container, and Android apps supporting UnifiedPush (Fennec, Ironfox, Element X, among others) can register with Foghorn to provide push notifications. This is accomplished by a service running on the Sailfish OS side that listens for the setting being enabled. When enabled, an APK is installed in Android App Support. This APK communicates with foghornd (Foghorn's actual notification service) via a local network socket. Communication between foghornd and the APK is secured with a shared secret.

Note that the service that manages the setting sync with Android AppSupport runs as root. This is used to install or remove the APK required for Android to see Foghorn. foghornd itself is a user service, and notifications are dispatched to the Android APK via this user service.

Please update to 0.6.1 ASAP if you are on 0.6.0. 0.6.0 causes a boot lock-up due to a circular systemd service dependency. To immediately fix this on 0.6.0, please run:

devel-su rm /etc/systemd/system/multi-user.target.wants/foghorn-appsupport-sync@*.path

And turn off the Android Apps setting. This problem is fixed in 0.6.1.

Integrating Your App

The app exposes a custom UnifiedPush permission and a guide to integration is available.

For Rust apps, you can use Leghorn.

Information

Application versions: 
AttachmentSizeDate
File foghorn-0.1.0-1.aarch64.rpm2.88 MB21/08/2026 - 14:22
File foghorn-0.2.0-1.aarch64.rpm2.88 MB21/08/2026 - 18:29
File foghorn-0.3.0-1.aarch64.rpm2.89 MB06/10/2026 - 10:23
File foghorn-0.3.0-1.armv7hl.rpm2.59 MB06/10/2026 - 11:09
File foghorn-0.4.1-1.aarch64.rpm3.02 MB07/10/2026 - 17:00
File foghorn-0.4.1-1.armv7hl.rpm2.71 MB07/10/2026 - 17:03
File foghorn-0.6.1-1.aarch64.rpm3.22 MB10/10/2026 - 17:45
File foghorn-0.6.1-1.armv7hl.rpm2.91 MB10/10/2026 - 17:47
File foghorn-0.7.0-1.aarch64.rpm4.03 MB12/10/2026 - 22:02
File foghorn-0.7.0-1.armv7hl.rpm3.69 MB12/10/2026 - 22:02
Changelog: 

Version 0.7.0:

  • Nextcloud UnifiedPush support.

Version 0.6.1:

  • Fixed lock-up on system boot due to circular service dependency.

Version 0.6.0:

  • Experimental support for using Foghorn as a UnifiedPush distributor for Android apps. Verified to work on AppSupport 15 / Jolla Phone 2026. Other combinations untested, looking for test results!

Version 0.4.x:

  • Add support for ntfy.sh as the UnifiedPush service. Note that if using Foghorn for Livewire, you should either continue using Mozilla Autopush or use the default ntfy.sh instance for now.
  • New cover that is actually useful.
  • Fix UI bugs like push count "jumping" in the main list.

Comments

dumol's picture

RooTelegram 3.7, launched today, now has an option to use UnifiedPush through Foghorn. Works fine on my device...

projectmoon's picture

The toot expands!

Manisak's picture

In combination whit Ntfy and Xmatic Top.... Thanks

dumol's picture

Would like to try and eventually promote this, but where's the 32bit package?

Also, please add link to repo.

Thanks!

projectmoon's picture

There is now a 32 bit build available. I have zero idea if it wil work or function. But you are welcome to test it and see. And if it doesn't function, info/stack trace/logs could be useful.

dumol's picture

Runs fine on my XA2, tested successfully with your test connector. Memory usage for the daemon is very decent. This looks too good to be true... Thank you!

I'll start pestering other devs to use it. This has been missing from Sailfish for far too long.

projectmoon's picture

There will also be a better way to use it soon (for Rust applications). When you have Foghorn, you can also have ... Leghorn.

I say, I say, that, boy, that there is a push notification...

projectmoon's picture

There is an indirect link to the repo: integration guide. As for 32 bit build, it requires patching a Rust crate. This is why it's not available yet.