The net/mollysocket port
mollysocket-1.6.0p0 – get Signal notifications via UnifiedPush (cvsweb github mirror)
Description
MollySocket allows getting Signal notifications via UnifiedPush. It works like a linked device, which doesn't have an encryption key, connected to the Signal server. Everytime it receives an encrypted event, it notifies your mobile via UnifiedPush.WWW: https://github.com/mollyim/mollysocket
Readme
+-------------------------------------------------------------------------------
| Running ${PKGSTEM} on OpenBSD
+-------------------------------------------------------------------------------
Scope of mollysocket
====================
mollysocket is targeted at Signal users that want to use the Signal chat app on
android without google dependencies. mollysocket itself is only a single part
of a multi-program setup, some of which are optional.
Required software
-----------------
For de-googling your Signal experience, as well as mollysocket, you will need:
- Molly, a fork of Signal, installed from one of the official sources:
https://molly.im/get.html
- An UnifiedPush client app on the same android device. See https://ntfy.sh for
reference. This will default to using the public ntfy.sh server for
notifications. If you'd like to self-host that as well, net/ntfy is available
in the ports tree.
- An optional reverse-proxy setup in front of mollysocket, if you'd like Molly
to be able to communicate with mollysocket. relayd can be used for this.
Even if optional, this is recommended. Otherwise, you'd need to setup
mollysocket in 'airgapped' mode. Refer to upstream documentation for this.
Finish mollysocket install
==========================
Before running mollysocket for the first time, you need to generate a VAPID
key and append it to ${SYSCONFDIR}/mollysocket.conf. To do this, you may run:
# sed -i "s|changeme|$(mollysocket vapid gen)|" ${SYSCONFDIR}/mollysocket.conf
Since ${SYSCONFDIR}/mollysocket.conf now contains a secret, take care that
permissions on that file stay restrictive.
Reverse proxy in front of mollysocket
=====================================
By default, mollysocket listens to port 8020 on localhost for http
connections and expects to have an external reverse proxy adding https.
If using relayd, this snippet should get you started:
table { 127.0.0.1 }
http protocol "wwwsecure" {
...
pass request quick header "Host" value "mollysocket.example.org" \
forward to
...
}
relay "https4" {
...
protocol wwwsecure
forward to port 8020
...
}
Other reverse proxies can be used (nginx is common).
Custom UnifiedPush endpoint
===========================
The default option is to use the public endpoint run at https://ntfy.sh/.
Others (public or otherwise) can be used; set "allowed_endpoints" in
${SYSCONFDIR}/mollysocket.conf.
Post-setup steps
================
After configuring mollysocket on your box, you need to setup the UnifiedPush
notification backend in the Molly app. This will show a device ID which you
can optionally set in "allowed_uuids" in ${SYSCONFDIR}/mollysocket.conf, preventing
any other Molly user from using your mollysocket instance.
Maintainer
Christoph Liebender
Not for arches
sparc64
Categories
Library dependencies
Build dependencies
Files
- /etc/mollysocket.conf
- /etc/rc.d/mollysocket
- /usr/local/bin/mollysocket
- /usr/local/share/doc/pkg-readmes/mollysocket
- /usr/local/share/examples/mollysocket/
- /usr/local/share/examples/mollysocket/mollysocket.conf
- /var/db/mollysocket/
- @newgroup _mollysocket:589
- @newuser _mollysocket:589:589::mollysocket daemon:/nonexistent:/sbin/nologin