Wednesday, July 19, 2006

Migrating to Mac: Part 4: Parallels

I have now been using the Mac for a number of weeks, and have been enjoying the experience. So far I haven't had any real issues that I haven't been able to get around. Setting up the printer was the hardest task...

I am using parallels desktop for Mac to allow me to run Windows while working on the Mac. Initially I also installed Boot Camp but I found that I just didn't use it... So after a few week I reclaimed the space from Boot Camp and now run purely with parallels.

There are a few things that really help make the Parallels experience even better. These are the things that I have done so far, and I am open to new suggestions.


1: Install unsanity's Application Enhancer and then get the PD Tweaker. This "tweaks" Paralells Desktop and I have found helps smooth the experience of using it and other applications at the same time. If you are interested you can read about this at MacOS X Hints

2: Initially I was using the bridged network adapter that comes with Paralells. This has the unfortunate (and fully intentional) problem that it exposes the virtual machine to the network. This causes me some problems as the network admins here tend to block access to "strange" machines that appear on the network. Also, I wanted to be able to access the host machine from the Windows machines. As I move between networks the real IP address of my machine changes, as will the bridged interface. To avoid this I switched to host only access, and then routed connections using the Mac's internet sharing.

Getting internet sharing working takes a little work if you also want to firewall your machine. If you follow the Mac's advice it will have you installing the Personal Web Service, and openning ports to the world... You can get around this by configuring the firewall yourself. A script on MacWorld shows how to configure the firewall using ipfw. With some modification you should be able to change this script to provide Parallels access to the network.

4: Setting up a source repository was next on the list. With the host now being accessible at 192.168.2.1 I have a fixed point to access... Step 1 is to get the sshd running to allow remote login to my Mac. This turns out to be as simple as clicking a button. In System Preferences goto the Sharing section and in Services turn on Remote Login... and your done.

Now you will be able to access your machine both from inside Parallels, but also from the outside world. To turn this off edit your Firewall script and alter the rule that allows any access to destination ports ssh, http, and https. Change the any to $inrange1 and your done. Re-run the Firewall script and check access from Parallels and from an external machine. With ssh access the next step is to setup cvs.

Setup the cvs repository on the Mac and imported a test module. Now to access it from the PC. WinCVS was already installed as was Putty and PLink, so I created a new key file and set it up to allow login using Pageant. Connecting to cvs on the mac was then as easy as entering the new cvs root and checking out the test module. I also have Tortoise installed, but cant get it to connect using the ext protocol anymore...