Posts Tagged ‘Linux’

NetworkManager Can Ignore VPN DHCP

Friday, August 6th, 2010

Connecting to a VPN that has DHCP settings configured can be rather frustrating if it breaks your regular network settings. The biggest problem I’ve had with this in Ubuntu is with resolv.conf losing my DNS settings in favour of the VPN DNS settings.

For a long time I’ve tolerated the workaround of setting the immutable attribute on resolv.conf (ie. chattr +i /etc/resolv.conf). This will prevent anything from updating the file and thus you will not lose your DNS settings when the VPN connection takes place. This is fine for a desktop machine on a local network where resolv.conf is likely to stay static, but no good for a laptop or other mobile device.

This week I searched around for a better solution. Something new I found was vpnc connect and post-connect scripts. This looked like a possible solution, something similar to what I did when using the vpnc client for KDE. The KDE client had a post-connect script option, and from that I would restore my old resolv.conf. I tried creating the vpnc scripts to back up resov.conf and restore it afterwards, but it seems that those scripts don’t even get run by NetworkManager because nothing happened for me.

Then by luck I noticed something in my search results about a setting called ignore-auto-dns. Seems that the interface doesn’t support the setting, but you can specify it for the connection using gconf-editor. The specs for the setting are here… http://projects.gnome.org/NetworkManager/developers/settings-spec-08.html

So to apply this setting, open gconf-editor and find your VPN connection under system/networking/connections (all connections are just numbered under there). There should be an ipv4 key in there. Now just create the boolean value ignore-auto-dns and set it to true. Shortly after discovering this solution, I found another technique which lists this same setting but in a network configuration file… https://help.ubuntu.com/community/NetworkManager0.7. I’ve not tried the method listed there because I’m not actually convinced that it’s a better option than modifying this gconf setting.

Eee PC Clicking Sound

Wednesday, June 16th, 2010

I’ve noticed that on battery power the hard disk makes a clicking sound every 20 seconds or so. This symptom has been reported particularly by laptop and netbook users, including those that use Windows (though I gather it’s much less of a problem with Windows users).

A quick summary of the situation. If your Eee PC has a SATA hard disk, chances are you’ve noticed this problem. The simple solution is just to disable Advanced Power Management on the hard disk all together and then get on with your life. There are plenty of other power saving features that work, but it seems that the APM is not well suited to Lucid Lynx (or vice versa).

Ubuntu is telling the hard disk to take it easy and not to chew too much power. But this is really just to lull it into a false sense of security as it doesn’t actually cut the drive any slack. In fact, Lucid has some services which appear to be very demanding on the hard disk. The hard disk keeps trying to take a break but Lucid keeps accessing it. The result is a drive that constantly sleeps and wakes up again (causing the click to be heard, as the disk heads park and then move back into working position again). Luckily this action was actually audible, otherwise I’d have been none the wiser, oblivious to the performance hits until my hard disk finally died from excess wear.

A quick search revealed the following command to instantly stop the clicking:

$ sudo hdparm -B 254 /dev/sda

Where “sda” is your SATA hard disk device of course. That command will buy you some time to figure out what’s really happening. Unless you are feeling adventurous, you’ll probably reach the same conclusion that I have. But lets work through this anyway for the sake of actually understanding a little more about what’s actually going on here.

The following command will tell you lots of stuff about your hard drive that you probably don’t want to have to care about:

$ sudo hdparm -I /dev/sda

You can find just the line we are interested in with this one:

$ sudo hdparm -I /dev/sda | grep "Advanced power management"

Which should yield this, since we ran hdparm with the -B 254 option…

Advanced power management level: 254

This is what we want. But if you reboot and run that command you will see it reverts back to level 128. In fact, if you plug the power back in and then remove it, theoretically it should revert to APM level 128.

To find out what the hard drive has been up to, install the smartmontools package using synaptic or sudo apt-get install smartmontools. Then you can run this command (make sure your terminal window is nice and wide or maximised):

$ sudo smartctl -a /dev/sda

Cool huh? More stuff you don’t want to have to care about. But just have a look at the section titled “Vendor Specific SMART Attributes with Thresholds”. On my Eee PC I had very high “RAW_VALUE” for “Load_Cycle_Count” row.

