This morning the MacBook was behaving strangely … to the point that I managed to lose the menu bar entirely, and no apps were doing anything. I’m still not sure what happened, but it was refusing to shutdown to make it more annoying.

After a hard reboot, the pain got even worse, as it then got stuck in a never-ending loop of two different parts of the startup sequence (light blue background with spinny thing; darker blue background with just the cursor). No amount of forced reboots fixed it.

I then dug around and found the Boot Options for OS X 10.5, and so I played with those. Single user mode (Cmd-S on boot) just allowed me to verify that /var/log/system.log was indeed full of errors, though most relating to one area:

LaunchServices/5123589: coreservicesd is running an unsupported version, 0 ( we are 10500000 ), so we cannot talk to it.

Googling made me realise that this wasn’t a minor problem: a reinstall of the OS was called for. Oi! This is a Mac: this shouldn’t happen!

At that point I naturally started thinking about the Time Machine and SuperDuper! backups that should get me out of this hole. I plugged in the external firewire HDD with the backups, and tried the Target Disk Mode startup (T on boot). This seemed to work, but isn’t helpful, as it would allow other computers to see the files on the MacBook, rather than get the files off the HDD.

So then I looked at SuperDuper’s website to see what I should do. I’d spent many hours making sure that I could use it to reboot the Mac if necessary, but when holding down Option/Alt and rebooting, it failed to show the drive. Grrrr. And not surprising, as I then discovered on the SuperDuper! FAQ forum where it notes that many FireWire drives aren’t checked with Macs, and can’t boot from them. [An order for a recommended Maxtor unit has now been placed.]

Time Machine can’t do a bootable recovery, and I have a non-booting machine. So, a reinstall was needed. Grrrrr some more, as my last Time Machine backup was before Spring Harvest. But here’s the good news: the reinstall option (via the original OS DVDs) has a useful trick up its sleeve. It will archive the existing OS, install a new one, and then restore the preserved user’s data and settings - including most of the applications. This went extremely smoothly, and I haven’t noticed anything missing yet. All that was needed was to do a few rounds with Software Update to bring the Apple software back to the latest versions (particularly OS X 10.5.2).

In the end, this was probably easier and quicker than doing a SuperDuper-based boot, and then a long restore from Time Machine. Though it does leave the OS in a less clean state.

975FA542-2B68-4629-8F8D-F5F4B704ECD1.jpgQuite how much time should we put into our computer backups? No idea, though it seems I spend too much time on it, particularly this week. I’m happy so far with Time Machine built into OS X from 10.5 on, but the one thing it misses is the ability to boot from the backup it takes. Big deal? Well, if a drive or the whole MacBook goes completely, then you need to do some serious reinstalling before you can get to a base from which you can then start recovering from Time Machine.

29F2BE95-BBB5-47DF-B15F-725A68FCBA51.jpgThus encouraged me to try SuperDuper! from Shirt Pocket software. This allows point-in-time backups of whole volumes (for free) or certain parts (if you pay) - and can make them bootable. Like TM, it constrains you to using volumes formatted as HFS+, not any Windows formats, such as FAT32 or NTFS. And you further have to use the GUID Partition Table standard (not APT or MBR) to make it bootable on Intel-based Macs. I have an external drive, so I thought I’d give that a go. I’d not idea how many hours it would take to get it working.

Turns out a bug has crept into OS X v10.5 that makes certain partitioning in Disk Utility fail with the ‘Partition failed Input/Output Error’ message. OS X Tiger (10.4) doesn’t have this problem, which seems to be with weaknesses on external drives for how they’ve implemented the USB standard. I found that trying it on the old MacMini that runs Tiger) didn’t work unfortunately, but trying another tip did. Some reported that using FireWire to the drive sidesteps the issue, so one FE cable purchase later I was able to run it OK on OS X v10.5.2. (This is all according to this Apple support thread which seems to be the most useful on the topic.)

Having sorted that, I’ve now got SuperDuper! to work. It’s simple enough that non-techies can use it succesfully, I reckon. And I can testify that support is super-quick, despite it being a one- or two-man outfit. However, they really don’t help themselves with having some error messages that are much less helpful than they could be, and it doesn’t check for some things that are bound to cause obscure fatal errors after many minutes of operation.

I’m a fan of Google’s online calendar (GCal), but you need to do some work to get it to be synchronised with OS X’s built-in iCal application. But it’s worth doing, as you can then use the local application without having to have GCal open all the time in a browser, and you keep a local copy when you’re not connected to the internet. GCal’s printing support is OK, but it’s easier and better-looking from iCal.

The main ways of achieving this are:

  • Try and then buy Spanning Sync preference pane ($65) which uses their own server to manage the sync between your different sources
  • Buy gSync (£10) which needs no third-party server, so could be more secure, and supports Google Apps FYD and multiple iCal accounts
  • Try and then buy BusySync preference pane ($20)
  • GCalDaemon (free), which is secure, more flexible (supports multiple accounts, GAFYD, some contact sharing), and cross-platform, but needs significant setup which I wouldn’t recommend for people without Unix skills.
  • Wait until Google (almost certainly) release GCal that works with Google Gears, and provides its own offline service - albeit still in a browser page.

What have I opted for? Knowing some Unix, I’d like to go with GCalDaemon, but according to this forum thread, Leopard has made significant changes to iCal, and it breaks GCalDaemon at the moment. Having Google add offline support will be good, but no-one knows when that will come. So, I went with gSync.

Soon after getting my Mac, I obviously wanted to sort the backups out, and to make them much more sensible than my previous PC-based lashup. I’ve still not really tested out a restore from Mozy, but I like that it’s a secure, remote, service, and that for 2GB it’s free. The OS X configuration client is slow and crashes easily (yes, a beta in action not just in name), but the underlying backup appears to happen without problem. It’s just doing a backup of my working documents, not the OS or music etc.

