How To Install Xibo on Ubuntu 12.04

Published on February 26, 2014

Matt Holder

How To Install Xibo on Ubuntu 12.04

Status: Deprecated

This article covers a version of Ubuntu that is no longer supported. If you are currently operate a server running Ubuntu 12.04, we highly recommend upgrading or migrating to a supported version of Ubuntu:

Reason: Ubuntu 12.04 reached end of life (EOL) on April 28, 2017 and no longer receives security patches or updates. This guide is no longer maintained.

See Instead: This guide might still be useful as a reference, but may not work on other Ubuntu releases. If available, we strongly recommend using a guide written for the version of Ubuntu you are using. You can use the search functionality at the top of the page to find a more recent version.

Getting Started


Xibo is a digital signage platform that is released under an open-source license. If you are reading this and wondering what digital signage is – think about the information screen at your local Doctor’s office or advertising in various shops.

The Xibo system is made up from two components: First of all there is the server, which is used to create and schedule the layouts; and then there is the client, which downloads all of the relevant information about the currently scheduled layout and displays this on the screen.

Considerations that should be made are mentioned below:

  1. Long term support - In a production environment, having long-term support available is really important. For this, I have chosen to use Ubuntu Server 12.04, which is supported until 2017.

  2. PHP settings - During the installation process, I will discuss some settings that need to be tweaked for the system to work as well as possible.

  3. File storage location - When set, the media files path should not be within the web server root folder structure.

Installation instructions


  1. An Ubuntu 12.04 droplet

  2. Apache 2 web server

  3. PHP5

  4. MySQL server

  5. PHP5 GD plugin

  6. PHP5 MySQL plugin

  7. PHP5 crypt plugin

Updating the VPS

When using Ubuntu, apt-get can be used to update the package repositories and also install any updates:

sudo apt-get update
sudo apt-get upgrade

When asked, have a look at the changes that apt-get is suggesting and accept them.

Install the packages

On the command line run the following commands. When asked, accept any changes that need to be made. Take care when setting the mysql root user, which will happen as part of the installation process.

sudo apt-get install apache2 mysql-server php5 php5-gd php5-mysql php5-mcrypt

Download and unpack the server files

The latest stable version of Xibo is 1.4.2. Running the following commands will download the server, unpack the files, move them to the relevant location and then change the ownership of the folders so that the web server has the access it requires.

cd ~
wget https://launchpad.net/xibo/1.4/1.4.2/+download/xibo-server-142.2.tar.gz
tar xvzf xibo-server-142.2.tar.gz
sudo mv xibo-server-142 /var/www/xibo-server
sudo chown www-data:www-data -R /var/www/xibo-server

Now, we need to provide a location for the media files to be stored in:

sudo mkdir /media/xibo-library
sudo chown www-data:www-data -R /media/xibo-library

Update the PHP configuration file

The default configuration of PHP is quite conservative when it comes to the time scripts can execute for and the size of files that can be uploaded. To make the needed changes, we will use the nano text editor:

sudo nano /etc/php5/apache2/php.ini

Once the file has been opened in nano, you can use the ctrl-w key combination to search for the following items:

  1. upload_max_filesize

  2. post_max_size

  3. max_execution_time

If you wish to be able to upload files of size up to 30MB and wish to be able to upload for a maximum of ten minutes, then make sure the lines look like the following:

upload_max_filesize = 30MB
post_max_size = 30MB
max_execution_time = 600

To save the file, press Ctrl-O and press Enter. Then exit by pressing Ctrl-X. Now restart the webserver so that these changes can be loaded:

sudo /etc/init.d/apache2 restart

Complete the installation using the web interface

The command line work has now been completed and all that remains is to visit the web-based installer to completely set up the xibo server. Open up a web browser and visit the following address:


This will then open up the install.php page:

<img src=“https://assets.digitalocean.com/articles/Xibo/image1.jpg”>

The second step of the installer will verify that all of the dependencies have been installed successfully. Assuming success select Next.

The third step of the installer asks if you would like to use an existing database or create a new one. For new installations, I would always select to create a new database.

