Wednesday, 7 July 2010

Firestarter Tray Icon Fix / Horrific Botch - Gnome 2.30

A quick warning before I begin. This is the most horrific and longwinded way of fixing the transparency issue with Firestarter in Gnome 2.3 (and Lucid Lynx) that it cannot be considered much more than a dirty and very basic hack.

Firestarter hasn't been maintained for a very long time, however for home usage I find it a preferable application to others, as the active connection and live event updates are simply not available in any other firewall configurator for Linux. So, that said - here is the plan:

1. Download the Firestarter source
2. Modify the images the source uses to conform to the taskbar background
3. Build and install Firestarter with these new images

This destroys the ability of Firestarter to adapt to differing themes you may decide to use other than the one you have compiled it for (as the images it uses no longer have any transparencies), meaning that a theme change also requires the recompilation of Firestarter to look pretty. For those of you that change theme infrequently/never, this will work just fine.

To obtain the source, either head over to the website, or, if in Ubuntu, enter the following into a terminal:

apt-get source firestarter
Then you want to enter the ~/firestarter-1.0.3/src/xpm directory and modify each of the icon images using something like GIMP so that your tray Icon background replaces the white space around each icon as in the examples below:

My theme is a dark one that uses an image with a gradient for the taskbar background, hence the result above. You'll need to repeat this task for each image in the folder, which is somewhat laborious - but hopefully you won't be changing your theme for a while!

Once this is done, open a terminal and type the following:

sudo apt-get build-dep firestarter
cd firestarter*
sudo make install
I highly recommend using "sudo checkinstall" rather than "sudo make install" as this will simply removing/upgrading your new Firestarter package at a later date (this will necessitate installing checkinstall using "sudo apt-get checkinstall").

Restart Firestarter and hopefully you're golden!

Some notes:

1. If you're previously set the program up to launch without root permissions in your /etc/sudoers list you will need to modify the path from

username ALL= NOPASSWD: /usr/sbin/firestarter 
username ALL= NOPASSWD: /usr/local/bin/firestarter 
using the command:
sudo visudo
2. When using the source pulled directly from the old Firestarter site, I encountered an odd error whereby Firestarter would randomly die and dissapear, which is not exactly the behavior you want from a firewall! This problem dissapeared when I used the source from the Ubuntu repositories, which appears to have been patched several times since the version obtained from the Firestarter website. I highly recommend using the source from the Ubuntu repos.

That's all folks, let me know if you encounter any problems with any part of this. It's a dirty hack, but if just you can't stand the damned broken transparency in your tray, then it's for you.

No comments:

Post a Comment