Insanely Awesome Web Interface for Your Git Repos

Almost 80-90 people visit How To: Install and Configure GitWeb everyday in search of setting up a web interface for their git repositories. Though gitweb is nice, it’s a bit painful to setup and the web interface is not that appealing. The other day I received this email from Klaus Silveira

Hello Kulbir,
I saw your article about installing Gitweb and i decided to send this shameless self-promotion. Maybe you could try my open-source project, GitList

I’m looking for beta testers and supporters. FLOSS. :)

So, I thought I’ll just give it a try. Today, I got it working and was blown away by the amazing interface! It’s almost like a super simplified version of GitHub. I was so impressed that I immediately setup a demo website at for others to look at and fall in love :-)Another good thing about GitList is that it’s very simple to setup. Below is a step by step process to install and configure GitList to expose your public Git repositories to the internet.

What You Need?

You need the following packages before you can setup GitList.

Installing Required Packages

Most modern operating systems have the above mentioned packages installed by default. Even if you don’t have them already, you can use your OS package manager to install them quickly. To install on Fedora/RedHat/CentOS using yum, use the following command

[ ~]$ yum install php git httpd

For Ubuntu/Debian, use the following command

[ ~]$ apt-get install php git apache2


For setting up GitList, I am assuming the following directory paths and other variables.

  • Path to public Git repositories : /home/saini/code/public/
  • Path to Apache document root : /var/www/html/
  • Path to Git executable : /usr/bin/git (Use “which git” to find out for your OS)
  • Web URL for browsing git repos :

Installing and Configuring GitList

Follow the following simple steps to install and configure GitList.

Step 1 : Clone GitList repository from GitHub to /var/www/html/gitlist/

[ ~]$ cd /var/www/html/
[ html]$ git clone git:// gitlist

Step 2 : Create cache directory and make it globally writable

[ ~]$ cd gitlist
[ gitlist]$ mkdir cache
[ gitlist]$ chmod 777 cache

Step 3 : Configure GitList using config.ini

Open the config.ini (in gitlist directory) and set the option properly. Refer the sample shown below.

client = '/usr/bin/git' ; Your git executable path
repositories = '/home/saini/code/public/' ; Path to your repositories (with ending slash)
baseurl = '' ; Base URL of the application (without ending slash)

Step 4 : Make sure your Apache can read your .htaccess file in gitlist directory

GitList utilizes Apache’s mod_rewrite module to  provide nice URLs. Make sure your Apache is configured to read .htaccess from the gitlist directory. Open your Apache config file (generally located at /etc/httpd/conf/httpd.conf or /etc/apache2/ports.conf) and look for the following

<Directory "/var/www/html">

In this segment, make sure you have AllowOverride All as below.

<Directory "/var/www/html">
# Other lines omitted
AllowOverride All
# Other lines omitted

Step 5 : Reload or restart Apache daemon if needed

[ ~]$ apachctl -k restart (or apache2ctl -k restart for Ubuntu/Debian)

Step 6 : Get some sample repositories in your public repo directory

Get some sample repositories in your public repo directory from GitHub.

[ ~]$ cd /home/saini/code/public/
[ ~]$ git clone git://
[ ~]$ git clone git://
[ ~]$ git clone git://

That’s all! Now, go to to discover your public git repos via a cool web interface! Leave a comment if you face any issues.


My New Book on Squid Proxy Server (A Beginner’s Guide)

I have not blogged since a long time mainly because I was a bit busy authoring a book Squid Proxy Server 3.1: Beginner’s Guide for Packt Publications. The book is an introductory guide to Squid (especially the new features in Squid-3 series) covering both the basic aspects as well as the in dept details for advanced users. The book focuses on learning by doing and provides example scenarios for the concepts discussed throughout the book. Access control configuration, reverse proxying, interception proxying, authentication and other features have been discussed in details with examples.

Checkout the links below:


News: ATI Catalyst Drivers 10.2 Released. No Fedora 12 Support.

