Rosetta is a successful tool for molecular modeling, allowing the inspection of its source code, but definitely not allowing its redistribution - neither in binary nor in source form. DebianMed hosts build instructions for Rosetta, a bit of an experiment to investigate if communities also form around such "bare metal".

Instructions how to build Debian packagse from the Rosetta source code were already presented on the Rosetta forum. Since technically easier to update, here also on the Debian Wiki. These instructions were last tested for Rosetta 3.4, waiting for a volunteer to substitute the 3.3 to 3.4 also in the written instructions below.

Build Instructions

To start, download Rosetta from

# some eye candy - this one is important
mv rosetta3.3_source.tgz rosetta_3.3.orig.tar.gz

# this one is just nice and eventually helpful
mv rosetta_source/ rosetta-3.3

# change into that directory
cd rosetta-3.3

# get the debian build instructions
svn export svn://

# get patches applied to have the gcc detected
quilt push -a

# when trying for the first time, do not use any -j directives for parallelisation of the build process, just run plain
fakeroot ./debian/rules binary

The build takes long. Have a lunch break.

Results to expect

There are two packages. The -dbg package you only need for interpreting bug reports. You may be asked to install it when communicating crashes to your peers. Big, not?

$ du -h rosetta*.deb
30M    rosetta_3.3-1_amd64.deb
289M   rosetta-dbg_3.3-1_amd64.deb

When installing the 30M regular package, this explodes to

$ du -hs /usr/lib/rosetta/*
27M     /usr/lib/rosetta/bin
92M     /usr/lib/rosetta/lib

The binaries are dynamically linked:

$ ldd /usr/bin/minirosetta_graphics =>  (0x00007fffb7f64000) => /usr/lib/rosetta/lib/ (0x00007fc9f8230000) => /usr/lib/rosetta/lib/ (0x00007fc9f7d9f000) => /usr/lib/rosetta/lib/ (0x00007fc9f7421000) => /usr/lib/rosetta/lib/ (0x00007fc9f5cf5000) => /usr/lib/rosetta/lib/ (0x00007fc9f5617000) => /usr/lib/rosetta/lib/ (0x00007fc9f53de000) => /usr/lib/rosetta/lib/ (0x00007fc9f4e68000) => /usr/lib/rosetta/lib/ (0x00007fc9f4b80000) => /usr/lib/rosetta/lib/ (0x00007fc9f480c000) => /usr/lib/rosetta/lib/ (0x00007fc9f45bf000) => /usr/lib/ (0x00007fc9f4386000) => /usr/lib/rosetta/lib/ (0x00007fc9f412c000) => /usr/lib/rosetta/lib/ (0x00007fc9f3e90000) => /usr/lib/x86_64-linux-gnu/ (0x00007fc9f3b8c000) => /lib/x86_64-linux-gnu/ (0x00007fc9f3909000) => /lib/x86_64-linux-gnu/ (0x00007fc9f36f3000) => /lib/x86_64-linux-gnu/ (0x00007fc9f336f000)
        /lib64/ (0x00007fc9fb78c000)

Ideas for this page?

Ideas for optimisations of the package?

Mighty annoying are Rosetta's external libraries that ship together with its sources. Debian has the same version 1.46 of BOOST already available and there is little incentive to keep any such redundant. All those external libraries and tools should be substituted with the regular packages. Well. Upstream would need to want any such separation first, I presume.

To help, contact Debian Med or the maintainer of the Rosetta package directly.


See also