Ooopsss… Google Dit It Again

gdesktop.pngGoogle has released its latest release of Google Desktop. Google Desktop 2, now includes a sidebar suitable for nerds like me.

Features of Google Desktop 2 includes: 

Email: This panel will display all of your latest emails in your gmail inbox. If you think nobody will look over your shoulder or you have nothing to hide, this will be great to display on your panel.

Google Talk: Google Talk is integrated directly inside the sidebar, so it won’t mess your desktop. Google Talk is one of the latest addition to the Google family. 

News: This panel collects and display feeds, most probably from Google News. Google News syndicates and retrieves news from all over the world.

Photos: I don’t know how this work, but the panel displays randomly photos that it can find from your hard drive. It displays the photos in slideshow style. Cool.

Quick View: This panel displays the latest (or most frequent) items you have opened. This is an easy tool for people withmemory loss problem. 😉

Scratch Pad: Another tool, which conveniently waits for you to scratch something on it. Think of it as a notepad, only that it sits on your screen. The contents then can be saved somewhere.

Stocks: This panel displays selected stock quotes and information of the symbols you select. Useful for investors. Not in realtime, though.

Weather: A very useful tool, especially for those in the USA. I’ll just keep it hidden until Google covers the area where I live.

Web Clips: RSS reader. My Thunderbird will thank Google for this. Now I have all my favorite feeds displayed on my desktop, waiting for me to click on them. There’s a nice feature where when you click on a title, it’ll display the summary first and it is up to you whether you want to see the full story.

What’s Hot: This panel displays Hot News from the Internet. So far I see a lot of entertainment news, and since I am not very interested in entertainment, I keep it hidden.

That’s it so far.

Google Desktop 2 also uses a new indexing method, but I can’t see much different in terms of disk usage. Overall, I think Google has improved the performance a little.

I think that’s enough for now. Have a try yourself, and let me know whether you like it.



Jabberd2 initscript for Debian

I was compiling and installing jabberd2 on a server at office and everything went great except for one thing: no initscript provided. I was baffled to find out that the great software didn’t have any initscript. So I wrote one:

#! /bin/sh
# Script to start/stop jabberd2 on a Debian
# by Ady Romantika, 23 August 2005
# Uncomment if needs debugging
# PID files base locations
case "$1" in
   	echo -n "Starting $DESC: "
   	su $JABBERUSER -c "/usr/local/bin/jabberd $DEBUG &"
	echo "$NAME."
      echo -n "Stopping $DESC: "
      if [ -e $PIDBASE/ ];
        su $JABBERUSER -c "kill -9 `cat $PIDBASE/`"
	echo "$NAME."
        echo "jabberd2 is not started."
      # Delete the PID files as jabberd does not do this automatically
      rm -rf $PIDBASE/ \
               $PIDBASE/ \
               $PIDBASE/ \
               $PIDBASE/ \
      $0 stop
      sleep 3
      $0 start
      echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
      exit 1
exit 0

The script might work with other distributions with minor modifications. 🙂 

jabberd is one of the many server softwares for the popular jabber open instant messaging protocol. If you need logging for your jabber server, you might be interested in Bandersnatch provided by Funky Penguin.

Update: 31 August 2005

There’s an rc script provided for jabberd2, but it is written with Fedora in mind. The script is more complicated, and probably is better. I didn’t have the time to check it out yet. You can download it at 

Where Did My Disk Space Go?

Although I am a Linux user, I do enjoy from time to time strolling around Windows. Especially since my Windows XP price was included with my notebook 😉

For the last few weeks I have been puzzled why my free space on drive C: keep decreasing eventhough I have not installed anything. Yeah I know, temp files, cache, etc. are in drive C: but the decrease was big!

After ransacking my notebook for a while, I finally found the culprit. It’s Google Desktop data!!! Anyway it’s OK I still love it, just that I have to free up some space. Google Desktop is a great utility for you to find stuff hidden away inside your computer. Oh well. Prove? Here you are:


