Quickly install perl module Net::Amazon::S3 and all its dependencies

Net::Amazon::S3 is the standard perl module to interact with Amazon S3 service using perl scripts. If you ever tried to install it, you may well aware about its gigantic dependecies on other modules which must be installed correctly. If anything goes wrong, you’ll be in mess because you have check around 66 different modules.

Here is a single command which will install the module and all of its dependecies (known upto the date of this article). I’ve tested this several times in CentOS 5.x boxes but I dont guarantee that it’ll also work seamlessly for you as well:

Configure password based subversion access via http for multiple users

Given the tight timeline to configure subversion with httpd access having multiple users, I found that it’s not a big deal. Although, as there’s excellent reference available online for subversion, this quick howto will be helpful to point out just the essential statements.

What I want:
A subversion server having multiple repository in /svn directory and accessible through http url like http://svn.example.com. You can not browse svn repositories without supplying a valid username/password. All users have read only access to all repositories while only one user ‘svnadmin’ have read/write (commit,update etc.) access to svn.

QuickFix: ViewVC ImportError: No module named svn error

Recenlty I was in need to update a old subversion server to latest one in a CentOS 5.2 box. I removed the older rpms and compiled subversion from latest source. Everything seems fine except ViewVC which is used to browse svn repositories.

Following error was occuring:

An Exception Has Occurred
Python Traceback

Traceback (most recent call last):
File “/usr/local/viewvc-1.1/lib/viewvc.py”, line 4065, in main
request.run_viewvc()
File “/usr/local/viewvc-1.1/lib/viewvc.py”, line 403, in run_viewvc
self.view_func(self)
File “/usr/local/viewvc-1.1/lib/viewvc.py”, line 1662, in view_roots
allroots = list_roots(request)
File “/usr/local/viewvc-1.1/lib/viewvc.py”, line 3922, in list_roots
cfg.utilities, cfg.options.svn_config_dir)
File “/usr/local/viewvc-1.1/lib/vclib/svn/__init__.py”, line 53, in SubversionRepository
import svn_repos
File “/usr/local/viewvc-1.1/lib/vclib/svn/svn_repos.py”, line 25, in ?
from svn import fs, repos, core, client, delta
ImportError: No module named svn

Fix subversion/svn child exit signal segmentation fault error in Apache

When running subversion with apache, how good config you’d done, you may still found that your svn repos are not accessible through http:// or https:// and most probably you’ll find this error in your apache error logs:

child pid 6485 exit signal Segmentation fault (11)

In my CentOS 5.2 box with httpd 2.2.3 and subversion 1.6.1, this error caused enough headache for me and claimed long time before I was able to find out the root cause. The problem is caused by collision of apr and apu utilities which are installed by both subversion and Apache. These packages are required to access svn via apache. The subversion-deps package contains apr and apr-util version 0.9.x, but apache 2.2.x uses apr and apr-util 1.2.x, and subversion and apache must be using the same version of apr and apr-util, else things can result in above error.

Install html2ps/pdf library to create PDF files using php

Generating PDF or postscript files on the fly with php is quite easy using a library called html2ps/pdf. Following are the steps which I took to install it on a fedora 7 server running php 5.x

As per the documentation, html2ps/pdf requires either Ghostscript or PDFLIB libraries for fast pdf generation. You can also use the inbuilt FPdf routines but that’s much slower. PDFLIB is non-free library which may requires you to have a license to use, therefore, I opted for GhostScript here.

Step 1. Check whether ghostscript is already installed or not:

Get Adobe Flash playerPlugin by wpburn.com wordpress themes