Archive for 2011

Redmine is a web-based project management system, often called a forge, built using the Ruby on Rails framework. It provides bug/issue tracking, time tracking, wiki pages, gantt charting and calendar, multiple project support, and role-based access control for users to name a few. This article will cover the process of installing Redmine on Debian Squeeze using MySQL for data storage, Thin for serving Ruby, and nginx as the outward-facing server.

When you're developing performance-critical code you will most likely receive performance increases in one of two ways; via the selection of the most appropriate algorithmic solution, or via the expense of additional hardware. Here we'll look at an interesting alternative - optimising via compiler flags.

fabric is described as a simple library and command-line tool for performing application deployment and system administration tasks. Here we'll take a look at using it to deploy simple applications remotely.

This article takes you through the necessary steps to extend a raw libvirt storage volume that is part of a libvirt storage pool on a Debian Squeeze GNU/Linux system. A libvirt storage volume is essentially a virtual raw hard-disk image that is used by a virtual machine.

I have long wished for the ability to install a Debian system specifying both the package list and the exact versions of the packages installed. dpkg --get-selections | ssh newhost dpkg --set-selections is useful but always chooses the latest version, and especially when using testing or unstable, it is sometimes necessary to temporarily downgrade a package from the latest version available.

Both Debian Lenny and the system I've been running it on are now long in the tooth. So I've just brought up a Debian Squeeze-based system on a new and more capable box. I'd like to keep files in sync across the two hosts and would look for suggestions on doing that.

As Debian Lenny has a really outdated version of Engine X available, I took some time to update the package and compile it and note how it is done here for future references to anybody who needs to update an existing Debian package to use themselves.

Recently, my focus of interest turned to volume management. Since with Linux, LVM2 seems to be the only viable solution (unless you go for cluster filesystems), I started reading about LVM. Somewhere, I read about setting up a loop device as PV and that's where I got intrigued: Couldn't I just use a sparse file with one single large hole and let my ext4 fill that when there's actually something written onto the loop device?