Outside it is a tired afternoon in late autumn, the trees now are bare and the overcast sky promises an evening snowfall. It is very still and will be dark soon. Inside the aroma of scratch irish stew and the acoustic brilliance of James Taylor fills the air of our dimly lit apartment. The time and ingredients used to create supper deserve a quality beverage accompaniment, while shopping I found this gem.
So far I have tried only the Ebulum and it is spectacular, I hope the others are comparable. I do not think I could have chosen a better match for supper.
The brewery’s website can be found here.
This app was so much fun to write. It allows you to call any contact in your database form the web and take notes on each call, I have been using it like a fiend. I know the video is horrible quality but it gives you the general idea. If you want a copy for yourself leave a request in the comments. I have sent a copy to Ward Mundy at Nerd Vittles and am awaiting his reply., let me know what you think!
After messing around with TFTP in my previous post I decided to investigate further into what I can do with TFTP and PXE. Browsing through the Debian mirror I found a tar called “netboot.tar.gz” so I decided to decompress it into my /tftpboot and see what happens.
I created a new diskless 2.6 vmware image and started it, up pops debian install bootsplash. I was so satisfied with the lack of configuration on my behalf that I started reading more documentation about creating menus for PXE booting. I came up with a fairly clean solution comprised of :
Ubuntu : Jaunty, Intrepid, Gutsy
CentOS : 5.2, 4.7
Mandriva : 2009
Fedora : 9
Debian : Lenny, Etch, Sid
All of the above worked perfectly so I am now researching iSCSI for diskless clients, unfortunately I am out of hard drives so I will attempt it on a USB thumb drive.
If you are interested in a copy of my /tftpboot and a quick tutorial how to set it up leave me a comment and I will post a link, otherwise I am guessing no one cares.
I have found some goodies online for those with the 79XX models, take a peek at the bottom of this post for ringtones, firmware and additional resources.

The guys at Cisco are good for one thing: making administration a nightmare. A friend left me his Cisco 7940 last year and I was finally able to track down a cheap power adapter for it ($17 CDN w/shipping from Hong Kong). So I get super excited to play with my now usable toy and it turns out the SIP IOS for this device does not include a web interface!
I have a some experience with TFTP from my Grandstream GXP2000 and Trixbox makes it easy with its endpoint manager however I prefer PiaF for faxing so I decided to configure TFTP on my NAS box. I tried a few different TFTP daemons including tftpd-hpa and tftpd via xinetd though the easiest to use was atftpd. The reason for this is (in Debian) you can just run dpkg-reconfigure atftpd and it gives you a nice “wizard” to configure the daemon, so no file editing.
Once I hunted down the latest IOS (no thanks to Cisco) I got the phone booted up with P0S3-08-8-00 and I was happy. Next was configuring an extension, this part sucked ass. I am not going to explain how to do it, if you can’t figure it out yourself just use the Trixbox Endpoint Manager, though I will give you a hint : disable nat for the extension in the FreePBX extension configuration.
On to the review
The phone is huge, nice big screen and the tilt is awesome. The handset feels solid and rests on the shoulder quite nicely, by far my favourite handset. Audio quality is no better than my Grandstream however surpasses my SPA2102 hands down. The buttons are quite satisfying to the touch though the navigation button (up / down) feels cheap (it is a rocker type). I absolutely love the Message / Ringing lamp built right into the handset and the extension selection is simple to use.
Geekery – Customization
Though the provisioning is stupid to set up, once it is done configuration is a breeze. This phone supports XML menus using the little globe button, these services are super awesome to play with. With a bit of PHP / XML knowledge it is easy to write a simple RSS feed reader (useless but fun) as well as email reader (using php-imap) and phone directory services.
There are a ton of good ringtones for this thing, I am currently using the infamous “24″ ringtone (the one mocked in South Park) and I smile every time I get a call. The background is also customizable, I cureently am using the one below and I love it (supports BMP).

Overall I give this phone an 8 / 10, only because for the price I would expect either an LCD screen or at least better font selection. If you are looking for a good enterprise ready IP Phone the Cisco 7940 is a great choice.
Here are your promised Links (I may mirror these, this stuff is precious)
Wicked firmware mirror – no stupid Cisco registration or $$$
Where I found my 24 ringtone (other great ringtones too!)
iTunes does a pretty good job keeping your music organized however when you have a ton of music and store it on a NAS for sharing, iTunes gets pissed when it can’t connect and will automatically change your library folder back to home/music.
I had this happen to me three times within the past month and as a result I have three times the music collection (from duplicates being copied without me noticing). Here is a simple way to get your nice clean library back without having to buy anything.
First you need a copy of fdupes (Linux). It can identify unique files and tee or > them to a list. For that you would change to your music directory and run :
fdupes -rf . | tee duplicates
This process may take a while depending on how many files you are comparing. Next you would have to remove them however bash doesn’t like spaces in file names so lets toss this in a little script.
#!/bin/bash
IFS=$'\n'
for x in `cat duplicates`; do rm -v $x; done
And there you have it, no issues with spaces and a nice clean library although beware – you may want to run fdupes twice. Here’s why :
When you issue the -r flag it scans directories recursively.
The -f flag says “keep the first one you find from being piped to the duplicates list”
You should probably run -r and -rf (piped into two individual files) then use vimdiff to compare what you have against what you will potentially be deleting. I had so much crap in there I just run -rf and deleted.
Happy organizing.




