Snow Leopard for open-source devs

I just noticed that Apple has announced that snow leopard will be released on the 28th of August. Here are some tips for upgrading to snow leopard that could save you a day of frustration.

I’ve already been running it for the last week, as I managed to get ahold of the GM release which was released to the beta testing community.

snow-leopard-boxUpgrading to this operating system should be easy right? It actually depends on what software you have installed. If you use pre-compiled .app programs you just drop into your application folder, then everything will be easy, and all you need to do is chuck in the DVD and click upgrade!

If you use software that is compiled from source, it will be a different story. The main difference in Snow Leopard is in the base system. Everything is set up by default to run as 64bit. In every other OSX release, everything remained as 32bit, and so upgrading was easy, even with software installed from source. You can still run 32bit software on Snow Leopard, but you cant run 32bit software that has been compiled against a 32bit Library that is now 64bit!

But at first I didn’t notice this. I decided that as I had not reformatted in a while, I would reinstall OSX from scratch and install everything again. Luckily this was the right decision.

This was easy to do, using the standard installer to reformat the hard drive, and install the operating system. Before I started, I had backed up my home folder onto another HDD. This is so that I had my old settings that I could view for reference, or copy back over configurations and data as It was needed. Once this was done I also installed the new XCode off the DVD.

As I am a rails developer, I need to get my dev system up and running. XCode includes a 64bit version of Ruby 1.8.7, and includes rubygems with rails already installed. Below are some tips from when I setup my gems:

  • sudo gem update --system && sudo gem update
  • Install mysql. The OSX 10.5 64bit version off the mysql website works fine.
  • install the mysql gem: sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
  • Installing imagemagick and rmagick require a different approach. The instructions I found here worked for me, as the binaries on the imagemagick website are for 32bit versions of OSX.
  • Setup your paths and env, and you are good to go!

This should mean you are all ready to roll with rails. Easy right? Open up activity monitor and checkout how every process is Intel (64bit). Nice.

Now when Nik installed OSX 10.6, he clicked the upgrade button. With older versions of OSX, this would mean you end up with a fully working version of the newer operating system with all your old software. but not anymore! Upon completion, none of Niks preinstalled 32bit compiled from source software worked. So not only does Nik need to reinstall his software anyway, he also has a heap of old 32bit binaries that are useless sitting around on his system taking up space.

Well he eventually got everything working fine, but he probably should have taken the same approach I did. The main annoyance here is expecting everything to work when you click upgrade.

Upgrading your OS is a perfect solution for someone with little opensource software installed, and not at all if you have heaps, So keep this in mind when you buy 10.6 later this week.


what other people thought

gg for not releasing snow leopard in 32-bit what a complete waste of time. Why does xcode come with Ruby 1.8? I thought Ruby 1.9.1 was out a while ago.

If you are going to loose all your applications and settings you might as well start “fresh” :D

shoaib, August 25th, 2009 at 1:03 pm

nice to see you guys are on to it… need a mac and modul8 to learn multi-screen visuals on the fly stuff… already one installation in Welly to play on when i get up to speed..(oh and when i get the use of my mashed wrist back). does Adobe CS4 run on Leopard?

paul moss, August 25th, 2009 at 1:09 pm

Yeah Paul, I have Adobe CS4 64 Bit for Mac :D

Shoaib, August 25th, 2009 at 1:18 pm

Thanks for the heads-up, I’ll run into the same problem by having pretty much all dev-stuff running through macports… haven’t thought of this actually, so you’ve saved me a lot of headaches :)

Ingo, August 26th, 2009 at 8:51 pm

Love your work.

Loveyourworkguy, August 31st, 2009 at 10:20 am

have your say