“Load_Cycle_Count” was 3150 and “Power_On_Hours” was only 56. So I’m assuming this means the drive has averaged one “load cycle” per minute of it’s life. Which is about right, since the clicking only happens on battery power and then it happens about every 20 seconds during this time. So if the clicks coincide with these “load cycle” thingamajigs, this would suggest it’s lived on batteries less than 1/3rd of it’s life, which is about right.

If you don’t like my science, or you have a different interpretation of your own threshold table then you might want to have a look at the SATA known issues wiki page. Meanwhile, on with the show…

With a default Lucid Lynx installation, the APM level 128 setting is triggered by a htparm power management script that lives here… /usr/lib/pm-utils/power.d/95hdparm-apm. If you have another power management package installed such as laptop-mode-tools then your on your own.

The configuration for this and possibly other power management tools lives in /etc/hdparm.conf. To basically disable APM when running on battery power, add the following to the end of the config file…

/dev/sda {
	apm = 254
	apm_battery = 254
}

This tells hdparm to keep the drive at APM level 254 even when it’s running on battery power. Unfortunately, this seems to be the simplest option when running Lucid Lynx on an Eee PC. Apparently Lucid Lynx just doesn’t want to stop molesting the hard disk. Just disable APM for now. Hopefully future UNE releases will address this rather major issue.

I’m planning to test the battery life of the OEM Windows 7 and then compare it with Lucid Lynx without APM. I expect it to be a bit of a hit, but I get the impression it’s not worth the effort to make Lucid Lynx APM friendly. If you are feeling masochistic though, perhaps you can pick up from where this guy left off.. http://forum.eeeuser.com/viewtopic.php?id=85230

I see this as an unfortunate trade off between power consumption and performance. The performance improvement of Ubuntu still far out weighs this issue. To be fair, I first found out how to fix this problem from Windows users. Someone has ported a lot of the functionality of hdparm to a tool called quietHDD to solve this for the Windows platform. At least our solution is supported and bundled with the operating system. I found it interesting anyway to know a bit more about how power management works in Ubuntu.

References:
man hdparm.conf

Dual Boot Eee PC

Tuesday, June 8th, 2010

I’ve done a few of these dual boot installations with impressive results from the latest Ubuntu Netbook Edition. The OEM hard drive layout seems to be quite common across models. Here I’ll document a general approach to take to get your Eee PC set up with dual boot Windows and Ubuntu Netbook Edition.

Make sure you have updated the firmware using the little ASUS updater tool that comes with the OEM Windows. You can find it in the start menu. Here’s the screen shot from the 1005P model…

ASUSUpdate in start menu

Incidentally, this was the first time I’ve touched Windows 7. Nice to know it’s possible to get the classic theme happening, but that didn’t seem to speed it up much. I must admit it seemed to perform a little better than Windows XP. The browser didn’t just hang like it did on my Windows XP Eee Top when I visited some flash intensive sites. Still, it was far less responsive than Ubuntu.

The BIOS update tool is very straight forward. Just be patient while it finds your latest BIOS, downloads and installs it. Having the latest BIOS image generally results in better device support from Ubuntu out of the box.

ASUSUpdate tool

The next thing to do, follow steps 1 & 2 from here… http://www.Ubuntu.com/netbook/get-ubuntu/download

Once you have a USB device with an Ubuntu image on it, insert the USB drive and reboot. During the boot process, usually while Eee PC logo is displayed, press and hold the ESC button. A blue boot menu will eventually be displayed. Select the USB device and press “Enter” to boot the Ubuntu installer image. Once it starts up, click “Try Ubuntu-Netbook 10.04″ and wait for the desktop to load.

Now you need to run Gnome Partition Editor. You can either find it under the System menu, or press Alt+F2 and type “gparted” and hit “Enter”. The screenshot below may be of some assistance in confirming your actions are correct.

Lucid Lynx gparted

Now if you wait a moment you will see a graphical representation of the partitions on your hard disk. It will vaguely resemble something like this.

Eee PC OEM partitions

There are two partitions you’ll want to hang on to. The first one contains OEM Windows (the “C:” drive), the second one is a handy recovery image. If you use Windows to browse the net, you’ll be needing that recovery image to clean out all the root kits and trojans from time to time. Otherwise you might want to keep it in case you ever want to sell the Eee PC to a Windows user who wants a clean image.