<img src=“https://assets.digitalocean.com/articles/Xibo/image3.jpg”>

The fourth step is for you to input the settings of your mysql server. The root password is the one that you set earlier in this process and the xibo username and password are accounts that the installer will create for xibo to access this database.

<img src=“https://assets.digitalocean.com/articles/Xibo/image4.jpg”>

Step five should complete quickly and shows that the database schema has been imported.

<img src=“https://assets.digitalocean.com/articles/Xibo/image5.jpg”>

The sixth step asks for a password to be set for the xibo_admin administrative user. When entered, the installer at the next screen will verify that the password was entered and was satisfactory.

<img src=“https://assets.digitalocean.com/articles/Xibo/image6.jpg”>

The seventh (and final) step is asking for us to provide the library location for the media files and a server key. This server key is important and is used so that the client can authenticate with the server. Without the correct server key, the client will not be able to download data from the server. Finally, decide whether anonymous statistics should be sent to the project maintainers or not.

<img src=“https://assets.digitalocean.com/articles/Xibo/image7.jpg”>

Now, we will see two screens in a row that confirm that settings are correct and that the system has been successfully installed. When looking at this second confirmation, go ahead and open up the login page.

<img src=“https://assets.digitalocean.com/articles/Xibo/image8.jpg”>

Client and usage

The easiest way to test the server is to login and create some layouts. The usage of the server is beyond the scope of this tutorial and further information can be found here

Staying on the cutting edge

Being open-source, development of Xibo is done in the public eye. If you wish to help out with the development of the project, whether via programming new features, fixing bugs, providing translations or by testing new code, information can be found here.

Using the steps below, you will be able to install any of the public bzr branches, which are available on launchpad


  1. Like all pre-release software, the chance of bugs are higher than in released software. Without thorough testing, software will never be able to improve. That said, please do not use these releases in production!

  2. With some of the bzr branches, some functionality could be broken. Use a bzr branch of the code to test specific things.

  3. Even numbered releases (1.0, 1.2, 1.4) are considered stable and odd numbered releases (1.1,1.3,1.5) are development releases. These releases tend to be more stable than using a bzr branch and are available from the download page and can be installed in the same way as shown above.

Installing from a bzr branch

Firstly, we will need to install the bzr tools. At the command line enter:

sudo apt-get install bzr

Secondly, at the code page, select a branch that you are interested in and click on the lp: link. Clicking on the link for 1.6, a page opens with the following bzr-branch link. To take a copy, go back to the command line and enter:

cd ~
bzr branch lp:xibo

After a minute or two, a new folder will be available in your home folder and this can then be copied into the web-server root:

sudo cp xibo/server /var/www/xibo-server-bzr -R
sudo chown www-data:www-data -R /var/www/xibo-server-bzr

Now, we need to provide a location for the media files to be stored in:

sudo mkdir /media/xibo-library-bzr
sudo chown www-data:www-data -R /media/xibo-library-bzr

Once these steps have been completed, you can simply visit the new web-address like above, but replace xibo-server with xibo-server-bzr. When asked about a database, create a new database with a different name to the stable install described earlier.

Final thoughts

Hopefully this tutorial has helped with installing the xibo server. If you wish to allow larger files to be uploaded in the future, simply follow the php.ini instructions that are listed earlier in this guide.

<div class=“author”>Article Submitted by: <a href=“http://www.mattmole.co.uk/wordpress/?p=10”>Matt Holder</a></div>

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about us

About the authors
Default avatar
Matt Holder


Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Andrew SB
DigitalOcean Employee
DigitalOcean Employee badge
June 18, 2014

@appugapu: The name of the package should be <code>python-soappy</code>


Any tutorial on getting python client installed and working on ubuntu 12.04 LTS. Tried the automated and manual process detailed at


but both process could not get it installed. Plz see the following screnshots.

https://www.dropbox.com/s/pc6b853wu2q37uo/automated script install error.png


any help would be appreciated.

thanks apu


I have not seen this issue before, but it is probably worth directing your question to:



When I reach the installer, after filling in the credentials to create a new DB, it redirects back to the main install page… it does not start installing, any idea why that is?


Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Featured on Community

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel