Plays a sound and/or displays a notification whenever you receive a notification on Mastodon https://barkshark.xyz
Go to file
2019-12-09 22:33:07 -05:00
sounds added 3 new sounds 2019-03-01 02:35:54 -05:00
.gitignore copied setup.sh 2019-03-01 02:33:17 -05:00
.python-version user stor_path for temp config file 2019-12-09 11:54:38 -05:00
app.py update readme and add config editing command 2019-12-09 22:33:07 -05:00
appui.py rewrite to support displaying notifications 2019-12-07 08:51:48 -05:00
aptdeps.txt copied setup.sh 2019-03-01 02:33:17 -05:00
LICENSE Initial commit 2019-02-24 23:51:32 -05:00
merpifications.service now reads all oggs and created systemd service 2019-03-02 12:48:02 -05:00
README.md update readme and add config editing command 2019-12-09 22:33:07 -05:00
requirements.txt update README and requirements 2019-12-07 09:34:32 -05:00
run.py now reads all oggs and created systemd service 2019-03-02 12:48:02 -05:00
setup.sh copied setup.sh 2019-03-01 02:33:17 -05:00

Merpifications

Plays a sound and/or displays a notification whenever you receive a notification on a Mastodon API-compatible server

List of available sounds

  • boop: The notif sound from Mastodon's web UI
  • merp: Me saying 'merp'
  • merp-reverb: Same as merp, but with a long reverb tail
  • airhorn: Self explanitory
  • pryda: PSHHHHHHHHHT
  • cowbell: A nice clunky cowbell
  • damn-son: Where'd you find this!?
  • liljon-yeah: YEAHHHHHH

Installation

Linux

This assumes you're running a deb-based distro

  • sudo apt install gir1.2-gstreamer-1.0 libnotify-bin
  • pip3 install -r requirements.txt

Termux on Android

  • apt install termux-api python
  • install Termux:API from the Play Store

Windows

  • Eventualy

Configuration

Running ./app.py for the first time or ./app.py login will ask for your details for an account. You can run ./app.py login again to add another account. The config gets saved to $HOME/.config/barkshark/merpifications.json and the cache is stored in $HOME/.cache/merpifications

Config options:

  • domain: The domain to connect to
  • token: Access token
  • sounds: Plays a sound whenever a notification is received if enabled
  • notifs: Displays a notif whenever a notification is received if enabled

Environment

  • CONFDIR (path): Set the location of the config.
  • LOGDATE (boolean): Show the date and time in the console. Disabled by default.
  • RESTART (boolean): Automatically reconnect when the connection is lost. Disabled by default.

Commands

Run Merpifications with specific accounts

./app.py [acct1@example.com] [acc2@example.com]

Login to an account

./app.py login

Logout of any number of accounts

./app.py logout <acct1@example.com> <acc2@example.com>

Clear the avatar cache

./app.py clear

Edit the config file via $EDITOR

./app.py edit

Display the help text (not implemented yet)

./app.py help

Future plans

  • Listen for follow requests (need to updated my instance for follow req notif support first)
  • Add option to use auth code (default) instead of username and password for logging in
  • Finish Kivy GUI
    • Build APK for Android