Ubuntu needs you to add two new partitions minimum, a swap partition and one for the root directory. Unfortunately, you can only have 4 partitions on the drive, so the last two just have to go.

Optionally, the Windows partition can be reduced in size, this is especially useful if you don’t plan to use it very often. I tend to shrink it to about twice the size of the currently used space. After resizing the Windows partition you’ll need to move the recovery partition so it’s flush against the Windows partition. You can use Gnome Partition Editor to do all these things, so have a play. If you do the wrong thing click the undo button in the tool bar. Once you have something that looks similar to below, press the Apply button (the big tick). It will take some time to perform the operations. Be patient and make sure the netbook it not running on battery power at the time as these operations could be destructive if they fail.

Eee PC dual-boot partitions

If you have resized the Windows partition, Windows will perform a disk check the next time you boot it. This is to be expected, just be patient and let it do it’s thing. It will eventually complete the check and reboot. Windows will start fine.

The next step is to install Ubuntu. From the menu, click “Install Ubuntu-Netbook 10.04″ from the favourites menu. The Wizard will firstly prompt you for your language, timezone and keyboard layout. When you get to step 4, Partitions, select the last option as seen here.

Eee PC dual-boot Lucid Lynx installer partitions

On the next screen all you need to do is set the EXT4 partition as the root as seen below.

Lucid Lynx installer setting root partition

Then just follow the bouncing ball to begin the installation process. Sit back and enjoy the progress bar and obligatory forced advertising as it completes.

Once it’s installed, reboot. You will notice a 10 second menu to select between Ubuntu and Windows. Firstly, some notes about the GRUB menu. The last Windows entry is usually the Windows recovery tool. Don’t use this tool unless you really need to recover your Windows installation. Recovering Windows will lock you out of this boot menu, and you will have to use the USB boot image to recover it in order to regain access to Ubuntu (see Recovering Ubuntu After Installing Windows). I’ve also noticed on the Eee Top that the Windows partition becomes hidden and Windows will not boot after recovery. You can easily use gparted to remove the hidden flag from the partition if this is the case. But enough about Windows.

Boot into Ubuntu (just wait 10 seconds, or press “Enter”). Now visit the HardwareSupport/Machines/Netbooks page and find the model of your Eee PC. Here you will find useful information about getting better device support for your particular model. Or if your model is not listed, add an entry with notes about how perfectly it works.

Enjoy the superior performance of an Ubuntu Eee PC.

Update June 17, 2010: Please ensure you do have a look at the hardware support page linked above. There are some important changes to make to the grub config you’ll need to perform to get hotkeys working correctly. On top of this, check out my recent post on clicking noises and disabling APM. You may need this too if you have a clicking SATA hard drive.

Ubuntu on Touchscreen Eee Top

Thursday, June 3rd, 2010

Well it’s been a while, but I once again have a useful nugget of information for the world. I bought a cheap Eee Top last year, and installed Ubuntu on it. It did have a few minor dramas. I wasted days trying to get the touchscreen working, with limited and unreliable results. I actually suspect Ubuntu was having issues with the USB bus since I was getting spammed with dmsg log entries in the terminal window. Sometimes my USB keyboard or mouse would stop working.

Anyway it was depressing and I don’t want to go into it too much now I’ve got my mojo back on the latest version of Ubuntu, which is working awesomely. This time it took me only 30 minutes to find some working instructions to get the touchscreen up and running. No package compiling required this time, though there was xorg config file hacking involved.

Here’s the procedure on an out of the box Lucid Lynx install. Install the evtouch driver.

$ sudo apt-get install xserver-xorg-input-evtouch

Tell udev to create us the symlink for the touchscreen device.

$ echo 'echo KERNEL==\"event*\", SUBSYSTEM==\"input\", ATTRS{idVendor}==\"1bfd\", ATTRS{idProduct}==\"1688\", SYMLINK+=\"input/evtouch\" > /etc/udev/rules.d/69-touchscreen.rules' | sudo sh

Now I was surprised to discover I didn’t have an xorg.conf file. I found you can generate one with “X -configure” command. The catch is you need to kill GDM before you do so. So here’s the drill:

Ctrl+Alt+F1 and login to the terminal

$ sudo killall gdm-binary
$ sudo X -configure

