A web frontend for pianobar, which is a console-based client for Pandora.
Provides a simple way for controlling what is playing on pianobar (Pandora). I use this to allow guests (and myself) to control the music playing outside on my patio with their phones.
This program was originally written by Kyle Johnson and extended and made headless by mr-light-show. with additional contributions and improvements by topkecleon. This fork modifies the installation script to create a systemd unit to automatically start Patiobar at boot time, for dedicated pianobar/Patiobar devices (such as Raspberry Pis).
I have tested this on Raspbian 11 "Bullseye" on a Raspberry Pi 2 and on Debian 12 "Bookworm" in a virtual environment. I run this under a normal (non-root) user account, using systemd's user environment and login lingering to start it at boot. If you are using Raspbian/Debian 11 or 12, these steps should work for you:
Install git, pianobar, curl, and npm:
sudo apt install git curl npm pianobarTo allow node to bind to port 80:
sudo setcap cap_net_bind_service=+ep /usr/bin/nodeAfter this, you can clone the repo and use the installation script:
git clone https://github.com/mr-light-show/Patiobar
cd Patiobar
./install.shYou will need to edit your pianobar config
(at ~/.config/pianobar/config) to set your
Pandora username and password.
The installation script will (hopefully) create and enable a systemd unit file for patiobar to start automatically when the system boots. To start it for the first time, you can reboot your machine or run:
systemctl --user start patiobarConnect to your device's IP address in your web browser to access Patiobar.
If you would like shutdown/reboot controls to work, then the user
account which is running patiobar will need passwordless access to the
reboot and shutdown commands. Run sudo visudo to open the sudoers
file and add the following line to the end, replacing myuser with the
appropriate username:
myuser ALL=(ALL) NOPASSWD:/usr/sbin/reboot,/usr/sbin/shutdown


