It’s just data

Snow Leopard

Three plus years later and I upgrade my Operating System to Snow Leopard.  Yes, I know that’s not the latest shiny bits, but I prefer to stay one step behind.  I documented my acquisition adventures separately.

I received the box on a Friday afternoon.  Basic installation was complete by Saturday morning.  Because I now have a bit more experience with the operating system and an established set of tasks, I was able to cover more ground in a few days than the last time.

I started by rsync’ing my data to my server machine.  Multi-terabyte drives these days make this a no brainer.  Then I did a clean install.  I was under the impression that this would automatically detect and install my peripherals.  This was not the case for me, but after installing three drivers and two software packages I was up and running.  To be fair, it might have installed the printer parts, but the first thing I looked for was the scanner, and by the time I was all done, the printer was working.  All in all, this part of my experience was about on par with Windows installations, and not quite up to my experience with Ubuntu.

Next up was a few simple settings:

At this point, I ran into my first problem.  Upon waking, I would intermittently find that I didn’t have network connectivity.  I ran through the diagnostics, and it suggested that I reboot my router, which I did to no effect.  I was able to find this discussion and verify that the workaround did, in fact, work for me:

sudo ifconfig en0 down
sudo ifconfig en0 up

Since I didn’t have this problem with Leopard, and have a workaround that addresses the problem, I’m assuming at this point that this is a software issue.  I also don’t have this problem with any Windows or Ubuntu machine on my network.  Again, I am running a clean install of Snow Leopard on Genuine Apple hardware.  I’ve started to look into running a script on wakeup, and found launchd and Sleepwatcher, but haven’t completed this.

Next, I went to get suexec working on Apache.  I’m not sure how I managed to do it before, but it wasn’t straightforward.  I was able to find bits and pieces in various discussions, but none worked for me as stated.  What finally worked was downloading httpd-2.2.17, and then doing the following:

tar xf httpd-2.2.17.tar
cd httpd-2.2.17
./configure --enable-suexec --with-suexec-docroot=/Library/WebServer/Documents --with-suexec-gidmin=20 --with-suexec-uidmin=501 --with-suexec-logfile=/var/log/apache2/suexec_log --with-suexec-caller=_www --with-suexec-userdir=Sites
sudo cp support/suexec /usr/bin
sudo chown root:_www /usr/bin/suexec
sudo chmod 4750 /usr/bin/suexec
cd modules/generators
sudo apxs -i -a -c mod_suexec.c

On the plus side, this verified that all of the necessary XCode developer bits were working.  I don’t even mind that I had to download and compile this myself.  My only complaint was that finding the instructions and figuring out what worked for a clean install of Snow Leopard wasn’t straightforward.  Hopefully my instructions above will help somebody.

The Ruby on Rails story is much better now.  Snow Leopard comes with Ruby 1.8.7.  Installation of 1.9.2 is made easy with RVM.

MySQL was another story.  I started by downloading the latest, and installing it.  Then I added /usr/local/mysql/bin to my path.  First problem was that building the necessary gems requires additional configuration.  Once installed, it simply didn’t work.  Turns out to be a problem with Mysql 5.5.  Uninstalling requires manually tracking down files and zapping them.  Even that wasn’t enough, there was one more directory where “receipts” were hiding.  After installing Mysql 5.1, and reinstalling the gem, all was fine.

With that, all is working.  The browser and Terminal App are fine with me.  I pointed the Mail App at my imap server and it downloaded all of my mail.  I have a few archive folders that I generally don’t subscribe to, but unlike with Thunderbird, that apparently isn’t an option with the Mail app provided.

I still prefer Ubuntu, where my experience is that wakeup from sleep “just works”, as do peripherals, as do the following commands:

sudo a2enmod suexec
sudo apt-get install mysql-server
gem install mysql2

I know that some in the Mac community prefer to blame others, but as an end user of the OS, I just don’t care whose “fault” it is, I just want it to work.