As fragmentation is becoming worst and worst, I later tried to format a partition, (actually I was saving up this partition for Solaris 10, just didn’t have the time to install it) and I was so lazy that I decided to use Windows’ Disk Manager. The next day back from work I was planning to uninstall and install software to the newly formatted partition but… my Linux partitions were all corrupted (and grub wouldn’t boot)! At that moment I immediately regretted my decision of using Window’s Disk Manager. Oh anyway lucky that my /home partition is still safe, and a knoppix CD lying around.

I booted up knoppix and used qtparted to reformat the corrupted drive. All is safe. However this has brought into attention this matters, which I have discussed in my previous posts here: Debian unstable immediately install Xorg so no need to manually update packages to make use of dri anymore! Cool.

So now I have my notebook all healthy again. As for Google Desktop, it’s still there, serving me when I am using my Windows XP 😀 

How To Ask Smart Questions

As an old player in the Open Source Community (PHP and Linux in particular), lots of people tend to ask me a lot of questions. Some are worthy enough to be answered, but some questions are pure crap and irritating.

While looking for the fetchmail official site, I stumbed upon this HOWTO created by Eric Raymond. It’s called How To Ask Smart Questions. This may sound not important to certain people, but believe me if you want your questions to be answered, read the article. It’ll help you and the person you are asking.

As I have also been asked on how to hack certain things, you might also be interested in another article How To Become A Hacker.

Also, I have seen a lot of people confused on the difference of the word hacker and cracker. Read this and you’ll find out the difference.

Cooler Disk

My journey to Low Yat plaza last weekend (or was it the weekend before that?) was worth it. I installed new disk brackets and fans to cool off my system and the temp actually dropped quite significantly:

Disk 1
Disk 2

Cooler disks! 🙂

*The fluctuation you see is because I can’t keep my air conditioner turned on 24 hours a day 🙁

Radeon IGP on HP nx9010

I just spent a few hours trying to find out what the problem is with my Debian. I just replaced Fedora Core 3 to Debian unstable on my notebook. It’s a HP nx9010, equipped with Radeon IGP:

0000:01:05.0 VGA compatible controller: ATI Technologies Inc Radeon IGP 340M

There was no video from noatun and xine. After some googling around I found that my DRI is not working. Great.

However, all is fine now. I found this great site

Basically what I have to do was add these to my /etc/apt/source.list:

deb ./
deb-src ./

and do this:

# apt-get -u install xlibmesa-gl1-dri-trunk

This fixes everything, even the annoying flickers on my screen on high resolutions. Now I can enjoy 1280×1024 on external monitor! 😀

Good job John Lightsey, thanks a bunch!

p/s – Somehow I find that Debian runs faster on my laptop compared to Fedora. 😐

Note: This effectively changes your X server to Xorg instead of XFree86.


For the last few months, our office building has been doing a lot of generator testing and sometimes these tests went out of schedule. We began to worry about the office servers, as constant power failures may cause data corruptions although we use reiserfs for all of the disks.

My colleague and I look for good UPSes, and found out that APC’s UPSes work very well for Linux machines. After some price and Linux research, we decided to buy some APC Back-UPS CS 650. These models are not intended to be used by high-end server products but since we only have some clone machines as servers, a couple of HP Proliant DL140, and a DELL PowerEdge 1425SC there shouldn’t be much problem.

We bought 7 units of them from Startec in Low Yat, for RM320 each. We took a few hours last Saturday to install them and rearrange our servers. 4 of them are placed inside the server rack:

4 UPSes - 3 x HP Proliant DL140, 1 x DELL PowerEdge 1425SC

On the server side, we install Debian’s package apcupsd, and on the monitoring server (with Apache) we installed apcupsd-cgi. To make it work, /etc/apcupsd/apcupsd.conf are edited with the following lines modified:


Our UPS came with USB cables, different cables requires different configuration line for CABLETYPE. Don’t worry the explanations in the configuration files are very good.

Next, a couple of tests were done with apcupsd to make sure the servers behave well in case of power failures. When we are satisfied, the monitoring part is easy enough – add the monitored hosts inside /etc/apcupsd/hosts.conf. Here’s a snapshot of the monitoring page:


