I decided that before I did any more work on the applet, I would improve its installation process to make it easier for people to try it out. So, the process to get and build the source now looks like this:
- Browse source here.
- Download the source:
bzr branch http://stevenbrown.ca/src/FileListApplet
- Install dependencies (Ubuntu package names given):
sudo apt-get install python-xdg python-gnome2-desktop python-gtk2 python-pyinotify
- Branch the source using the
cdinto the directory.
./configure --prefix=/usr(the prefix is important!)
sudo make install
- If the applet does not show up in your Add to Panel menu, try restarting the bonobo-activation-server:
Autotools is pretty much the standard in source package management on linux. Except for the name, there is nothing automatic about autotools. Every encounter I’ve had with autotools has usually defeated me and left me frustrated and leaving whatever I was working on to do something else. For me, because I had labeled it the next step, it basically stalled the entire project for a while. Most people tend to copy and paste other projects’ autotools setup, but I figured that was overkill for my purposes and I didn’t find anything that quite suited me. I looked at gnome-blog, but it seemed like some stuff wasn’t quite working properly and some was completely unnecessary… in fact, this seemed to be a trend when looking at the autotools stuff in projects. Why is this? Autotools is not simple and due to this simple fact, I think it fails completely on many levels. Developers massage it enough to get it working, but few actually understand it all – I know I sure don’t! So please forgive the sloppiness and feel free to send patches. I gave up doing a couple things, like getting the revision number (
bzr revno) and including it in the version string (see
configure.ac). I know it’s probably something super simple, but I couldn’t seem to pass a variable containing a string as the version….
I feel that GNOME, as a platform for development, could seriously benefit from some kind of frontend to autotools that handled GNOME development nicely and hid as much as possible from the developer (including all those nasty config files that pollute the package tree). Anyway, I did not have an enjoyable time grappling with autotools, but I’ll end this mini-rant here.