Now copy the generated xorg.conf.new to /etc/X11/xorg.conf.

Edit xorg.conf so it looks similar to mine (changes highlighted):

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
	InputDevice    "Touch0"
EndSection

Section "Files"
	ModulePath   "/usr/lib/xorg/modules"
	FontPath     "/usr/share/fonts/X11/misc"
	FontPath     "/usr/share/fonts/X11/cyrillic"
	FontPath     "/usr/share/fonts/X11/100dpi/:unscaled"
	FontPath     "/usr/share/fonts/X11/75dpi/:unscaled"
	FontPath     "/usr/share/fonts/X11/Type1"
	FontPath     "/usr/share/fonts/X11/100dpi"
	FontPath     "/usr/share/fonts/X11/75dpi"
	FontPath     "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
	FontPath     "built-ins"
EndSection

Section "Module"
	Load  "extmod"
	Load  "dbe"
	Load  "dri"
	Load  "dri2"
	Load  "glx"
	Load  "record"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/input/mice"
	Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "InputDevice"
	Identifier	"Touch0"
	Driver		"evtouch"
	Option		"device"	"/dev/input/evtouch"
	Option		"MinX"	"1"
	Option		"MinY"	"1"
	Option		"MaxX"	"4096"
	Option		"MaxY"	"4096"
	Option		"ReportingMode" "Raw"
	Option	"Emulate3Buttons" "false"
	Option	"Emulate3Timeout" "50"
	Option	"SendCoreEvents" "on"
	Option	"MoveLimit" "0"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: : integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"            	# [<bool>]
        #Option     "SWcursor"           	# [<bool>]
        #Option     "ColorKey"           	# 
        #Option     "CacheLines"         	# 
        #Option     "Dac6Bit"            	# [<bool>]
        #Option     "DRI"                	# [<bool>]
        #Option     "NoDDC"              	# [<bool>]
        #Option     "ShowCache"          	# [<bool>]
        #Option     "XvMCSurfaces"       	# 
        #Option     "PageFlip"           	# [<bool>]
	Identifier  "Card0"
	Driver      "intel"
	VendorName  "Intel Corporation"
	BoardName   "Mobile 945GME Express Integrated Graphics Controller"
	BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

And that’s that. Reboot.

References:

http://wiki.linuxmce.org/index.php/ASUS_EeeTop_ET1602

http://ubuntuforums.org/showthread.php?t=1428788

I’m going to have to post soon about my experiences with Lucid Lynx so far, now that the dust has well and truly settled. There is not much to criticise that I have come across, but I have a new found approach to distribution upgrades to share. I’ve also completely given up on KDE in favour of Gnome with Cairo Dock.

KDE or not KDE? That is the question…

Tuesday, September 1st, 2009

I’ve been gradually catching up with a lot of the rants on the net with respect to KDE3.5 vs. KDE4. Some less sane than others. I came to the debate quite late it seems, and it’s something I’m not pleased with even having to care about to tell the truth. Suddenly now I find my self having to understand the developers philosophies and getting to know some of the more vocal egos on both sides of the fence. After grasping a better idea of what’s happened, I don’t think I’ll ever be completely sold on KDE4. But after reading some more compassionate words on the topic today, I think I’ve finally come to terms with the situation.

In the KDE developers defence, I don’t think it’s possible for complete overhauls of software to ever be embraced whole heartedly by the userbase. Particularly not right away. I will continue to resent the fact that Kubuntu took up KDE4 so soon. I liked KDE3.5 because it was a work of art, but also because it was fully functional and intuitive for anyone who is used to MS Windows. At that time I couldn’t understand why Ubuntu picked Gnome for the flagship considering KDE3.5 was so much more suited winning over the users afflicted by Bug #1. My first impression when KDE4.1 was thrust upon me was of some retarded mutant desktop environment from a future that I don’t care to participate in. KDE4 turned my entire desktop experience inside out!

I’m not going to pretend that I’m not a stubborn person. I like to work in a particular way which I’ve refined over years, dating back to MS DOS and Windows 3.1. I switched to Linux because some of the more restrictive and intrusive features in Windows Vista had well and truly crossed the line as far as I was concerned. I wanted to get back to a basic desktop without all the useless eye-candy. KDE3.5 was the best fit for me at the time.