After almost a month, ATI has come up with a new version 10.2 of its Catalyst (fglrx) drivers. The drivers can be download from ATI Catalyst™ 10.2 Proprietary Linux x86 Display Driver Page. As AMD is famous for doing nothing but just incrementing versions of there software, even this version doesn’t support xorg-1.7.4. But if you still want to give it a try, you can download and try installing the driver. Otherwise mesa-experimental drivers are your friend. Checkout the post Fedora 12 and ATI Drivers and save yourself from frustration :)

And yes, lets wait for next version of ATI Drivers :)


News : ATI Catalyst Drivers 10.1 Released. Test them now!

After a long, really long wait, AMD has released the next version 10.1 of its ATI Catalyst display drivers (fglrx) for Linux. The drivers can be download from ATI Catalyst™ 10.1 Proprietary Linux x86 Display Driver Page. As previous version turned out to be a big turn off for Fedora community and AMD took a long time for releasing this, I hope they have fixed issues regarding new Xorg version. Fedora folks will really want this version to work, otherwise there will be *blood* 😀 You have got AMD graphics card? What are you waiting for? Download the drivers immediately and test the damn thing! And please let everyone know whether it works for you with details of your graphics card. You know where the howto for installation is ;) How To: Install ATI Catalyst (fglrx) Drivers.

I really hope that things turn out well and you don’t really get to this point. But if these drivers don’t work for you, proceed to the post Fedora 12 ATI Catalyst Drivers and checkout mesa-dri-drivers-experimental.

From the release notes for version 10.1,

Resolved Issues

  • [ATI CatalystTM Control Center] Display Manager Properties tab now properly shows a single mode instead of multiple modes when big desktop mode is enabled.
  • The operating system will no longer fail when switching between virtual desktops.
  • [RHEL 5.4 32-bit] [ATI CatalystTM Control Center] System now functions properly after selecting “Detect Displays” button and hot-plugging a HDMI display.
  • [Ubunut 9.10] X no longer fails after executing multiple Xserver generations with Xinerama enabled.
  • Hotplugging a HDMI monitor or toggling between LCD and HDMI no longer causes the system to stop responding.

Know Issues

  • [RHEL4-U8 32-bit] Corruption may be observed while starting Xserver on some ASICs.
  • Corruption may be observed after 90, 180 or 270 degree desktop rotation on some ASICs.
  • System may stop responding after switching to DC (battery) mode with CrossFireTM enabled and full-screen applications running.
  • System may become unresponsive after executing specific combinations of XRandR reflections and rotations.
  • The output log file may report the Engine Clock or Memory Clock values as 0 MHz on some systems.
  • [RHEL 5.4][ ATI CatalystTM Control Center] Applying customized TV modes might not work properly, pop up message requesting restart will not appear and customized format will not apply.
  • [Ubuntu 9.04 x86 64-bit] Some systems may become unresponsive during video playback with certain Dual Head configurations.
  • [ATI CatalystTM Control Center] Specific customized modes under the HDTV page may fail to apply on some systems.
  • [Ubuntu 9.04] With one DP monitor and one DVI monitor connected in clone mode, unplugging and re-plugging the DVI monitor may cause the system to deadlock.
  • Xserver may fail to launch after enabling CrossFireTM and restarting on some ASICs.
  • [ATI CatalystTM Control Center] Super Anti-Aliasing (16x) mode may not be available on some display adapters with CrossFireTM is enabled.
  • Display rotation may fail to apply from ATI CatalystTM Control Center with desktop effects enabled.
  • [RHEL] Enabling Xinerama may cause input devices (keyboard and mouse) to become inaccessible after restarting Xserver.
  • System may fail to return to console mode after enabling all adapters and exiting Xserver for multi GPU configuration on some ASICs.
  • ATI CatalystTM Control Center may report error when two displays of different maximum resolutions are set in clone mode.
  • [SUSE 11.1 64-bit] Enabling CrossFireTM might fail with some ASICs
  • Scaling setting changes may fail to retain after mode change, reboot or restarting Xserver.
  • [SUSE 11.2 x86] CrossFireTM might not be functional under specific configurations
  • [Ubuntu 9.10] CAL test “completemodulelist.txt” might not execute and throws segmentation fault.
  • [ATI CatalystTM Control Center] Some systems may intermittently stop responding when changing the scaling options.
  • [ATI CatalystTM Control Center] Applying “Size and Position” adjustments for Analog Monitors might not work properly.
  • [Ubuntu 9.04] Some video cards may stop video output signals when monitor has been powered off.
  • [ATI CatalystTM Control Center] Disabled display will become enabled after Xserver restart.
  • Flickering corruption might be visible while running OpenGL applications with CrossFireTM enabled on specific ASICs.

