How To Install BIKA LIMS Inkosi On Ubuntu Server In 15 Minutes
This howto describes how to build a standalone BIKA LIMS solution on top of Ubuntu server. Once you have downloaded and installed the basic Ubuntu the whole process of cutting and pasting takes about 15 minutes.
Since BIKA WILL NOT WORK on new versions of Plone. (Ask them - not me!) This method describes how to get the older WORKING versions of all the software you'll need and how to install them. A large part of the how to for setting up the Zope/Plone instance was taken from Kees Hink's script file which I have modified in order for BIKA to work on it and with the latest file locations.
First download and install Ubuntu Hardy Heron 8.04 from the Ubuntu repository. This is the basis for getting the older versions of the software. Since Ubuntu software appears to be linked to the distro this is the distro we want to ensure version compatibility. You can get it from:
We will use LIMSERVER for the name of the computer and USERNAME and PASSWORD where appropriate. Please use your own ones as nessasary. Select openssh and LAMP server using the space bar when requested. Ensure that the LIMSERVER has access to the WWW. and is not locked out by your firewall or something silly.
Once Ubuntu is installed and you have logged in you can determine the local ip address that was issued by your networks DHCP server to your LIMSERVER by typing
The LIMSERVER local ip is the number following the first instance of inet.
eg inet addr:192.168.2.8 means that the local ip address is 192.168.2.8
(Note: it's not 127.0.0.1. That's your loopback address.)
Now go to another computer on your network where you will carry out the remainder of the installation.
Download install and run your favorite tty client on the other computer on your network that you will use to communicate with your LIMS server. I like putty from:
Open an ssh session (port 22) to the local ip address of your LIMSSERVER and log in.
You are now 15 minues away from a working installation of BIKA LIMS. You can copy (using ctrl-c) the command lines and paste them into the SSH session using shift-ins or right click. If multiple lines are shown in a box you can select them all and copy and paste them all at once.
Set up directories for downloading and installing the required software:
Set up the Zope directories:
Set up the Plone directories
# Plone software
# What do you want your Zope instance to be called?
Set up the bika directories:
Note you may have to relocate the online sites for the files in the future but it is essential that you get the same versions until the bugs with the later version conflicts are ironed out.
Install the compilers:
sudo apt-get install gcc
sudo apt-get install g++
Create the download directories:
mkdir $BUILDS_DIR $DOWNLOAD_DIR $MY_PRODUCTS_DIR
Install the old version of python:
sudo apt-get install python2.4
sudo apt-get install python2.4-dev
sudo apt-get install python2.4-elementtree
Get Zope off the Internet and install it:
sudo wget $ZOPE_WGET_ADDRESS -P $DOWNLOAD_DIR
sudo tar -xzf $DOWNLOAD_DIR/$ZOPE_TARBALL -C $BUILDS_DIR
For an explaination for using "./" in the above line see:
sudo apt-get install make
Prepare the zope instance:
$SOFTWARE_HOME/bin/mkzopeinstance.py -d $INSTANCE_HOME -u $ROOT_LOGIN:$ROOT_PASSWORD
Download and install Plone:
sudo wget $PLONE_WGET_ADDRESS -P $DOWNLOAD_DIR
sudo tar -xzf $DOWNLOAD_DIR/$PLONE_TARBALL -C $MY_PRODUCTS_DIR
Create your single plone instance (if you create more than one instance you will need to shift up the start-id-server as discussed later).
for i in $MY_PRODUCTS_DIR/$PLONE_VERSION/*;
do echo $i;
ln -s $i $INSTANCE_HOME/Products/;
Each line is as read on a single line (4 seperate lines in total).
Since this version of plone doesn't have all the parts we need we need to install another plone over the top:
sudo apt-get install plone-site
At this point we have a working Plone site installed within a zope instance. The only reason we did it this way with the old versions was because BIKA doesn't work with the new versions of each. When those bugs are all ironed out I suggest you get Plone up and running with a more modern method. Then carry on from this point onward.