Difference between revisions of "SpotCommander"

From ArchWiki
Jump to: navigation, search
(First version of article.)
 
m (Small adjustements)
Line 1: Line 1:
 
[[Category:Audio/Video]]
 
[[Category:Audio/Video]]
 
 
[http://code.google.com/p/spotcommander/ SpotCommander] is an open source web-based remote control for the '''GNU/Linux version''' of [[Spotify]]. The application is written in [[PHP]] and HTML5, and thus optimized especially for mobile devices, like smartphones or tablets. It has a visual appealing, responsive and intuitive user interface.
 
[http://code.google.com/p/spotcommander/ SpotCommander] is an open source web-based remote control for the '''GNU/Linux version''' of [[Spotify]]. The application is written in [[PHP]] and HTML5, and thus optimized especially for mobile devices, like smartphones or tablets. It has a visual appealing, responsive and intuitive user interface.
  
Line 17: Line 16:
 
* Gestures
 
* Gestures
 
* Keyboard shortcuts
 
* Keyboard shortcuts
 
  
 
== Installation ==
 
== Installation ==
 
 
=== Preconditions ===
 
=== Preconditions ===
 
==== Install Apache web server ====
 
==== Install Apache web server ====
Line 57: Line 54:
 
* In addition the following packages need to be installed:
 
* In addition the following packages need to be installed:
 
   $ pacman -S inotify-tools xautomation wmctrl  
 
   $ pacman -S inotify-tools xautomation wmctrl  
 
  
 
=== Install SpotCommander ===
 
=== Install SpotCommander ===
Line 96: Line 92:
  
 
* If you have followed the instructions carefully, you should now be able to open SpotCommander under ''http://localhost/spotcommander''.
 
* If you have followed the instructions carefully, you should now be able to open SpotCommander under ''http://localhost/spotcommander''.
 
  
 
=== Add daemon to startup (optional) ===
 
=== Add daemon to startup (optional) ===
Line 106: Line 101:
 
Simply create a symlink, like this:
 
Simply create a symlink, like this:
 
   $ ln -s /usr/local/bin/spotcommander ~/.kde4/Autostart/
 
   $ ln -s /usr/local/bin/spotcommander ~/.kde4/Autostart/
 
  
 
== Usage ==
 
== Usage ==

Revision as of 21:47, 2 December 2012

SpotCommander is an open source web-based remote control for the GNU/Linux version of Spotify. The application is written in PHP and HTML5, and thus optimized especially for mobile devices, like smartphones or tablets. It has a visual appealing, responsive and intuitive user interface.

Features

The application offers amongst others the following features:

  • Launch and quit Spotify
  • Now playing
  • Control playback
  • Change Spotify's volume
  • Toggle shuffle and repeat
  • Browse playlists, albums and starred items
  • Search for tracks
  • Recently played
  • Queue
  • Gestures
  • Keyboard shortcuts

Installation

Preconditions

Install Apache web server

  • To be able to use SpotCommander, it is neccessary to have an Apache web server installed on the device, which should be controlled remotely later. Apache and PHP can be installed this way:
 $ pacman -S apache php php-apache

See the LAMP article for more detailed information about Apache.

Configuration of apache

  • To be able to run the application, the sqlite extension of PHP is required. First, install the package:
 $ pacman -S php-sqlite
  • Now edit the php configuration in /etc/php/php.ini:
 $ nano /etc/php/php.ini
  • Comment out the following lines, to enable the needed extensions:
 extension=curl.so
 ...
 extension=openssl.so
 ...
 extension=pdo_sqlite.so
 ...
 extension=sqlite3.so
Note: Make sure you have the openssl package installed.
  • It is neccessary to give Apache access to /tmp. Search in /etc/systemd/system/multi-user.target.wants/httpd.service for the line PrivateTmp=true and change it as follows:
 PrivateTmp=false

To make this change take effect, a reboot is needed.

Other required packages

  • In addition the following packages need to be installed:
 $ pacman -S inotify-tools xautomation wmctrl 

Install SpotCommander

  • Go into the web server root directory:
 $ cd /srv/http/
  • Download the tar.bz2 file:
 $ wget -N http://www.olejon.net/code/spotcommander/files/spotcommander-8.2.tar.bz2
  • Extract the tar.bz2 file:
 $ tar -jxvf spotcommander-8.2.tar.bz2
  • Remove the tar.bz2 file:
 $ rm spotcommander-8.2.tar.bz2
  • Go into the spotcommander folder:
 $ cd spotcommander
  • Set the correct file permissions:
 $ sudo chmod 755 .
 $ sudo chmod 755 bin/*
 $ sudo chmod -R 777 db/
 $ sudo chmod 666 txt/*
 $ sudo chmod 777 lib/cache
  • Create a symlink, to be able to execute the SpotCommander daemon:
 $ ln -fs $(pwd)/bin/spotcommander /usr/local/bin/spotcommander
  • Adjust SpotCommander's config file:
 $ nano config.php
  • Set config_path like this:
 $ define('config_path', '/srv/http/spotcommander');
  • Start the daemon:
 $ spotcommander start

Add daemon to startup (optional)

If you want the SpotCommander deamon to start automatically, you have to add it in the startup list:

  • Under GNOME

To open the startup applications dialog:

 $ gnome-session-properties
  • Under KDE

Simply create a symlink, like this:

 $ ln -s /usr/local/bin/spotcommander ~/.kde4/Autostart/

Usage

After you have set up the server successfully, every device in your local network should be able to access SpotCommander under the ip adress of the server. For example, if the server would have the ip 192.168.0.24:

 http://192.168.0.24/spotcommander/

To find your ip adress, execute the following:

 ip addr

If you cannot access the server, make sure, that apache is accessible by other hosts in the LAN. Check in /etc/httpd/conf/httpd.conf to what hosts it is listening to. The line should look like this:

 Listen 80