Awesome standalone command line player for Google Play Music.
GPL-3.0 License
Standalone command line player for Google Play Music.
This app wouldn't be possible without the wonderful gmusicapi and VLC libraries.
This project is neither affiliated nor endorsed by Google.
It's being actively developed, but is still in the early beta stage, so many features are missing and/or may be bugged.
We're on IRC!
Screenshot:
Click the image below to see the screencast:
sudo apt install python-gi python-gi-cairo python3-gi python3-gi-cairo vlc keybinder python-keybinder
pip install --user clay-player
clay
Documentation is available here.
Warning: The AUR and PyPy packages called python3-keybinder
will
not work with Clay since you need to use the official bindings. Since
Ubuntu seperated the official bindings into a different package but
with the same name as the unofficial one it can cause some
confusion. So if you get a Namespace Keybinder not available
warning
it is probably caused by this. So, for example, on Arch Linux you need
the libkeybinder3
package instead.
Just install the player using pip
:
pip install --user clay-player
clay
Clone the source code.
Create & activate virtualenv with system packages:
virtualenv --system-site-packages --prompt="(clay) " .env
source .env/bin/activate
Install the requirements:
pip install -r requirements.txt
Run the player:
./clay/app.py
Sometimes you want to run stuff in Docker. You can run Clay in docker as well.
There are two strict requirements:
module-native-protocol-tcp
module enabled.Here's how you do it:
Clone the source code
Create "~/.config/clay" directory (to have proper volume permissions in docker)
mkdir ~/.config/clay
Build & run the image
make run
You should get the sound working. Also docker will reuse the Clay config file from host (if you have one).
<UP|DOWN|LEFT|RIGHT>
- nagivate around<ALT> + 0..9
- switch active tab<ENTER>
- play highlighted track<CTRL> w
- play/pause<CTRL> e
- play next song<CTRL> a
- append highlighted song to the queue<CTRL> u
- remove highlighted song from the queue<CTRL> p
- start station from highlighted song<ALT> m
- show context menu for this song<ALT> u
- thumb up the highlighted song<ALT> d
- thumb down the highlighted song<CTRL> s
- toggle shuffle<CTRL> r
- toggle song repeat<SHIFT> <LEFT|RIGHT>
- seek backward/forward by 5% of the song duration<CTRL> q
- seek to song beginning+
- increase amplification-
- decrease amplification<ESC>
or <CTRL> /
or _ - close most recent notification or popup<CTRL> x
- exit app<ESC>
to cancel.NOTE: you need to pass the --with-x-keybinds
flag for these to work
<XF86AudioPlay>
- play/pause the song<XF86AudioNext>
- play the next song<XF86AudioPrev>
- play previous songAt some point, the app may fail. Possible reasons are app bugs, Google Play Music API issues, gmusicapi bugs, urwid bugs etc.
If you encounter a problem, please feel free to submit an issue. I'll try to figure it out ASAP.
Most issues can be reproduced only with specific data coming from Google Play Music servers.
Use "Debug" tab within app to select the error and hit "Enter" to copy it into clipboard. This will help me to investigate this issue.
Made by Andrew Dunai.
Regards to gmusicapi and VLC who made this possible.
People who contribute to this project: