If irssi runs in GNU Screen or tmux on a remote system then translating IRC notifications into desktop notifications is not trivial, but some solutions do exist such as irssi-over-ssh-notifications (which I used successfully for many years). Most of these solutions require that a remote port is forwarded via
ssh -R to the client to transmit the notifications—which is fine until you'd like to receive that notification on your phone so you don't miss your team lunch or use mosh where port forwarding isn't possible.
mqtt-notify.py can be run as a systemd user service or started manually.
Setting up an MQTT broker is left as an exercise to the reader. mosquitto is relatively simple to set up. Ensure that you set up
mqtts:// so that your messages are secure in transit (easily done with Let's Encrypt). Various guides are available online.
$ mkdir -p ~/bin $ cp mqtt-notify.py ~/bin $ mkdir -p ~/.config/systemd/user/ $ cp mqtt-notify.service ~/.config/systemd/user/
A simple example configuration file is available at
config. Copy and modify to suit your needs.
$ mkdir -p ~/.config/mqtt-notify/ $ cp config ~/.config/mqtt-notify/
The user's MQTT authentication password is stored with
libsecret and will be looked up via the username and the hostname stored in
config. Add the password to the
$ secret-tool store --label="mqtts://example.com" user myuser service mqtt host example.com Password: **********
$ systemctl --user daemon-reload $ systemctl --user enable --now mqtt-notify
~/bin is in your
$ mqtt-notify.py -c ~/.config/mqtt-notify/config