I’m quite busy as well. I soon learnt with Linux distro’s, every time there is a distribution upgrade to postpone it for at least a month and ensure I dedicate a couple days after it to get myself settled back in. With KDE4 it was more like a couple of weeks of pointless frustration. Wrestling with KDE4 just proved to be too much hassle for me at work and I’ve now fully switched over to Gnome. I found it easier to customise to my liking than KDE4. At home I’m still on KDE4.2 because it doesn’t matter so much if I’m spending 6 hours trying to figure out how to customise the desktop theme in vein, and I still hold out for a glimmer of hope that the developers may resolve some of my issues with it.

KDE4 is not easy or intuitive to use. I don’t like this widget based desktop paradigm and I don’t understand how it’s useful in anyway. Most of the time my desktop is hidden by windows anyway. I have to wonder if KDE4 was ever designed for using or if it’s just for looking at. KDE4 is a contradiction in my eyes. To be a desktop environment which gets in the way of letting users do what they want, yet to do so in the name of flexibility is bizarre. It makes me anxious and I don’t like it.

I still see KDE4 as the lavalamp of the desktop environment world. It chews a lot of power and looks pretty, but it’s not all that useful. You also have to be careful about touching it because you might get burnt. I have a feeling it’s the new development philosophy that’s flawed, but I can’t quite put my finger on what that flaw is as yet. I think I’ve reached a turning point in my thinking about KDE4 now though, and I find my self walking peacefully in the opposite direction.

KDE3 on Jaunty

Tuesday, June 16th, 2009

Just a quick follow up. The plans to maintain my KDE3 addiction worked, but it wasn’t a smooth ride. I don’t recommend it for anyone who isn’t keen to tinker. During the KDE3 installation some packages wanted to overwrite KDE4 files, which caused all sorts of issues with my package manager. I had to use dpkg to force a couple packages to install before I could remove the KDE4 ones and then re-installed the KDE3 ones just to be sure. I ended up culling a fair few of the default KDE4 packages to make sure I didn’t have any more problems like this. I can still login to KDE4, but some of the nicer stuff like Compiz is gone.

I had issues with Compiz in particular, there are problems with the latest nVidia drivers. The latest Compiz has a workaround for this, but it’s not available for the KDE3 version. I found the simplest solution was just to switch back to the 177 driver version and then it was all good.

So yeah, I recommend just switch to Gnome, or try KDE4 on Jaunty and enable the folder view desktop. It seems like pointless overhead to me, the folder view is just a full screen widget. Note also that it doesn’t span screens, so if you have a dual screen setup and you want some icons spattered on the second screen you’re out of luck. KDE3′s days are numbered so eventually I’ll have to face reality and move on. I’ve prolonged it for about another year now I reckon, but eventually I’m going to have to face the music.

I wanted to post this sooner, but the recent Word Press update broke my WYSIWYG. Luckily it was just a javascript conflict with one of my plugins, some people had much worse issues with the update. Still it’s embarrassing since I was just bragging to my mate the other day about how fantastic this application is, particularly the update management. Bloody updates, they are the bane of my life!

The KDE4 Desktop “Visionary”

Thursday, June 11th, 2009

While searching around to find out why-oh-why I’m not allowed to have files on my Desktop in KDE4 (and hopefully how to re-enable it), I found this… http://aseigo.blogspot.com/2008/05/no-more-desktop-icons-in-41.html

This looks to me like the root of the problem. This KDE developer, in all his infinite wisdom, just simply ripped out the code that supports file icons on the desktop. Apparently it just doesn’t look nice to him or something. Too bad if you don’t like the whole widget based desktop experience, this guy has just forced us to either take it up or switch to Gnome. Suffice to say, when I read his article I was fairly taken aback by the action.

In all fairness though, he doesn’t see it the way I do. Yes, this post was originally fueled by rage. I quickly changed my initially confrontational title of this post to something a little nicer. Aaron’s intention appears to be to create a more flexible experience for the user (by culling features?!?). My tinfoil hat keeps telling me it’s really just a Microsoft conspiracy (joking of course).

