Homepage: webng.com/linuxhelp


 Compiling (the game Chromium) 
from a Debian Source Package


After having compiled GRUB from an RPM source package, I tried it again, this time with the game Chromium (which is part of SuSE but not Debian). With a few changes here and there, it compiled. I converted the resulting RPM binary package, to a DEB binary package with alien, and installed it. Everything worked like a charm.

This got me to thinking, maybe I could put together my own Debian source package. I had looked for a pre-made Debian source package a few months back, and at that time one didn't exist. One now exists, in unstable, but it looks like its designed to be hard to install. It does not include the data archive, or chromium-setup. This would be my first build of a Debian source package.

I read the Debian package management documentation and using the RPM spec file as a guide, put together the necessary files to build a Debian source package. To compile this package you need the source code and a data archive:

chromium-src-0.9.12.tar.gz
chromium-data-0.9.12.tar.gz

from the original author, Mark B. Allan, of Chromium, and the two extra files:

Chromium-0.9.diff.bz2
chromium.png

Now, create the directory workspace in which to work:

 mkdir workspace
 mv chromium-src-0.9.12.tar.gz chromium-data-0.9.12.tar.gz workspace
 mv Chromium-0.9.diff.bz2 chromium.png workspace
 cd workspace
 bunzip2 Chromium-0.9.diff.bz2

Unpack the archives:

 for a in *tar.gz; do tar jxf $a; done  (or unpack *)
 cd Chromium-0.9

Patch, to add the necessary Debian source package files (which includes the real patches)

 patch -p1 < ../Chromium-0.9.diff

Add the menu icon:

 mv ../chromium.png debian/

Now compile the package:

 chmod +x debian/rules
 fakeroot debian/rules configure  (like ./configure)
 fakeroot debian/rules binary  (like make)

The resulting archive, chromium_0.9.12_amd64.deb, is created in workspace.

Now change up a directory and install it with:

 cd ..; dpkg -i chromium_0.9.12_amd64.deb  (like make install)

It contains two binaries, /usr/games/chromium and /usr/games/chromium-setup. As the names suggest, various aspects of the game can be configured with chromium-setup and chromium starts the game.