Tip: Multiproxy Switch : Easily use multiple proxies in Firefox

A lot of people (especially working people with mobile devices like notebook/netbooks) need to use different proxy servers at home and office. There are several Firefox extensions available to achieve the required functionality but IMHO Multiproxy Switch(Mozilla Addon Page) is the best because

  1. Its simple and easy to use. It does what it should. No fancy/extra terrestrial stuff. Just switch proxies :)
  2. Easy and Firefox like interface to specify different proxies. Many extensions add their own fancy interfaces for specifying proxies which eventually suck big time.
  3. I am a fan of this one. The No-Proxy list. I could never understand those regular expression based no-proxy lists in FoxyProxy. Multiproxy Switch has Firefox like No-Proxy list which rocks and understandable :)

If you happen to come across a better proxy switcher for Firefox, do let us know :)


News: Will ATI Catalyst Drivers 9.12 work with Fedora 12?

AMD has released the next version 9.12 of its ATI Catalyst display drivers for Linux. The drivers can be download from ATI Catalyst™ 9.12 Proprietary Linux x86 Display Driver Page. As of now, I haven’t tried the drivers on Fedora 12 because supposedly my SMPS is broken :( But since there were a whole lot of bug reports to AMD regarding xorg 1.7 and catalyst, they might have fixed it. Please try and let everyone know if these drivers work with Fedora 12. You know where the howto for installation is 😉 How To: Install ATI Catalyst (fglrx) Drivers.

Also, if these drivers doesn’t work, a lot of people are finding mesa-drivers-experimental a huge success over catalyst drivers. Don’t miss those experimental drivers. Checkout comments on Fedora 12 ATI Catalyst Drivers.

Anyway, let us know whatever works for you :)


Fedora 12 ATI Catalyst Drivers

I guess ATI graphics card owners are a bit unlucky! When Fedora 11 was released, we didn’t get the proprietary drivers from AMD for months and the older version didn’t work with default kernel at that time. When Fedora 12 was released, AMD released newer version of Drivers after a few hours. But this time, Xorg becomes a stumbling block and again the driver installation fails for a lot of people!

But Fedora 12 tries to make life a bit easier and may provide support for ATI cards. From Fedora 12 Announcement

Fedora 12 introduces experimental 3D support for AMD Radeon HD 2400 and later graphics cards. To try it out, install the mesa-dri-drivers-experimental package. On many cards, this support should allow desktop effects to be used.

What to do?

Step 1 : Try ATI Catalyst Drivers from AMD

Nobody, so far, has reported the successful installation of ATI Catalyst drivers on Fedora 12. But still if you want to give it a shot (because the uninstall is clean and doesn’t leave a trace of ATI drivers in your system), you can follow How To: Install ATI Catalyst (fglrx) Drivers. If it doesn’t work, just uninstall using the command given at the end of the post.

Step 2 : Try mesa-dri-drivers

Keep in mind that these are experimental drivers and may not work properly or may work partially.

Install the mesa-dri-drivers-experimental from Fedora repositories using Yum.

[root@fedora ~]# yum install mesa-dri-drivers-experimental

Reboot if the drivers are install successfully.

Let me know, if any of the above drivers work for you :)


News : ATI Catalyst Graphics Drivers 9.11 Released

