Cyberpunk Librarian – Episode 17 – Making a Display By Yourself

Cyberpunk Librarian
Cyberpunk Librarian
Cyberpunk Librarian - Episode 17 - Making a Display By Yourself

Ever want a big, digital sign in your library but didn’t want to have to pay big money to get it? Well if you have a couple old computers and a monitor, the Cyberpunk Librarian has the answer to your digital signage needs!


Getting up and running with Xibo

What you will need

A computer running Linux that will act as your server

Another computer running Windows

A monitor or flat panel HDTV for your digital displays

The Server

For my server, I ran Kubuntu and installed a LAMP stack. (LAMP is short for Linux, Apache, MySQL, and PHP.) For Ubtuntu based flavours, you can easily install LAMP via:

sudo apt-get install tasksel

sudo tasksel install lamp-server

As it installs, it will ask for a password for MySQL. Give it one and write it down. Put that password someplace safe. You won’t need it all that often, but when you need it, you need it.

Download the Xibo server

Xibo client for Windows or Linux

Installing and running

Note: To make things easier to move around, rename, copy, and store; I opened up a superuser Dolphin window. You can easily do this from the terminal (called Konsole on KDE) by typing:

sudo dolphin

I installed the Xibo server on a Kubuntu server running 14.04 LTS. After installing the LAMP stack I extracted Xibo and then copied it to the directory Ubuntu uses for web service with Apache:


Rename the directory with an easier name like, you know, xibo. For the rest of these notes, I’ll assume you called your xibo directory by that name.

You’ll need to give ownership and access of the xibo directory to the web user, or the Apache user. On Ubuntu flavours this user is called www-data. So:

sudo chown www-data.www-data -R xibo

That gives the web server the permissions it needs to access and run the system. Since this is an internal web service, I didn’t make any changes to the Apache configs.

Pop into /var and create a directory called xibo there too. This will hold your images and stuff for the screens and, for security reasons, it should be outside of the web directory. Give the web user owner ship with the same command as before:

sudo chown www-data.www-data -R xibo

PHP Dependencies

Chances are, some of these checkmarks will be red X’s if you run the install right away.

When you initially try to install Xibo you’ll get a screen like this and, chances are, you don’t have all the necessary PHP dependencies. May as well get them now

You’ll need the GD extension so:

sudo apt-get install php5-gd

Then go get the mcrypt extension. It’ll need some massaging to work.

sudo apt-get install php5-mcrypt

Once you get it installed, you’ll need to do a little bit of editing to make everything play nicely together. There’s an excellent explanation over on AskUbuntu on how to fix it up. Don’t worry, it’s pretty easy.

Edit php.ini to allow larger uploads. Since I was using KDE, I was using kate, the standard text editor for the system. So…

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

Change post_max_size and upload_max to 128 MB
Increase max_execution_time to 120 seconds

Yes! That should do it!

Open up the browser on your server and go to localhost/xibo and follow the directions to install. You’ll create an admin password for the user xibo_admin and you’ll need to create a server key to add clients into the server.

Setting up the client

If your clients are running Windows, then set up is incredibly easy – install the client and set it up. You can set up things like times to refresh, the directory to cache images, and so on.

Useful goodies and information

Xibo Server (CMS) Installation Docs
Xibo Windows Client Installation Docs
Xibo User’s Manual