Patching mod_fastcgi to support chroot setting under Ubuntu 12.04

When running PHP through PHP-FPM you have option to chroot FastCGI PHP server. Unfortunately, Apache is not aware of chrooting and therefore pass wrong script path to the server.

This patch supposed to help with it -

Below are steps I've run in order to apply this patch to my server. First, you want to remove installed mod_fastcgi package:

[SOLVED] GIMP 2.8 Freezes on select tool

Have no clue what happened to my GIMP installation. Every time I am using select tool (any - square, round, magic wand, etc) - it just freezes whole Gnome Shell. But I still able to get into VT with Ctrl+Alt+1 and kill process from there.

After googling everything - nothing came out and I tried simply delete ~/.gimp-2.8 folder. This did it! Probably some settings somewhere made GIMP get into forever loop or something..

Setup automatic backups and email alerts with Duplicity and Logwatch With Ubuntu 12.04

I am using Duplicity to automate off-site backups. What I wasn't doing before - checking integrity of remote backup. Due nature of backing up to remote location, it quite possible to have issues like half uploaded files, corrupted files, missing files, etc. I wanted to have something in place to check backup right after backup procedure is finished and email me if there are any differences.

Happy time with recent GRUB2 update with Ubuntu 12.04 LTS

My short story of dealing with failed grub2 install which rendered my server unbootable.

It was all good till recent update of grub2. Apparently it no longer fits into MBR and I missed related warnings. Or may be I had grub-legacy. I do not know honestly, but in result I had un-bootable remote server.

Using rescue mode (which is like Live-CD, but instead of GUI gives you SSH access so you could restore your server) I was able to get into server and try to update grub. Here is what I got for grub-install /dev/sda:

Nice, SEO-friendly URLs in Catalyst application

I really enjoy power behind Clean URLs in Drupal CMS. It allows me instead of "" path to have nice URL like "". And most important I can change this nice url to whatever I want or need.

I found it is quite easy to implement something similar for Catalyst application.

How to run QuickBooks Pro Timer under Ubuntu

QB Pro Timer could be used under Ubuntu. You need to install few libraries for it, since this piece of "software" written on VB.

It uses MDAC, OLE automation, MS JET for handling database and bunch of other activex components.

In order to make life easier, I installed 'winetricks':

$ wget

Next, install required "tricks" in order to run QuickBooks Pro Timer:

SproutCore and Catalyst

I always liked Perl language. Unfortunately, PHP popularity forced me to start do major development with this language. That's why Perl became "hobby" tool of choose.

Whenever I am doing new "own" project, I try to do it with Catalyst Framework. This is another web framework, written on modern Perl and utilizes modules like Moose, DBIx::Class, Template Toolkit. It gives nice structured code which allows to extend or refactor it later easily.

FeedAPI PHP Filter

Just released new Drupal module - FeedAPI PHP Filter. This module is add-on for FeedAPI Item Filter, implementing hook hook_feedapi_itemfilter().

This module creates new item filter to run custom PHP code on already parsed $feed object. This useful in cases when you need pre-process feed before importing it into nodes. For example, you may want to remove some text from feed item's description or fix relative image paths, etc.

Simple backup solution with backup-manager and Amazon S3

After the disaster with the Ukraine hosting data center I started thinking about backup options for my own dedicated server that I use to host and dozens of my other projects and a few clients' sites. So far it has been a plain backup on the second drive, but this accident showed that even having a hosting company do backups in the same building is not really a safe solution.

Finally obtained CVS account

Finally I was able to get CVS account on to submit my own modules.

This time I was able to fix all issues with new module Time Limit and finally got approval to upload it to CVS.

This module was developed while working on client's site who wanted to keep site freely available for user only for limited time. So basically, anyone who wants to show site content for some limited time and then force users to register - could use this module.