Looks like AMD was waiting for Fedora 12 : Constantine release. AMD has released the next version 9.11 of ATI Catalyst Display Drivers. The drivers can be download from ATI Catalyst™ 9.9 Proprietary Linux x86 Display Driver Page. I have downloaded and tested them already on my machine with ATI Radeon HD 3200 (onboard) card with kernel This version is supposed to work with 2.6.30+ kernels as even 9.10 was working. So, if you have already installed Fedora 12, don’t waste time. Test the drivers and let us know :)

Note1 : Installation Process : How To: Install ATI Catalyst (fglrx) 9.8 Drivers on Fedora 11.
Note2 : Dual Display Configuration : How To: Configure Dual Display with ATI Radeon (fglrx).


News : Fedora 12 : Constantine Released [All you need to know]

Much awaited Fedora 12 : Constantine has been released and is available now! This post is more of a collection of things you need to know before you go all the way to download Fedora 12 and install or upgrade.


Q. What is Fedora?
A. The Fedora Project page describes it in a short and nice way!

Q. I want to know everything about Fedora 12. Where do I find it?
A. You are probably asking for Fedora 12 Release Notes.

Q. Will it work on my machine?
A. What do you have? A server/desktop/laptop/netbook/xo/some-alien-hardware! It’ll work if your machine satisfies the hardware requirements.

Q. I have been using Fedora since long. What are the new features in Fedora 12?
A. Please browse Fedora 12 : Constantine Feature List page.

Q. Ok. I am convinced. From where can I download Fedora 12?
A. Nice! Please visit Download Page for download options. Checkout torrents or select mirror from Fedora mirrors.

Q. No. I don’t want that regular DVD. Do you have something different to offer?
A. Yup! Spins community is doing a wonderful job! Chose one from KDE, LXDE, XFCE, BrOffice, FEL, Games and Edu spins.

Q. I have downloaded the Fedora ISO. How do I install it?
A. There are different ways in which you can install Fedora on your system.

  1. If you don’t have CD/DVD drive, you can follow How To: Install Fedora without CD or DVD.
  2. You can install Fedora using a USB drive. Checkout LiveUSB creator.
  3. You can follow the traditional way. Install using CD/DVD.

Q. I already have Fedora installed on my system. Should I upgrade or re-install?
A. Browse Upgrading Your Current System page and find out yourself.

Q. I think I want to upgrade my Fedora 11 system to Fedora 12. How do I do it using Yum?
A. Learn how to do it from the Yum Guru himself Yum upgrading to fedora 12 from fedora 11 or browse this page on Fedora Docs.

Q. I have ATI graphics card. How do I install Catalyst Display Drivers?
A. Follow How To: Install ATI Catalyst (fglrx) Drivers.

Q. Hey, I am stuck! I need some help. Where should I ask?
A. There are different ways like Real Time Support via IRC, mailing lists, forums etc. in which you can get help on topics related to Fedora. Browse Get Help page to checkout different methods.

Q. I like this Fedora thing. Can I help?
A. There are several ways in which you can help Fedora Project. The simplest way is to help others! Other methods can be ‘Write Documentation’, ‘Design for Fedora’, ‘Spread the Word’ or ‘Write Code’ :) Checkout Join Fedora page.


News : ATI Drivers 9.10 Working with 2.6.30+ Kernels

AMD released the next version 9.10 of its ATI Catalyst display drivers for Linux nearly a fortnight ago. The drivers can be download from ATI Catalyst™ 9.9 Proprietary Linux x86 Display Driver Page. The good thing about this version is that a lot of people are reporting that they can get it working on 2.6.30+ kernels. These drivers are lifesaver for people want to keep everything upto date. The corruption around cursor is still present while watching videos or with compiz enabled.

Note1 : The installation process is same as version 9.8 and can be access at How To: Install ATI Catalyst (fglrx) 9.8 Drivers on Fedora 11.
Note2 : If you want to configure dual display follow How To: Configure Dual Display with ATI Radeon (fglrx).