LastBASH

LastBASH is a console/terminal based player for Last.fm written in Bash.
Although has a functional default player, it is based on a GUI, and is thus inadequate for terminal use. LastBASH tries to find its place among the other Last.fm players, filling this gap: the missing console player.
Basically, it is no more than a TUI frontend, written in Bash.
It displays the information of the current playing track, keeps a history of the played tracks and allows the user to select the desired station and to perform some actions on the current track, such as love, skip or ban.
It can also create an HTML file containing the track information and album cover.
To listen to Last.fm, you can use any player capable of mp3 streaming (such as MPlayer, mpg123, XMMS and so on) by opening the M3U playlist that LastBASH saves on connecting.
But the recommended way is to use the LastBASH frontend features and let it run some compatible player in background (MPlayer or mpg123).
You can control the player through the same user interface.
This way you need to have only one console open for both listening and controlling Last.fm.
Features
LastBASH features the following:
* nice and usable Text User Interface
* authentication using the md5 password encryption
* retrieves the metadata of the current playing track and displays it (artist, album, track name, track duration)
* keeps a history of last played tracks
* allows you to control the Last.fm station, by issuing the love, skip and ban commands
* allows you to change the Last.fm station based on tags, group, neighbours, recommendations, similar artists, fans or by directly typing the full URL
* optionally, it can run a backend player (such as MPlayer or mpg123), which you can control through the same interface, or lets you choose any external player you wish (capable of playing mp3 streams), such as XMMS, Rhythmbox or even Amarok, if you feel to
* remote control (send commands and station changing)
* creates an HTML file displaying the current track information
* easy integration with web browsers
Internal stuff
The communication with the web service is accomplished using external HTTP clients (wget or cURL) or using the built-in client.
The TUI is created using some terminal features such as non-linear cursor movement, scrolling areas and color attributes, so you need a compatible terminal (Linux, Xterm, Rxvt, GNU Screen are tested and they work). Starting with version 0.3.0, the program uses tput instead of plain escape sequences.
Usage
After you have downloaded, extracted and installed the program, run it.
You do not need to pass any command line parameters, at least at first start.
<source lang="bash">
lastbash
</source>
It will ask your Last.fm username and password. You should have one before using it.
Basic usage
You can also pass the Last.fm station name to tune directly into it.
<source lang="bash">
lastbash "lastfm://globaltags/rock"
lastbash "lastfm://globaltags/classic rock"
lastbash "lastfm://user/cstroie/neighbours"
lastbash "lastfm://artist/Rammstein/similarartists"
</source>
Then, the program will try to connect.
If it succeeds, it will save a playlist in <code>~/.lastbash/playlist.m3u</code>, for you to open with some external player, if you don't want to use the backend it provides.
If you have MPlayer (for the moment, this is the backend), it will start playing automatically.
If you don't want to use the backend, you will have to tell LastBASH not to try to run it by setting this in the config
 
< Prev   Next >