GotCloud: Binary Releases
Installing Debian Packages
Back to parent: GotCloud
The GotCloud software is distributed in several Debian packages. These can be installed on traditional Debian systems as well as Ubuntu (where it has been tested). The software should run on all versions from Ubuntu Lucid (9.04) through Oneric (12.10). It has not been tested on other Debian systems, but it is likely it will work on those systems too. This software should work on any Unix system - only requiring recompilation from the source files.
The software is distributed in two parts, the aligner and umake. Each has a package to test the installation. The following naming conventions are used:
gotcloud-bin_latest_amd64.deb aligner and umake
gotcloud-test_latest_amd64.deb test data for software
where 'M.n' are the normal major-minor version system.
Fetch the Software Packages
# The easiest way:
mkdir debs
cd debs
wget ftp://share.sph.umich.edu/gotcloud/gotcloud\*latest\*.deb
# Another way:
ftp share.sph.umich.edu
Connected to share.sph.umich.edu.
220 (vsFTPd 2.3.5)
Name (share.sph.umich.edu:tpg): anonymous
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> prompt
Interactive mode off.
ftp> cd gotcloud
250 Directory successfully changed.
ftp> mget gotcloud*latest*.deb
ftp> quit
221 Goodbye.
Install the Software
Installation requires one to have root access and uses dpkg which Debian users will recognize. We recommend you install the first one separately so you can easily identify messages about prerequisite files that need to be installed:
sudo dpkg -i ~/debs/gotcloud-bin_*_amd64.deb
Selecting previously unselected package gotcloud-bin.
(Reading database ... 25372 files and directories currently installed.)
Unpacking gotcloud-bin (from .../gotcloud-bin_1.0_amd64.deb) ...
Setting up gotcloud-bin (1.0) ...
#============================================================
# 'java' is not installed, do 'sudo apt-get install java-common default-jre'
#============================================================
#============================================================
# 'make' is not installed, do 'sudo apt-get install make'
#============================================================
#============================================================
# 'libssl0.9.8' is not installed, do 'sudo apt-get install libssl0.9.8'
#============================================================
...
If there were messages about missing packages, install them now
sudo apt-get update
sudo apt-get install java-common default-jre make libssl0.9.8
Testing the Installation
We recommend that at least the first time, you install the test packages so you can conveniently test the installation and make sure everything runs smoothly. The tests run within a few minutes and are self checking, so unless you see obvious errors, you can be reasonably sure everything is set up properly. You only need to do this once, unless you have made significant changes to your Unix system.
sudo dpkg -i ~/debs/gotcloud-test*_amd64.deb
Selecting previously unselected package gotcloud-test.
(Reading database ... 27376 files and directories currently installed.)
Unpacking gotcloud-test (from .../gotcloud-test_1.0_amd64.deb) ...
Setting up gotcloud-test (1.0) ...
#======================================================================
# GotCloud README
#======================================================================
To test the GotCloud aligner, run:
bin/gen_biopipeline.pl --test ~/testalign
This will create/clear the output directory ~/testalign.
Test results and a log file are put in this directory.
Results are self-checked and if errors should occur, it will be obvious.
To test the GotCloud umake, run:
bin/umake.pl --test ~/testumake
This will create/clear the output directory ~/testumake.
Test results and a log file are put in this directory.
Results are self-checked and if errors should occur, it will be obvious.
Login as a normal user (ubuntu, not as root) and do:
# Test the aligner (2 minutes +/- 1 minute)
/usr/local/gotcloud/bin/gen_biopipeline.pl -test ~/testalign
Running GOTCLOUD TEST, test log in: /home/myuser/testalign/biopipeTest.log
Created /home/myuser/testalign/biopipetest/Makefiles/biopipe_Sample2.Makefile
Created /home/myuser/testalign/biopipetest/Makefiles/biopipe_Sample1.Makefile
---------------------------------------------------------------------
Submitted 2 local commands
Waiting for commands to complete... . . Commands finished in 37 secs with no errors reported
Results from DIFF will be in /home/myuser/testalign/diff_logfiles_results.txt
Successful comparison of data in '/home/myuser/testalign' and '/usr/local/gotcloud/test/align/expected'
Successfully ran the test case, congratulations!
rm -rf ~/testalign # If no error
# Test umake (5 minutes +/-2 minute)
/usr/local/gotcloud/bin/umake.pl --test ~/testumake
rm -rf ~/testumake # If no error
Creating Your Own Debian Package From the Source
The process to create your own Debian package from the source files is straight-forward for Debian users. The source files actually contain source for the executables, the test data and the scripts and configuration files used by the users. To source builds two debian package files - one for the test data (test) and one for the binaries and scripts (bin).
In order to simply the build of two packages, the debian directory contains the control files for both packages (bin and test). This requires that the normal control files (e.g. rules) be named rules.test and rules.bin and the shell script (makedeb.sh) be aware of this nuance. In addition the shell script can make an RPM file (using alien) and will help manage the version for GotCloud.
Fetch the Source
# The easiest way:
wget ftp://share.sph.umich.edu/gotcloud/gotcloud-src_latest.tgz
# Another way:
ftp share.sph.umich.edu
Connected to share.sph.umich.edu.
220 (vsFTPd 2.3.5)
Name (share.sph.umich.edu:tpg): anonymous
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> prompt
Interactive mode off.
ftp> cd gotcloud
250 Directory successfully changed.
ftp> get gotcloud-src_latest.tgz
ftp> quit
221 Goodbye.
# Extract the source files
cd ~/src # Wherever you want the source files
tar xzf path/gotcloud-src_latest.tgz
Compile the Source
cd ~/src
cd gotcloud*
cd src
cat INSTALL # Read about dependencies
make clean # Clean out cruft from a previous run
make
Create the Debian Package Files
cd ~/src
cd gotcloud*
# Add -replace only if rebuilding the same version
debian/makedeb.sh bin `cat release_version.txt`
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
dpkg-buildpackage: export C...
[lines deleted]
Generate package: cd gotcloud-bin; dpkg-buildpackage -b -us -uc -rfakeroot
===> Version '1.01 of 'gotcloud-bin' will install into 'usr/local/gotcloud'
install -d debian/tmp/DEBIAN
cp debian/control debian/postinst debian/postrm debian/tmp/DEBIAN
install -d debian/tmp/usr/share/doc/gotcloud-bin_1.01
sed -e s/99.99/1.01/g < debian/changelog > debian/changelog.new
[lines deleted]
Converting symlinks into the actual executables to be distributed
[lines deleted]
dpkg-deb: building package `gotcloud-bin' in `./gotcloud-bin_1.01_amd64.deb'.
Package file now in /home/tpg/dev/gotcloud
-rw-r--r-- 1 tpg tpg 3592780 Feb 19 11:59 gotcloud-bin_1.01_amd64.deb
debian/makedeb.sh test `cat release_version.txt`
The deb files will be created in the directory above the debian directory (e.g. gotcloud)