I prefer having tap-to-click enabled on my MacBook Pro. However, it's always been annoying to me that when I was at the login screen, I had to use the trackpad button. I asked one of the Geniuses at the local Mac store, and he told me it wasn't possible. Not believing that it wasn't possible, I spent some time googling and looking around for the setting.
After some digging, I found it in a hidden preferences file called .GlobalPreferences.plist in my user's Library/Preferences folder. I found the same file in the top-level /Library/Preferences folder, and then added the com.apple.mouse.tapBehavior setting as a class of Number with a value of 1 and saved the file.
Now my login screen works the way I expect it to, and as an added benefit, new user accounts now default to having tap-to-click enabled.
[robg adds: The easiest way to add this key to the global file is to have Apple's Xcode Developer Tools installed. Then in Terminal, you can cd /Library/Preferences and then type open .GlobalPreferences.plist, and the Property List Editor will open.]
The keyboard and trackpad completely failed on a friend's MacBook Pro Intel Core 2 Duo 15.4" running OS 10.4. According to Apple tech support, this had something to do with power management, and he gave this procedure to restore functionality, which worked:
Remove battery and power adapter.
Hold down power button for 10 seconds.
Reinstall battery and attach power adapter.
Hold down Command-Option-P-R, a total of four keys, and press power button. Don't release the keys.
Continue holding the four keys until you hear the startup sound twice, then release.
After doing this, the machine should then boot up with normal function.
[robg adds: To be completely precise, MacBooks and MacBook Pros manage ppower through the System Management Controller (SMC), and here are Apple's official reset instructions for those machines. For PowerPC portables, power was managed by the Power Management Unit (PMU), and here are those reset instructions. As noted in both articles, resetting the SMC/PMU should always be the fix of last resort.]
Some years ago (many Mac OS X revisions ago) when I used a beautiful Titanium PowerBook, it lost its ability to automatically reconnect to a known wireless network when waking from sleep. When I got my MacBook Pro, I used the OS X automatic copy to migrate to the new machine. The MacBook Pro inherited the same stupid reconnect problem. Upon waking, I have to go to the AirPort menu and choose a network, and the machine would connect. I've tried all the solutions on MacFixIt, and those I found here on MacOSXHints (excluding wiping the drive and starting from scratch). Nothing worked.
A few days ago I was presented with a great big hint as to what the problem was, when I saw my default wireless network listed in System Profiler. That network was an old one I had used many years ago. It did not appear anywhere in the network System Preferences, or in any other utility app on my Mac. So I opened terminal and started grepping for that term in the various places where .plist files live. I found that network listed in preferences.plist, found here: /Library » Preferences » SystemConfiguration. I renamed the file, just in case, and rebooted.
The OS created a new preferences.plist file. I then went to Network system preferences and set up AirPort again. My existing networks were still there, but my locations were all gone. Easy enough to recreate those, so I did that. I also went to the Sharing System Preferences pane, and put in my computer name, which was also gone. I lost a VPN setup due to this as well, and a Bluetooth connection. IMPORTANT! Other items might also be missing, so check to make sure everything works as expected.
Next, I put the machine to sleep, then woke the machine. It logged into the default network automatically! Problem solved, after years of annoyance. Be advised that there could be some risk to doing this. If you have problems, you can just replace the newly created, but nearly empty, preferences.plist file with the one you saved.
[robg adds: Technically, it should be possible to edit the preferences.plist file, and remove just the references to the now-missing AirPort network. However, I'm not sure exactly what keys one should be looking for.]
If you encounter a "Bluetooth unavailable" error message once in a while on your portable Mac, try disconnecting your Bluetooth devices before you shut down / restart.
You can disconnect your Bluetooth devices by either switching them off, or by going to the Devices tab of the Bluetooth System Preferences panel, selecting the active device, and pressing Disconnect.
As long as I disconnect my devices first, I never see the error message.
[robg adds: I haven't seen any such issues on my MacBook Pro, but I figured this might be worth a shot for those who are experiencing the problem. If you have Bluetooth issues and try this hint, please post your experiences.]
I wrote an interesting script that will automatically take a picture when the machine wakes from sleep, then uploads and displays the image on your web site. I initially did this as an anti-theft measure. To make this work, you'll need a few things:
A personal website that will let you install PHP scripts.
bolGallery, a PHP photo gallery script, installed on your web site.
You can see the results of my efforts here. Apart from the nauseating effect of seeing my ugly mug over and over, the results are good. I hope to maybe do a timelapse in QuickTime sometime down the track!
[robg adds: I haven't tested this one. You'll need to customize the shell script with your site's FTP details, and remember to make it executable (chmod 755 progname). As explained on the linked site, you'll need to create a .wakeup file in your home directory, containing the full path to the shell script.]
My MacBook Pro's 100GB hard drive is not enough for my ever-growing collection of movies and music. So I purchased a 1TB external USB2 drive, which is a great solution when I'm not on the go. But sometimes, being a laptop, I want to have my music with me. It seems somewhat difficult to manage multiple iTunes libraries, and it's something I don't want to touch.
I solved this problem with two Automator scripts, VLC, and a Preference Pane called Do Somthing When. The first step is to get our tools:
First, install Do Something When... according to the instructions that come on the disk image. Second, put VLC somewhere in your Applications folder -- or, really, wherever. We'll come back to these in a second.
I'm amazed: I never knew this documentation page at apple.com existed. It explains in great detail how Apple's PowerBook/MacBook Pro keyboards interpret key presses, including how to get Alt Gr, right ctrl, windows, and menu keys, for switchers. Not much of this information is all that obscure; the keyboard viewer will show most of it. But it's useful to see it all compiled in one place.
First and foremost, I cannot take credit for this incredibly cool hint. I was searching Google for something completely unrelated and when the words SmackBook Pro appeared in the search results, I just couldn't resist clicking and having a look.
In summary, some very clever person has found a way to maintain muliple simultaneous desktops on their MacBook Pro (using Desktop Manager) and switch between them by ... yep, you've guessed it, gently smacking the side of the screen. More information on how to set this up, and a video of a 'SmackBook' in action, can be found at the above link.
[robg adds: This came out earlier this year, but I didn't think to run it as a hint. The above link provides detailed instructions on exactly what you need to do, as well as a set of downloadable code snippets to make it happen. I haven't tested it myself, and don't have any plans to do so...but the video is fairly interesting to watch.]
My new MacBook Pro is a fabulous machine with one problem -- it had a nasty 'burning' smell when the processor warmed up. I recognized this as the smell some computer components make as they're breaking in, but it was subtle and not going away (and really bothersome -- it would make my eyes red after prolonged exposure).
The solution? Make the machine run really hot. I downloaded the BOINC client and signed up for the SETI@Home project and set it to run whenever my computer was idle. Temperature Monitor showed the CPU running at 85°C (compared with 60°C for typical operation). The fans were whirring and lots of numbers were being crunched. At first, the smell was very pronounced when the BOINC client was running, so it seemed to be working. After running overnight every day for a week, the smell is completely gone, making this laptop just about perfect.
An interesting aside -- comparing my work units with other computers, this lowly laptop is besting some dual Xeon 2.8GHz servers by almost a factor of four in integer performance and doing 50% better on floating point. Not bad for a laptop. In turn, a Quad Mac Pro bests this laptop by a factor of eight. That's fast.
[robg adds: The burning smell is normal in many new electronic items, though my MacBook Pro didn't seem to have it. See this older hint for a simple way to load up the CPUs in your Mac, whether for an accelerated burn-in or testing performance under load. It's fast, and very effective -- if you have a machine with more than one CPU or core, just open one Terminal window per CPU/core, and run the command in each. Control-C to end when you're done.]
With the new MacBook Pro's including built-in iSight cameras, I thought it would be useful to take an iSight snapshot of anyone trying to break into my laptop. This is done by tailing /var/log/asl.log for invalid login attempts (both at the login screen and screen saver). I have created an authsight program (1.5KB download) that provides a monitoring daemon which calls the camera after an invalid login attempt, and also includes a launchd manifest. An iSight command line tool named iSightCapture is also required.
It would not be too difficult to modify this tool to call home and even email photos should a laptop be stolen.
[robg adds: I haven't tested this one, but there are easy install/uninstall instructions in the package.]