Personal tools
You are here: Home / Installing Biskit / Ubuntu installation log

Ubuntu installation log

A log of a complete Biskit installation from scratch on a fresh Ubuntu 7.04 server.
The instructions below are a bit outdated. There is now a python-biskit debian package available which you can use instead of following section 3. See short installation instructions! However, the instructions below are still valid and there is no harm in using the fresh subversion checkout of the latest Biskit snapshot.

0. Setup server

We are starting with a fresh install of the Ubuntu 7.04 server edition ( on a 32 bit x86 virtual machine. Create a user 'biskit' (or choose a sensible alternative).

1. Basic customization

sudo apt-get install ssh openssh-server zsh emacs21 subversion mc
sudo apt-get install zip unzip
sudo apt-get install xauth
chsh   # -> /usr/bin/zsh

Copy over zsh and emacs settings files, for example:

cd ~

Now it's more convenient to continue from a remote ssh shell (with running X11). Run 'ifconfig' on the fresh server, note the IP address and connect with ssh from outside.

2. Setup Biskit dependencies

sudo apt-get install gcc make autoconf libtool gawk
sudo apt-get install python-dev python-numpy python-numeric
sudo apt-get install python-scientific
sudo apt-get install gnuplot plotutils libplot-dev

Build and install Biggles:

tar xvf python2-biggles-1.6.5.tar.gz
cd python2-biggles-1.6.5
python build
sudo python install


the Debian package python-biggles-1.6.4 still uses the old Numeric package and is not compatible with Biskit

Fetch and install Biopython:

   sudo apt-get install python-biopython


   The setup currently gives a (non-fatal) error due to a bug in
   Fix the problem::

      sudo emacs /var/lib/python-support/python2.5/Bio/Wise/

   --> move "from __future__ import division" into the first line of the file.

Install PVM and PVM libraries:

sudo apt-get install pvm pvm-dev xterm

Install pypvm python bindings (there is no Debian/Ubuntu package for those):

tar xvfz pypvm_repackaged
cd pypvm-0.95x-repacked
python build
sudo python install

Configure PVM, make sure the following variables are defined in your .zshenv or .bashrc or equivalent:

# PVM setup
export PVM_ROOT=/usr/lib/pvm3
export PVM_RSH=/usr/bin/ssh

(64bit users need to replace LINUX by LINUX64 -- check the output of pvmgetarch!)

As conclusion, let's do a basic test that all libraries are in place:

>>> import numpy, Numeric, Scientific, pypvm, biggles, Bio

...Should not give any error. Now it's time to check out biskit! But before we do that, let's first make sure our system has all the latest patches and versions:

sudo aptitude upgrade

3. Fetch and install Biskit

Prepare a local python folder and check out Biskit:

cd ~
mkdir py
cd py
svn co biskit
ln -s ~/py/biskit/Biskit ~/py/

Adapt your $PYTHONPATH -- edit .zshenv (or .bashrc or equivalent):


Test-import Biskit:

>>> import Biskit

Warning (ignored): Could not find file with user-defined settings in

Warning (ignored): Creating new user configuration file /home/biskit/.biskit/settings.cfg.

Warning (ignored): Creating folder /home/biskit/.biskit for Biskit settings.

Excellent! Now it's a good idea to also put the biskit scripts into the search path. Adapt your .zshenv (or .bashrc or equivalent):

export PATH=$PATH:$BPath/Biskit:$BPath/Dock:$BPath/Mod


~> source ~/.zshenv

Syntax: -i |file1 file2 ..| [-h |host| -c |chunk| -a -w
                      -o |other_outFolder| -wat -s]

The tiny script is very useful to quickly load pickled (binary stored) Biskit objects. However, in this one case we needed to hard-code the path to python into the script and usually this one is somehow different. So let's edit the script and correct the first line:

sudo emacs `which`

Change '#!/usr/local/bin/python -i' to '#!/usr/bin/python -i'. Now test:

~> [pickled_object]

Opens an interactive python prompt with all Biskit/* modules and
functions imported into the default namespace. A single argument can point
to a pickled python object which is then unpickled and put into a variable x.


Some of Biskit's parallized scripts need a temporary folder that is accessible from all nodes. The location of this folder is set in ~/.biskit/settings.cfg (tempDirShared) and is by default ~/tmp. Create such a folder or change the setting:

cd ~ mkdir tmp

Last, I prefer having a shortcut to biskit in my home:

ln -s ~/py/biskit ~/

That's it! The Biskit library is fully installed and you can start exploring it. What we are still missing are all the nice external helper applications. However, if you want to explore, compare, fit and manipulate structures, trajectories and complexes -- you can start right-away. None of the helper applications is required for the basic Biskit functionality.

4. Install helper applications

We are running out of Debian packages here... Let's start with SurfaceRacer (molecular surfaces and curvature), MSMS (the same but older), DSSP (secondary structure determination), and pymol for visualization.

  • SurfaceRacer: follow SurfaceRacer setup

  • DSSP: follow DSSP setup

  • MSMS: follow MSMS setup

    Msms is redundant to the faster SurfaceRacer. But once we are at it...

  • Pymol, finally we have some nice Ubuntu package again:

    sudo apt-get install pymol

Very useful is also the possibility to project conservation profiles into protein structures. For this to work, we need HMMER and the Pfam database. The biskit virtual machine comes without any databases, so you will need to install Pfam yourself.

  • Hmmer:

    sudo apt-get install hmmer
  • Pfam database (not pre-installed on vmbiskit): follow Pfam setup

Now let's install some energy-related programs:

  • Xplor-NIH: follow Xplor setup (involves registration)

  • FoldX: follow FoldX setup (involves registration)

  • Prosa2003: follow Prosa2003 setup (involves registration and sends license key)

    As Ubuntu-user we also need to change the file /usr/local/lib/prosa2003/bin/prosa2003! See Prosa troubleshooting !

  • IcmBrowser: follow IcmBrowser setup

    Note: Biskit only uses one tiny method from the large functionality of ICM (the calculation of CAD distance measures) -- use the class as a template for your own ICM wrapper!

    The non-graphical ubuntu server needs some extra libraries to run icmbrowser:

    sudo apt-get install libstdc++5 libXrender1 libXrandr2 libXcursor1 libxft2

If you want to use the full Biskit docking pipeline (Biskit.Dock), you need Hex:

Last not least, let's install the programs needed by the homology modeling pipeline (Biskit.Mod). The homology modeling pipeline also depends on locally installed sequence databases -- as before with Pfam, these are not included in the vmbiskit virtual machine, you will need to download them after unpacking the machine or (better) mount a folder with databases via nfs.

  • Blast and related programs:

    sudo apt-get install blast2


    The debian package trails behind the current blast version. Follow Blast setup to install the current version from source.

  • Blast databases (not installed on vmbiskit): follow Blast setup

  • T-Coffee + Clustalw + SAP: follow T-Coffee setup

    Note: Instaling T-Coffee (as well as Hex and xplor) as sudo creates configuration and cache folders (.t_coffee, hex_cache, .xplornih) in ~biskit that belong to user root, which causes some trouble later on. Fix the ownership:

    cd ~biskit
    sudo chown -R biskit:biskit *
  • Modeller: follow Modeller setup (requires registration and sends license key)

That's it! We have now installed Biskit and almost all helper applications that it interfaces with. You may also consider installing the Amber simulation package. Biskit has several tools to work with Amber (a topology building wrapper of tleap, a script for automated set up of multiple parallel MDs, modules for entropy calculation using ptraj, modules to parse Amber trajectories). An academic license for Amber costs 400 USD. That's why we cannot pre-install it on the biskit virtual machine.

Let's make a full-blown Biskit test:

cd biskit/Biskit
python -v 3 -e long

The first line starts the pvm client. We haven't configured any nodes though, so most of the pvm test cases will fail anyway. The -v 3 option switches on verbose reporting, so you will get some graphics windows popping up. '-e long' means exclude time-consuming tests. You can still expect some test failures for (1) programs that are not installed (whatif for example), (2) programs that miss their databases (hmmer, blast).

5. Prepare distribution of virtual machine

The following additional steps are needed before we can distribute the virtual machine snapshot:

  • edit /etc/motd.tail and adapt the disclaimer of the system

  • remove any registration-only software, at the moment these are:

    • Modeller
    • Prosa2003
    • Xplor-NIH (unless downloaded through authenticated xplor-linked page)
    • FoldX (unless downloaded through authenticated foldx-linked page)
  • empty /etc/iftab (otherwise the network is upset by a changing hardware ID)

  • empty /etc/udev/rules.d/70*net.rules (which does the same as iftab in Ubuntu 7.10)