Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Lightweight console-based radio player for Last.FM radio streams.
C Python Haskell Shell Perl C++ VimL
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
manual Document socks proxy configuration.
source Merge pull request #80 from AlexanderPavlenko/master
.gitignore Allow to build shell-fm without dependencies.
AUTHORS Release notes for v0.8, version bump.
BSDmakefile Add a stub BSDmakefile, which just calls out to gmake.
INSTALL Document optional dependency on libtagc.
README.textile Fix git URI in clone instructions.



shell-fm is a lightweight, console-based player for Last.FM radio streams. It’s pretty small (the binary is currently a little smaller than 60K, or 50K when stripped) and it has most features the “official” player has, if not even a few more. Additional features are, for example:

  • network interface (control shell-fm remotely)
  • autoban (automatically ban all tracks of an artist you don’t like)
  • bookmark stations (quickly jump to bookmarked stations with a single key)
  • … probably more


shell-fm doesn’t need much. You definitely need libmad. shell-fm can also use libao for playback (optional).


It’s always recommended to use the latest version from GitHub.

First clone the repository:

$ git clone git://

Make sure you have the needed libraries to compile (libmad0-dev and libao-dev.) This should do the trick for Ubuntu:

$ sudo apt-get install libmad0-dev libao-dev

Change into the repository directory and compile Shell.FM:

$ cd shell-fm
$ make

Finally, install the binary and the manual as root:

$ su -c "make install"
$ sudo make install
Something went wrong with that request. Please try again.