But what about Time Machine, arguably the biggest addition to Leopard (OS X 10.5)? It was time to look it over, now I’m on a point release or two on from 10.5.0, and people do seem to like it. So, worth trying a full system set-and-forget backup with it. You need a second disk, which can be external, for it, and (in my case) that’s at least 37GB. I already had an external 150GB drive, with some backups from the PCs on it. I tried just mounting that, and Time Machine refused to use it, as it didn’t have an HFS+ partition. The rest of this post is how I achieved that. Non-geeks look away now.

I wanted to keep the existing data, so I went back to the PC and used my tried-and-trusted PartitionMagic tool to shrink the existing partition down and create a new empty 70GB one. (I’m not sure if there’s a tool in OS X to do this whilst keeping the old data. I wasn’t about to make a mistake there.) Then some googling turned up these old instructions for making a FAT32 and an HFS+ partition. Given I’m not needing the HFS+ partition to be bootable, which is the main debate of that thread, it turned out the only necessary parts were:

  • ls /dev/rdisk? with and without the external drive mounted, to find the drive device name (/dev/rdisk2 in my case)
  • ls /dev/rdisk2* to find the volume name of the second partition
  • sudo diskutil eraseVolume "Journaled HFS+" TMBACKUP /dev/disk2s5 to fill it with a nice new HFS+ partition, and mount it.

The 37GB is what it needs for its backup - which is ignoring my music and movie files. As far as I can tell, it’s not achieving any compression, as the OS and data comes to about 37GB at the moment. After an hour or two of the initial backup it showed a figure that made me gulp: Backing up 1,075,096 items. Yee-ouch! These modern OSes sure are complex …

lighttpd logo
It was time to get some of my local web things working, so I needed to get the web server going on OS X 10.5. Obviously the main candidate is Apache, which is already installed on OS X. But, on my previous Windows laptop I’d gone for lighttpd for similar reasons to these given by Garrett at Ray Gun Robot:

Why install LightTPD when Mac OS X already comes with the Apache web server built in? Well, I suppose it’s a matter of personal taste. I personally like the web server to be running all the time, so that way, when I decide I want to start coding my site, I don’t have to mosey over to a Terminal window or System Preferences to start it up first. On the other hand, since it’s going to be constantly running, the web server should be using up as little RAM and CPU resources as possible. So I want to use a “lightweight” server so that the fact that it’s running all the time won’t interfere too much with my frames-per-second on Call of Duty 2 and stuff. On the other other hand, it can’t be so lightweight that it doesn’t support PHP, which is the point of all of this in the first place, right? So, for me (and possibly for you), LightTPD is the best compromise.

Disappointingly, it’s harder work getting going on the Mac than it was on the PC. For future reference, what I should have done was:

  1. Install Apple’s Xcode tools first (free with the Mac)
  2. Go to MacPorts and install according to these instructions
  3. Sort out the $PATH to make it easier to run commands
  4. Install the lighttpd package with this command: sudo port install lighttpd
  5. Install php5 with fastcgi extension with this command: sudo port install php5 +fastcgi - takes quite a while!

Unfortunately in the long php5 install steps, it failed on libxml2 v2.6.30, with a checksum mismatch. I can discover (using port livecheck libxml2) that the most recent version is v2.6.31, but running the MacPorts port -d selfupdate doesn’t seem to bring in the newer version.

OS X Leopard
Apple Macs do have the advantage over PCs that they come with most software that you need pre-installed. However, I’m not most people, and I tend to do rather more with it. Here’s my current list of what I’ve added to it, in rough priority order …

  • Firefox - plus a range of extensions to help ease the browsing experience
  • Google Earth - see the world!
  • iLife ‘08 (Keynote, Numbers, Pages) - Apple’s take on the basics of a creative’s office suite. Only played with Keynote so far, which is not hugely different from Powerpoint, but does seem cleaner
  • Quicksilver - the swiss-army knife of launchers
  • Microsoft Office 2004 - I had a license anyway, so more useful to have it on the box to deal with complex files I get sent
  • Thunderbird - set up all nicely to be the local IMAP cache to GMail. (I had to switch back to US settings as the IMAP mode in GMail hasn’t been released to UK users yet.)
  • Mozy - for online backups (still in beta, and less powerful than the PC equivalent)
  • Cyberduck - FTP
  • Chicken of the VNC - Screen Reader (I’m not sure whether this is strictly needed, as I’m not clear quite what OS X 10.5 has built in)
  • TextWrangler - feted text editor
  • CocoaJT and iRecordMusic trial - to download BBC radio shows. Need to explore some more here.
  • Exchanged XML Lite - for XML file manipulation. Feels clunky compared with my ancient copy of XMLSpy for Windows
  • Photoshop - on order. At long last I can try the full fat goodness of PS. I do also have The Gimp which is in many ways excellent, but understandably lagging behind PS in its ease of use, and some of its advanced vector and bitmap editing support.

I’m also intending to try Midnight Inbox which is a gorgeous-looking GTD tool, straight out of David Allen’s book. Currently it doesn’t have a mobile offering, so I’m likely to stick with Toodledo, which I really like. (It even has a Toodledo Dashboard widget (plus one for Vista), so unfortunately it looks like I don’t have that opportunity for an interesting new programming project.)

My one main problem area is in photo management. On Windows I’ve been delighted with Picasa, but they’re unlikely to port that to OS X. iPhoto is obviously in the same space, but few seem that happy with it. I shall have to give it a go, though, particularly as its ‘08 version has some extra ‘Events’ goodness.

Welcome to my blog site -- here to help me work out what I think. Feel free to join in, and start a debate. Cheers -- Jonathan.