This app only works for 🐧 using 🐍 2 or 3.
Nancho can be ran in the backgroud automatically as a service. However, as it needs access to the dbus operations on user-level, these need to be added to systemctl --user. The instructions below explain how to set this up.
Clone the repository to somedir (where somedir is a directory name of your choosing).
cd /home/username/path/to/somedir
git clone https://github.com/cmry/nanchoFrom now on, we'll refer to the path to the script as /home/user/path/to/somedir/nancho/nancho.py. Please remember this somedir path, because you'll need it at more places in the set-up.
Now set up a systemd file like so:
sudo vi /etc/systemd/user/nancho.serviceAnd add the following text:
[Unit]
Description=Automute Music on Browser Audio
After=multi-user.target
[Service]
Type=idle
ExecStart=/bin/sh /home/yourusername/path/to/somedir/nancho/nancho.sh
[Install]
WantedBy=multi-user.target
Note: change the /home/yourusername/path/to/somedir/ part to the correct one!
Now configure nancho.sh (in /home/username/path/to/somedir/nancho/nancho.sh) to match your username and the somedir directory. Make sure that the directory is absolute!
vi /home/yourusername/path/to/somedir/nancho/nancho.shAnd change the directory in the first line:
/usr/bin/python3 /home/yourusername/path/to/somedir/nancho/nancho.py --browser=Firefox --music=Spotify --poll_time=2 --pauseIf Python 2: change the python3 part in /usr/bin/python3 to either python2 or python.
Note that this uses default arguments for the code above (e.g. --browser=Firefox), for an overview and help see python nancho.py -h. Moreoever, poll_time is set to 2 seconds - if you'd like more responsive pausing and trade-off some system load, decrease this number.
After you set this all up can run the service with:
systemctl --user start nanchoAnd check for any errors with:
systemctl --user status nanchoFirefox has changed it's audio application name in newer Ubuntu / Firefox versions to AudioIPC Server. You can always refer to pacmd list-sink-inputs and check under application.name for service identifiers to be put under the --browser and --music flags.