One of my machines was recently updated to KDE4 via the Kubuntu Intrepid distro upgrade. I’ve been using it everyday, but I haven’t been liking it. The version that came with Kubuntu Intrepid is not nearly mature enough. Personally, I love KDE3 and I’d like to stick with it as long as possible. I don’t need the new Plasma features and many old features seem to have been dropped. Thankfully, I found this… https://wiki.kubuntu.org/Kubuntu/Kde3/Jaunty which should allow me to keep my systems up to date without having to touch KDE4. I’ll try the process out tomorrow on my work Kubuntu 8.04 machine.

Update:

You can re-enable the normal desktop behaviour in Jaunty simply from a desktop right click menu. But not Intrepid. In Intrepid you could try editing $HOME/.kde/share/config/plasma-appletsrc replacing plugin=desktop with plugin=folderview, but that didn’t work for me.

Another Update:

You can’t drag and drop your icons on to multiple screens. It only works on the primary because it’s still some kind of crappy complete waste of resources full screen widget.

Bye Bye Evolution… Welcome Back Thunderbird!

Tuesday, May 19th, 2009

This morning I finally decided I couldn’t stand Evolution any longer. I started using it as my mail client at work because we have an Exchange mail server and Microsoft doesn’t make a client for Linux (surprise, surprise). I’ve never worked at a place that uses Exchange, so I’ve always just used Thunderbird for mail in the past. When I got here, this was my first serious experience with Outlook, and I started to get a bit hooked on some of the calendaring niceness. When I got my new Workstation and ditched Windows for Kubuntu I was looking for something that could integrate best with Exchange.

Evolution seemed the most attractive option because it has a plugin for exchange integration called evolution-exchange. You can install directly from the Ubuntu repositories. Basically it’s a scraper for the OWA (Outlook Web Access) web interface, and generally it works really well. I’ve been using it for about 5 months now, but there are just a few things I can’t stand about it that made me decide today to bin it.

  1. Password manager is broken and has been for about 12 months it seems. No one cares to fix it. You have to type your password in each session.
  2. A bug with the Evolution/Nvidia/Compiz combination of packages causes the cursor to leave garbage on the screen when you use the cursor keys in a new mail message.
  3. HTML support sucks, the development community seem hell bent against it.
  4. It can’t handle contacts with “>” in the name, which is a convention we use to keep mailing lists at the top of the list. This character will cause it to generate invalid mail headers, destroy the html layout of the email and makes me look like an ass, especially when sending announcements to groups like “>ALL STAFF”.
  5. Occasionally the evolution-exchange plugin cache gets corrupted and you loose random mails, but you wouldn’t know unless you check occasionally in OWA or Outlook. You have to delete the whole cache and download them all again.

I was prepared to switch back to using Outlook in a virtual machine, but before doing so I decided to check first to see if there was any possible way to get Thunderbird to read Exchange calendars. Thunderbird has an extension called Lightning that adds Outlook style calendaring integration. The latest release is 0.9. Last time I used Thunderbird I think I had to get the development version of 0.8 in order to get enough working features to call it functional (appointment invites used to be very buggy in the 0.7 version). Version 0.9 has come along way, everything seems to work great… except still no support for Exchange calendars unfortunately. Your calendar is maintained locally or in some 3rd party web calendar that uses a non-proprietry protocol. Not quite good enough.

Then I found DavMail. It’s a gateway that basically does the same as the evolution-exchange plugin. This thing acts as a webservice making data available from Exchange via standard protocols by scraping the Exchange OWA interface. It maintains separate user sessions, so you really can set it up as a server side service, possibly even installed on the mail server itself.

A ray of hope! But would it work?

I had enough problems getting Lightning installed to tell the truth, and that’s just a plugin for Thunderbird! Turns out the link on the Mozilla site was no good for 64bit Linux OS and I had to jigg about with the URL to find the actual release for me. DavMail is a totally unsupported package though, the one thing going in it’s favour is that it’s Java based, so it should just work right? Well lets find out.

They have a deb package ready for me to download. I attempt to install it but I’m missing the dependency “libswt-gtk-3.4-java”. Oh boy, looks like it’s using ugly Swing for the UI. Well, looks like my Kubuntu Hardy distro is a bit behind the times now because the best I could find was a package called “libswt3.2-gtk-java” (yeah, I love the way they switched naming conventions too ^^). I installed that anyway and then just used dpkg to force it to install. It created an icon in my start menu under “Internet” and then seemed to work perfectly, connect to OWA no worries, all was good. Except now my package manager is going boonta because I’ve got a “broken package”. I can’t find the chill button so I uninstalled it for now.

