Skip to main content


Showing posts from January, 2008

If Operating Systems Ran The Airlines

An old LG (#45) post, never fails to amuse me after so many yearsUNIX Airways
Everyone brings one piece of the plane along when they come to the airport. They all go out on the runway and put the plane together piece by piece, arguing non-stop about what kind of plane they are supposed to be building.Air DOS
Everybody pushes the airplane until it glides, then they jump on and let the plane coast until it hits the ground again. Then they push again, jump on again, and so on ...Mac Airlines
All the stewards, captains, baggage handlers, and ticket agents look and act exactly the same. Every time you ask questions about details, you are gently but firmly told that you don't need to know, don't want to know, and everything will be done for you without your ever having to know, so just shut up.Windows Air
The terminal is pretty and colorful, with friendly stewards, easy baggage check and boarding, and a smooth take-off. After about 10 minutes in the air, the plane explodes with…

Listening to Podcasts on GNU/Linux Debian

Reading Tony’s Picking Off Podcasts in Linux article was quite enlightening.Though he mentions couple of programs like podcatcher and bashpodder , I list only those available by default on GNU Debian (Sid). I hope listening to podcasts would a nice experince free from technical mambo-jumbo.gpodder – A GTK+ Media aggregator and Podcast catchergtkpod – manage songs and playlists on an Apple iPodhpodder – Tool to scan and download podcasts (podcatcher)kitty – a Qt/KDE based RSS podcast and video aggregatorpodget – Podcast aggregrator/downloader optimized for cronpodracer – podcast aggregator/downloaderxmms2-plugin-rss- XMMS2 – RSS podcast pluginmiro -GTK+ based RSS video aggregator Miro (previously known as Democracy Player) is a platform for Internet television and video.For those with technical bend of mind, building a podcast grabber is not very difficult if you know bit of programming, I guess with command line tools like xmlstarlet you can grab and process XML/RSS files ri…

Volunteer with Free Software Foundation of India (FSF-I)

The FSF-I website is the right place to get the complete information on its latest activities and read the FSF-I charter to know more about the foundation . It is however the FSF-Friends mailing-list where the most the interaction and information exchange takes place. If you need to stay informed about FSF-I and other related activities in India then this is the list to join. To be volunteer you can register as FSF India Volunteer and get listed in the FSF India Volunteer Directory . But its not a must, if you can spare a little of your time and do any of the tasks then just shoot a email to the admins . There is a list of various tasks that you can help out with on the foundations website. The the FSF-Friends mailing-list isn’t the only list, there are many others see if anyone suit your interests. Perhaps you can also join a regional mailing-list thats near your city and meet other free software advocates and volunteers. DelhiPuneAndhra PradeshTamil NaduBangaloreKeralaWell,…

Raw Control Characters In Less pager

Less is my default terminal pager program. On GNU Debian Linux pager is just a symbolic link to your less or one of other available pager progams like more , most , lv etc..( run update-alternatives —list pager to find out alternative pager programs available on your computer). Lately some funny characters started showing up in my pager . $ ls /tmp/Foo/ | pager ESC[0mESC[0mFooBarESC[0m
ESC[mOops, That looks like the ANSI Escape Sequences commonly used for making a shell colourful, but our pager program less seems to have some trouble with it. Let’s try to correct this but using -R option which toggles this behaviour. $ ls /tmp/Foo/ | pager -R
Master-fooOk, that seems to fix it. Now let’s set it into our shell environment.You set the same using lesskey also. LESS=”-R”; export LESSPlease note that using -r option may cause display problems , that’s why I use -R . Wolfgang Friebel notes in Displaying more with less that ..Syntax highlighting is only…

Free Website Uptime Monitoring Service

When it comes to hosting my websites I like to spread them over multiple web hosting companies. It does improve my odds of all the sites going down at the same time, but tracking their uptime becomes an issue. There are website uptime monitoring services one too many, most of them have a catch either they want you to place images with backlinks to their website or something more silly. A tried and tested free uptime monitoring service I use is , originally written in TCL its now run by OpenACS . To track a website just add a URL to text file or HTML page on your website which contains a single word “success” in it. And choose whether you want to get email when this website down or just check periodically every few hours. Compared to other website uptime monitoring services this one does only one thing and does it well too.

Upgrade problems for sysvinit (2.86.ds1-16 | 2.86.ds1-19)

Update: Post out-of-date …. don’t flame meThose of you who followed the earlier the fix for sysvinit (2.86.ds1-16) upgrade problem given below should read the follow-up comments that were aired on both debian-devel and debian-user.— Petter Reinholdtsen Sat, 9 Sep 2006 20:12:47 +0200
In version 2.86.ds1-16 of the sysv-rc package released 2006-09-06, the update-rc.d script was broken. When used to to update symlinks it would remove all symlinks for a init.d script if such symlinks existed, and add them if they were missing. This broke all packages being upgraded after the new version was installed, as their init.d scripts will no longer be executed. This problem was fixed in version 2.86.ds1-18, but the broken packages will stay broken until their postinst scripts are executed again.Those with packages being broken from this bug can fix it by using ‘apt-get —reinstall install package’ on the affected packages. A quick way out is to reinstall all the packages with scripts in …

RFC Humour: Really Funny Collection

The Requests for Comments (RFCs) are a treasure trove of information on everything related to the Internet. Internet Engineering Task Force (IETF) , an open forum oversees the development and standardization of the technical aspects of the Internet.Any new technical ideas are first issued as Drafts, after much discussion, arguments and IETF meetings these are released as RFCs. The purpose of the RFCs is not only standardization, but they often document and provide an in-depth analysis of common workings of existing technologies.Though RFCs aren’t meant to be handy guides for learning for lay computer users,but they do offer crisp and authoritative information. If you think that RFCs are just rambling of technical mambo-jumbo that’s not meant for lowly mortals, think again. Don’t be surprised if you come across Hyper Text Coffee Pot Control Protocol or The Infinite Monkey Protocol Suite and widely known Carrier Pigeon Internet Protocol which was implemented by Bergen Linux User …

OI! Move over, The IT Crowd is here

Alright, if you haven’t ever heard of User Friendly stop reading right here. This is London and in the bowels of Reynholm Industries lie another world. Yes, my dear listeners we are now on the holy ground of the nerds, its the IT department. Its here the social inept, sexually confused step onto the righteous path of enlightenment. (Its however another matter than the light of day never reaches into these dingy basement offices) This is world of The IT CrowdFor my brethren in gnu/Linux world, don’t miss out the show’s opening title sequence animation depicting a gnu/Linux kernel panicking during a Fedora Core 4 installation.(easily mistaken for a Windows blue screen of death, amen!). Hey you need to watch real close to find a lot geek lore on the sets, old hardware, t-shirts you would kill for and a lot more listed here on the Wikipedia page of show

Logging PHPnuke Database Connection Failures

Find the db/db.php file in your PHPnuke installation and insert the error_log line.if(!$db->db_connect_id) { die(”<br><br><center><img src=images/logo.gif><br><br><b>There seems to be a problem with the $dbtype server, sorry for the inconvenience.<br><br>We should be back shortly.</center></b>”);
}Now the last lines of the db/db.php file should look like this. The error_log simply logs the errors into /home/foo-joe/logs/db_log, you should change this to reflect your directory structure.if(!$db->db_connect_id) {
error_log(”[”.date(“D M d Y h:iA”).”] Failed to serve request for page ‘”. $_SERVER[‘REQUEST_URI’].”’ from ‘”.$_SERVER[‘REMOTE_ADDR’].”’ using browser ‘”. $_SERVER[‘HTTP_USER_AGENT’].”’\n”,3,”/home/foo-joe/logs/db_log”); die(”“<br><br><center><img src=images/logo.gif><br><br><b>There seems to be a problem with the $dbtype server, sorry for the inconveni…

What works in Yahoo! Groups spam control ?

Having a healthy mailing-list without spam is difficult but not impossible. If you have much time on your hands you can set about approving every member and message that shows up on your list. ;)The mailing-list or a group (as Yahoo! calls it) that I mention in this post is hosted on Yahoo! groups service. The list is set as unmoderated (all messages get posted directly) and has open membership policy (anyone can join and leave the group as they please). For spam control the Yahoo! SpamGuard filters are enabled but the spammers did sneak in. Since I abhor any kind of message moderation on this list and didn’t want the moderators spend all their time approving membership requests (which were quite a lot), I looked at other strategies for eliminating spam. I observed that most of the spam we received is from newly joined members, so it seemed to be a good idea to moderator the posts of newly joined members only. This create a sort of sandbox where all new members should spend time un…

Handling CHM files in GNU/Debian Linux

In a perfect world all the OCR files would come in djVu format but world isn’t perfect, so this morning I had read this 300 page CHM compiled HTML Help (insert joke here)file and for no apparent reason my CHM viewer won’t display the file beyond page 50. Bummer!.Don't get me wrong but there some great programs to handle CHM files on gnu/Linux OS. And I’ll mention some of them here in this post. A more detailed specifications of CHM format. is available if you are interested. Graphical CHM ViewersWell, The brief list doesn’t attempt to be complete but it gives you an idea of range of tools available to a gnu/Linux user. KchmxCHMGnoCHMCHMseeArchmageDisplayCHM (contributed by Rajasekaran)CHM Firefox addon (contributed by Rajasekaran)(if I missed any, do leave a comment with a note)View a CHM file on a Web BrowserIf you like to read using your favorite web browsers instead of a Graphical X based CHM viewer, then there is chm_http in libchm-dev package from the CHMLib project . Also…

How to Block Ads With Adzap

Cameron Simpson’s Adzap ( is a Perl program written to match and replaces those annoying web ads.It uses the redirector option of Squid proxy-caching server (, a fast and efficient caching server.How does Adzap work?Squid proxy server is designed to cache web content as clients requests,it checks for presence of local copy of request, if found servers it directly.This not only saves bandwidth usage but accelerates web speed.Squid redirects requested URL to adzapper program which tries to identify ads,unrequested pop-up widows and other unsolicited content using regular expressions.Most of content such as graphics,flash animations,client-side scripts and executables are matched and quietly replaced.Adzap returns sanitized request back to squid which servers it.This increases the surfing speeds considerably even if you are on boardband connection.Most commercial web advertisers track user preferences and surfing habits.Adzap pro…

Multimedia/Internet Keyboards in GNU/Linux

As the resident Gnu/Linux guru, I sometimes help new users making transition from other OS’s.Over the years I’d ask anyone who installed Gnu/Linux about what hardware devices didn’t work for them,most often it is Multimedia/Internet keyboards. In this article, we’ll configure one such keyboard using Hotkeys.Anthony Wong’s Hotkeys program is written to handle all those special keys provided by the multimedia/Internet keyboards and launch programs associated with them.Though there are numerous ways to configure these keyboards in Gnu/Linux,Hotkeys is easier to configure and its osd (on-screen display) is very simillar to those available on other OS’s. You can visit Hotkeys site to download the latest version of the program as tarball or as a debian package.The installation on Debian machine can be done using the apt-get.$ apt-get install hotkeysConfiguration Hotkeys starts a daemon process,usually started with xinit process,it uses a global configuration file /etc/hotkeys.conf and use…

Website file Uploads With lftp

Keeping your website updated is tedious job,especially when you have lot of files,which you edit quite often.And having to do the such work over ftp makes it worse. In this article we’ll use a command line based file transfer program lftp( written by Alexander .V. Lukyanov to do website file uploads.Though there are many other ftp clients,lftp is simpler to use,feature rich,can upload several files in parallel and it comes bundled up with most Gnu/Linux distributions. lftp is a powerful tool, its built-in mirror facility is suitable for keeping your website updated and secure by replicating permissions on the uploaded files.It checks for modified files by checking the file sizes and file modification times. Using lftp on Command LineNow you have a local directory on your computer where you keep all your website files(/home/joe/site_files).Let upload these files to your remote webserver directory using lftp on command line.First lets connect to your hosting…

GNU GPL version 3 released ( GPLv3 )

Fresh off the press, FSF has announced the release of GNUGPL version 3 released ( GPLv3 ). Here is full transcript of the announcement.On Friday, June 29, at 12 noon (EDT), the Free Software Foundation will officially release the GNUGPL version 3. Please join us in celebration as we bring to a close eighteen months of public outreach and comment, in revision of the world’s most popular free software license.Beyond the creation of an improved license, the process of drafting
version 3 has helped highlight vital issues for the community of free
software users. This is a moment to thank the thousands who participated by commenting on the license, and those that represented stakeholders through the GPLv3 committee process.Now with the release of GPLv3, we will see new defenses extended to free software. These defenses will continue the long history of fighting all efforts to make free software proprietary.Please join us as we stream live footage of Richard Stallman announcing GPLv3 from…

Babelfish Free Proxy

Way back in 2005 a google hack was published which explained how to use google translation service as a proxy to access restricted web sites.Though its was a good hack, it lacked the flexibility I sort. The Google Transalation page uses Javascript which hampers the hacks use in scripts and line browsers like elinks,links,lynx etc. However I found that the AltaVista’s Babelfish translation service was a good alternative. Now to use this hack,just add the URL of the restricted page or website you want to access at end of the babelfish url given below. Here we are using as an example. Paste it in the address bar of your browser if you are using a graphical browser like Mozilla, Firefox, IE, Safari or Opera.
en_en&url=www.wikileaks.orgThe elinks users can build a smart url using this hack, For more information read Smart URL’s in Elinks .

Yahoo! India maps now offers Geocoding service

This mornings paper had Anand Parthasarathy covering the launch of Yahoo! India Maps and Yahoo! India Our City service, it offers map data of Indian cities, as well as Geocoding service for some of our cities (Ahmedabad, Bangalore, Bhopal, Bubhaneswar,Chandigarh, Chennai, Coimbatore, Delhi, Hyderabad, Jaipur, Kochi, Kolkata, Lucknow, Madurai, Mangalore, Mumbai, Mysore, Pune, Shimla, Thiruvananthapuram). Interestingly, Anand Parthasarathy lauds this achievement of India-based engineers instead of observing that offering such a service make a good business sense, Just eight months after David Filo challenged his India-based engineers to come up with compelling Web applications for the world, the co-founder of the Web’s biggest portal, Yahoo, is back here to announce that two of them have been converted into working solutions. On Wednesday he lanuched Our City , a new Net resource which aggregates city specific information including, news, travel and tourism, weather, local bus…

BitTorrent "INFO : duplicate connection (id collision) " log messages

BitTorrent 4.20.x (and later) now logs all its messages and errors to its logs1. Here is one log message that mystified me.[4.20.4 2006-09-01 04:10:39] INFO : duplicate connection (id collision)
[4.20.4 2006-09-01 04:10:48] INFO : duplicate connection (id collision)
[4.20.4 2006-09-01 04:10:52] INFO : duplicate connection (id collision)
[4.20.4 2006-09-01 04:11:03] INFO : duplicate connection (id BitTorrrent Support provides a clear answer.This message is harmless and can be ignored. It means that a request for data was sent to a peer you are already connected to. This is most common when there are few peers in the swarm for a given torrent. It does not affect your down or upload speed in any way.1 Bittorrents logs file under UNIX, GNU/Linux operating systems are found under $HOME/.bittorrent/bittorrent-{cosole,curses}.log

Its party time for Debian camp

Debian Etch is now released. Its party time for Debian camp, the nearest party spot here in India seems to be BMS College in Bangalore. Party on and do remember to avoid spelling and grammar mistakes in your package(s) descriptions fellows.Not all of us are native English langauge speakers but as Debian Developer’s Referencerecommends in its 6 Best Packaging Practices section of the manual, we can remedy this with a little effort. Be careful to avoid spelling and grammar mistakes. Ensure that you spell-check it. Both ispell and aspell have special modes for checking debian/control files:
ispell -d american -g debian/control
aspell -d en -D -c debian/controlAs usual I expect magnanimous Debian users would lend a hand by reporting these bugs.

libTorrent / rTorrent 0.7.0 debian packages available

UPDATE: Never version of rTorrent made into Debian (Sid) since this entry was first posted.Rakshasa’s libTorrent and rTorrent Unstable Release (0.7.0) Debian packages are now availableThe Debian Sid/unstable rtorrent package is still stable release (0.6.4.x). A wishlist was posted and you can use this repo until the main debian packages are upgraded.You can add this line to your sources.list and apt-get the packages.
deb sid mainOr grab the packages directly from adding of public keys for this repo however didn’t work. Perhaps am missing something here. gpg --keyserver --recv 0xCACAB118 && gpg --export 0xCACAB118 | sudo apt-key add - [OR]wget sudo apt-key add pubkey-ghostbar.gpg

Smart URL 's in Elinks

If you have Elinks installed then it already has a bunch of smart URL’s enabled .The table below lists those in Debian’s elinks package configuration file. The Elinks Manual explains how it works and how to build your own.Here a example, lets search for what acronym “ALSA” means with elinks.Press g in elinks and type a: ALSA when prompted with Enter URL. The a: is the keyword and ALSA (replaced in place of %s ) is search string, elinks smart rewrite expands it to and submits it , You will be directed to the search results at Smart URL’s Reference:a*/%sbb ht…

Error messages on the console screen

Debian console getting flooded with error messages and verbose warnings can be quite trying for anyone. Previous versions Debian Reference (Section 8.6.8) used to provided a solution viz… Running “dmesg -n X” (where X is the error levels [1..7) to quiet on-screen error messages until next reboot. Or set KLOGD=”-c 3” in etc/init.d/klogd script and run /etc/init.d/klogd restart for more lasting effect.David Clarke provides the new way of handling console errors nicely.Add a single line is your /etc/sysctl.conf and upon every reboot the given values are set to the linux kernel printk() .kernel.printk = 3 4 1 7 The four values we are setting in /proc/sys/kernel/printk stand for:console_loglevel – messages with a priority higher than this will be printed to the consoledefault_message_loglevel – messages without an explicit priority will be printed with this priorityminimum_console_loglevel – minimum (highest) value to which console_loglevel can be setdefault_console_loglevel – defau…

Download High Quality Movie Trailers

XML parsing is often left to programming languages, not for command line use or in shell scripts. Here I used XMLStarlet Command Line XML Toolkit a wonderful set of tools that brings power of handling XML to commandline and Wget to download the content. The xmlstarlet tool seeks the URL’s in XML feed and passes it to wget./usr/bin/wget -c `/usr/bin/xmlstarlet sel --net -D -T -t -m "/records/movieinfo/preview" -v "large" -o " "` These two programs are ported and available for other operating systems. The wget “-c” (continue) is optional. You can use any other downloader instead of wget. I suggest curl

GNU/Debian Linux don't power off after shutdown

To avoid any problems with your filesystems always shutdown your debian box the neat way. After a recent upgrade my computer stopped powering off after shutdown.Thanks to the Rainer Dorsch for pointing me in the right direction. Step One1. First append this line to your /boot/grub/menu.lst if you are using GRUB or lilo.conf if you are using LILO.append="acpi=off apm=power_off"Step Two2. Add this line to your /etc/modulesapm power_off=1After a reboot, next time you issue the shutdown command your computer should power off automatically.

What is Video-Hams

Robert Schifreen is the author of Defeating the Hacker . He recently wrote about the The Age of the Video Ham . I posed few questions about the video-hams to him. Who coined the word “Video-hams”?Robert: As far as I’m aware, I coined the term in August 2006. Other people have written about the topic before, and I know that one person has used the term “philming” to describe it.How does one define “Video-hamming”?Robert: I define a video ham as someone who seaches the internet for IP-based security surveillance cameras which have not been secured, in order that they can watch the live footage.How did he stumbled upon the problem ? Robert Schifreen writes about it in a comment on his blog .Robert: My interest in the subject was sparked a few weeks ago, when I was looking to buy some IP cameras for a client and decided to search the manufacturers’ websites for sample images so I could judge their quality. I soon realised that most of the manufacturers didn’t make such things available, …

Understanding The Free Software Philosophy

Free Software may not be as visible in the media as its younger,
breakaway sibling, `Open Source’. You seldom hear of GNU/Linux, compared to the frequency with which you read of the term `Linux’. But,quietly, and mostly away from the glare of publicity, a small group of committed techies is slogging hard in India, to make a difference through skill and commitment. They are the Indian chapter of the Free Software Foundation. So, when it comes to fighting the patents threat that software faces in India, the Free Software Foundation-India (FSF-I) is there. Recently, this organisation put together an ambitious four-nation meet in Kerala,involving Venezuela, Brazil, Italy and India.Some of the techies in the group have achieved amazing feats, spurred on not just by their skills, but also by the ideology of Free Software.Knowing the `Free Software’ philosophy The first step towards acknowledging the Free Software Movement is to understand that `Free Software’ and `Open Source Software’ are…

The Indian Linux Community

Despite India having one of the largest numbers of Linux User
Groups in the world, we are yet to see a space for open source
software in the national IT policy.To communicate in just a few pages the contributions of the Indian open source community to the FLOSS movement is quite a daunting task. After all, how do you do justice or document the enormous efforts that are scattered across the country? Almost every nook and corner of India today has an Indian Linux User Group (ILUG), Swatantra Software Community, the Free Software Forum (FSF), or a GNU/Linux User Group—just to name a few. These groups have done some major work on the the open source community in two major ways: disseminating developer education through freely accessible handbooks covering Indian language computing, and by writing open source software tools for real-world Indian language computing needs.From the east comes the Indo-Bangladesh localisation project,
AnkurBangla, an initiative to put Bengali on the Linux …