Local APT Repository: Part 2

Final Steps on Server

What we did in part 1 was to sync the repository. Now we need to make sure that our APT Server can serve the files for use by client machines.

For this purpose, you can either choose to export the filesystem using NFS, or using Samba. I chose NFS. In the server’s /etc/exports:

THE_PATH_WHERE_YOU_SAVED (ro,all_squash,anonuid=65534,anongid=65534)

Please make sure that you have nfs-user-server installed, and run /etc/init.d/nfs-user-server restart

Mounting on Client Machines

Now, we need to configure the machines that are going to use this repository. On the machine’s /etc/fstab put in this line:

NAME_OR_IP_OF_APTSERVER:THE_PATH_WHERE_YOU_SAVED /mnt/debian-apt nfs defaults 0 0

Don’t forget to:

# mkdir /mnt/debian-apt

To mount it:

# mount /mnt/debian-apt

Next, we need to reconfigure your APT by editing /etc/apt/sources.list:

deb file:/mnt/debian-apt/ stable main contrib non-free

*If you like, you can also put in lines for your apt to use the testing or unstable dists.

Updating APT on Client Machines

To test:

# apt-get update

Don’t worry if not much info is displayed. The next time you want to upgrade or install packages, you should see that it needs to download 0B of packages, looks something like this:

2 upgraded, 6 newly installed, 0 to remove and 467 not upgraded.
Need to get 0B/2399kB of archives.

***Don’t forget to change the variables written using UPPERCASE above to the values corresponding to your installations!

Good luck! 😉

New Monitor

Although I rarely go for used products, this time I can’t let go of the deal. I just acquired a 19″ monitor – Samsung SyncMaster 955DF from a colleague leaving for the Philippines. How much? RM150.00

This model is not the best out there, but it’s really worth the price. 🙂

Viewsonic 91f+

I bought a Viewsonic 91f+ 19″ monitor for my office a few months ago for almost RM1,000.00. Today we found it dead! Nothing is displayed on the screen except for a bright line in the middle.

Don’t buy this monitor!!! 🙁

Local APT Repository: Part 1

If you have a bunch of Debian machines to be taken care of, you must have been using APT a lot. APT is incredible, but if you use it to update multiple machines, you’ll be bored to death waiting each and individual machine to download packages. What if I tell you there’s a way we can download once, use multiple times? That’d be great, wouldn’t it?


  • A machine with at least 20GB disk space (to be the repository server) –
  • rsync (to sync with the repository)
  • Port 873 opened in the firewall (for rsync to access Debian mirrors)

Preparing the server

First, you need to download the script

Change the following variables in the script:

  • TO : put in the path where you want to save your repository
  • RSYNC_HOST : put the mirror closest to you (
  • EXCLUDE : put in the architectures that are useless for you. In my case, I exclude all architecture except for i386

Make the directory you specified in TO variable above.

Next, test your script:

# sh anonftpsync

If you can see the files being downloaded in the file rsync.log generated by the script, it is working. Go have a coffee or a nap, as the first sync takes a lot of time 🙂

If you have verified that all files have been downloaded properly, save the script to /usr/local/sbin/anonftpsync

Don’t forget to:

# chmod 755 /usr/local/sbin/anonftpsync

Automating download

This is just the matter of asking cron to do the job for you, say at 6.30am everyday:

30 6 * * *              /usr/local/sbin/anonftpsync

You are done! Now your ‘APT Server’ will sync itself with the chosen mirror everyday. In the next part of this article we’ll configure a machine to utilize this server.

Linksys WRT54G

I’ve just upgraded my WRT54G firmware to v3.03.6 HyperWRT_2.1b1 created by Timothy Jans. Previously, with the default firmware provided by Linksys (v3.03.6) the router frequently hangs. Now, it is rock stable.

Read more about this firmware at

As I search for the solution of the problem, I also stumbled upon a great site, dedicated to the particular router:

Kudos to Timothy Jans!