How do you downgrade a dependency? Well this method worked for me…

dpkg -e davmail_3.2.0-1_all.deb
cd DEBIAN/
nano control
tar -czvf control.tar.gz *
mv control.tar.gz ..
cd ..
ar r davmail_3.2.0-1_all.deb control.tar.gz
mv davmail_3.2.0-1_all.deb davmail_3.2.0-01_all.deb

When editing the control file I changed the dependency from “libswt-gtk-3.4-java” to “libswt3.2-gtk-java” and also changed the version number to 3.2.0-01 so as not to conflict with a real version. The deb installer GUI detected something was wrong and wouldn’t install it, but “dpkg -i” worked like a charm. This is probably totally the wrong approach to take to my problem, but I don’t care. While I can sort of understand why Gnome developers might think Swing is cool, I can’t believe the libswt-gtk project can possibly have achieved much in two minor versions that would break compatibility. The latest 32bit Ubuntu has the correct version so most people wont have to care about this at all.

Now I’m rock’n with Thunderbird and Exchange! Without too much tomhackery even. So I settle back in with my old friend, so many features I’ve missed. The fantastic rich text editor (well actually it’s really basic, but light years a head of Evolution). The simplicity of theming it. I toyed with installing an Outlook theme and trying to get it to look and act exactly like Outlook. You can choose which IMAP folders to subscribe, so I picked Inbox and all it’s sub-folders, Drafts, Sent and Deleted Items. Now it’s easy to configure Thunderbird to put your sent mail into the IMAP Sent folder, but you still have the default Thunderbird Trash folder which you cannot easily convert to the IMAP Deleted Items folder. I found out you just have to edit user preferences to change the name. Searching on the net, people are always talking about editing some “prefs.js” file. I always just change the welcome page in Thunderbird to about:config, it was one of the first things I did when it was installed. This allows me to edit my preferences in the exact same way as you would in Firefox. In this case I just added the property as specified, restarted, and it worked like a charm.

I also hooked up the address book to the Exchange Global Address LDAP and then just tweaked the LDAP settings so it finds contacts a little quicker. One thing I notice is that the compose window only completes local addresses and not LDAP addresses. There had to be a fix for this.

With the power of about:config I searched for ldap and quickly found the settings that looked most useful…

  • ldap_2.autoComplete.directoryServer
  • ldap_2.autoComplete.useDirectory

The first one needed a quick search to figure out the syntax but the second one was just a boolean. Once that was done I had the same, if not better, contact auto-completion as I had previously with Evolution and Outlook. Game over, Thunderbird/Lightning/DavMail wins!

Update May 20, 2009 at 12:45 pm: Set mail.check_all_imap_folders_for_new to true, otherwise Thunderbird doesn’t check for new mail in your subfolders. This can be a problem if you have any Exchange mail filters running.

Update May 26, 2009 at 12:58pm: http://www.trustedbird.org/tb/Multi-LDAP here’s an addon that’s showing the easy way to configure LDAP addressbook lookups. Install that addon if you would like to search multiple LDAPs.

Distinct lack of Linux Eee PC

Wednesday, May 6th, 2009

Tonight I spent some time looking around for places that sell Linux Netbooks again. Amazon had quite a few good deals, that sadly wouldn’t ship to Australia.

In the country I only found a few outlets. Penta and YouPrice are selling the 901 model with 20GB SSD for I think one or two hundred dollars more than what they are worth these days. I seen some people selling the Acer Aspire One with Linux. No one is selling the top end Netbooks with Linux here.

I remember seeing the prototype for the Touch Book a while back. Looks like they are just about ready for the market. I think I’ll hold out for these to hit the shores. Fingers crossed they don’t have Windows support by the time they reach Australia, the distributors wont order the Linux model if the current state of the market is anything to go by. More than likely we wont even see these before someone else releases a knockoff with Windows on it. Then I’ll be out of luck for sure.

Update: Actually it wasn’t the Touch Book prototype I’d seen, it was the Crunch Pad. However, I think the Touch Book looks a little superior with it’s detachable keyboard. Both are rather sexy!