eXo

eXo is a GUI (a tray icon with popup-menu) and a scrobbler for mocp written in C++/Qt. Combination of mocp and eXo gives you a modern full-fledged yet very minimalistic mediaplayer.
Latest stable release v0.7.1

Features:

  • scrobbling to last.fm (optional)
  • bookmarks for web audiostreams and web radio stations
  • OSD (external Python script)
  • lyrics from web
  • background mode - no GUI (use -d option)
  • DBus and MPRISv2 interfaces (compile-time option, enabled by default)
  • mouse actions for tray icon - disable SNI-Qt to use this (mid button, wheel)
  • tags editing with an external app
  • experimental cmus support (compile-time option, use the latest dev snapshot)

eXo editors menu entry eXo bookmarks menu entry eXo scrobbler popup eXo notification

Installation:
sudo add-apt-repository ppa:blaze/main
sudo apt-get update
sudo apt-get install exo-player

Q&A:

- Where can I get the sources?
Here's Bitbucket page. You are welcome.

- How can I run eXo with no GUI (in background mode)?
Put the following line to autostart: exo -d 2>/tmp/exo_errors.log &. If you want to shutdown the app execute: qdbus tk.loimu.exo /Exo tk.loimu.exo.quitApplication or just pkill -2 exo. Managing the stdout and stderr output is totally user's business here. The app itself does not detach it's output pipes.

- How can I auth to last.fm with no GUI (via CL interface)?
Run exo -f or exo --force-reauth in your terminal emulator.

- Why scrobbled tracks are not going to any cache when connection is down?
This feature should work out of the box in every app which uses liblastfm, but if it doesn't, please check if there's a directory named Last.fm in ~/.local/share. If there's no such directory please create one.

- How can I enable scrobbling?
You should select "Settings > Enable scrobbling" menu entry and then a dialog will appear where you can enter your login and password in case if you are running scrobbler for the first time.

- Is the last.fm password being stored anywhere?
No, it isn't. App needs a password only once to get the session key via last.fm API. Then the session key, which is stored in ~/.config/exo/eXo.conf, being used.

- Something is wrong. I see no tray icon or menu entries are not working.
Check other pure Qt4/Qt5 (non KDE) apps which have tray icon. How they're working in that case? Status Notifier Item based tray can cause such issues.

- I wanna add a global hotkey to see the lyrics at any time.
qdbus tk.loimu.exo /Exo tk.loimu.exo.showLyricsWindow is the command you want.

- What about Qt4/Qt5 support?
eXo supports both of them. Since v0.7 Qt5 will become the default one. And for v0.8 Qt4 support is planned to be dropped.


Recent News:
eXo v0.7 is released Mar 03 2017
Knock Knock, New Release May 29 2016
Fifth release of eXo Nov 22 2015
Third release of eXo May 14 2015
Your personal radio Jul 21 2014