3 years ago, i was using mac os x as my full-time workstation operating system on a 12" aluminum g4 powerbook. i eventually got annoyed at some hardware issues with the powerbook and some software issues with mac os x, which prompted me to switch back to a new thinkpad x40 running openbsd (and then to a thinkpad x200, then random netbooks running openbsd).
a few weeks ago, i purchased a new 13" macbook pro and immediately tried to put openbsd on it; not so much because i'm an openbsd zealot, but more so because i'm so much more productive in it than in anything else and i quickly get fed up when i can't get something done (and can't fix it).
however, after a short while of using openbsd on the macbook, i realized that i wouldn't be too productive on it and deleted the openbsd bootcamp partition. the macbook's broadcom wireless card isn't supported under openbsd and can't be swapped out, and openbsd is still quite far off from working acpi suspend. those two things are pretty important on a laptop, and while i've been used to not having a suspendable laptop since my x40, lack of wireless is crucial. there are a few other things that steered me back towards mac os like lack of accelerated x and having to give up the nicely integrated backlit keyboard, ambient light sensor, trackpad gestures, etc.
i've been using mac os x exclusively for a few weeks now and can confidently say i'm back at my level of productivity that i was with openbsd. the giant trackpad was cause for concern, but after configuring it properly, i'm quite comfortable with it. the two-finger tap for right-click is a huge help, as is the two-finger sliding for scrolling. i leave my thumb on the bottom of the pad where the big mouse button used to be on my powerbook and it feels quite natural. firefox 3.5 has improved scrolling with the two-finger sliding, and gains a three-finger gesture to quickly scroll to the top or bottom of the page. the rewind/pause/play/forward functions on the f7-f9 keys are a welcome change. no more having to use a menubar app to control itunes from another workspace.
as for all of the other tweaks, many of them are the same as what i had to do 4 years ago. not surprisingly, a few things that i needed external software for before are now integrated into mac os, like sshkeychain, turning caps lock into a control key, etc.
disable dashboard because i never use it:\
$ defaults write com.apple.dashboard mcx-disabled -boolean YES
$ killall Dock
disable spotlight and replace it with quicksilver. install address book, clipboard, firefox, ical, and itunes plugins.
system settings
trackpad
keyboard & mouse
use ipartition to convert the disk to case-sensitive hfs+.
after freaking out at the outrageous price compared to openbsd's free crypto softraid, reluctantly purchase and install pgp whole disk encryption. encrypt the entire system drive and the usb drive being used for time machine backups. yes, i know about truecrypt but i don't trust it.
disable suspend-to-disk which pgp says wde is supposed to do:\
$ sudo pmset -a hibernatemode 0
install apple developer tools.
install a newer xquartz that has better clipboard syncing for x11.app and doesn't need the proxy.
install fink and some basic utilities that the apple developer tools didn't include. i'm not sure what i didn't like about fink before but it's much better now. the dpkg/apt-get system with basic port specification files is much closer to openbsd's ports/packages than the darwinports tcl crap.
install ratpoison. i was using my version on openbsd for virtual workspaces but since i'm using mac os' spaces and effectively making all of workspace 1 x11.app with ratpoison and just putting other non-x11 apps in other spaces, i don't need virtual workspaces inside of x11/ratpoison.
install mutt with some of my little hacks and the sidebar patch. i don't think i'll ever switch away from mutt.
setup my imapbiff perl script to run at startup. it uses growl to alert me of new email in certain imap mailboxes when i'm not staring at mutt.
install scriptsaver and set it as the screen saver. make scriptsaver run an applescript which pauses itunes if it's playing and run ~/bin/lock
which runs ssh-add -D
among other things. this makes ssh-agent
forget my private key passphrase when i step away. \
\
i experimented with keychain access' settings to automatically lock the keychain after 20 minutes and to lock when sleeping, but found them very annoying. the setting in the system preferences security pane to require the login password to disable the screen saver and my ssh-add -D
invocation seem sufficient. the added settings in keychain access end up requiring a password to unlock the screen saver, then the same password again to unlock the keychain, then the ssh key passphrase.
install sleepwatcher to run the same script when the machine is suspended (because sleeping doesn't trigger the screensaver).
install the awesome icalviewer to put my ical calendars on the desktop. make it display 3 weeks on the desktop, go left, show relative times, show time remaining, disable special events list and todos, and set finish line color to white with an opacity 0 to effectively disable the finish line.
install firefox 3.5. safari is fast, but i just have too many add-ons that i need to be productive doing web development.
install some other random applications:
the result of all that is this.