Take Me Home 1.0.1 Sent to App Store
I’ve submitted Take Me Home 1.0.1 to Apple. It’s a small UI update, so I’m hoping that it will be available within the next few days.
Take Me Home: Roadmap Announced
I’ve created a roadmap for Take Me Home that outlines my plans for new features. Take Me Home is currently at 1.0.0, and I hope to release version 1.3 by the end of January. I’m going to do one feature at a time to get new features out as soon as possible, rather than have big releases with lots of time between them.
Announcing “Take Me Home”
My first iPhone application is for sale! It’s called Take Me Home, and its sole utility is to create a map from your current location — automatically determined via GPS — to your saved home address, saving you clicks and providing convenience.
You can buy it on iTunes or check out my page for it. Take Me Home is 99 cents on the App Store.
Google Delivers Mac Google Earth API Plugin, But at What Cost?
UPDATE: Google has released a version of Google Earth (including the plugin) without the self-updating feature.
The Mac blogs around the ‘net are all abuzz today about Google’s release of a Mac version of the Google Maps API, but I noticed something funny when I installed it. The plug-in is a standard Mac Internet Plug-In, meaning you can install it at either /Library/Internet Plug-Ins or ~/Library/Internet Plug-Ins. So why does the install package prompt you for administrator credentials when you choose to install it into your home folder? The answer lives at /Library/Google.
It turns out that when you install the plugin, the installer also installs a software update component, code-named “keystone.” It installs the following components:
- An application bundle at
/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle - A “Ticket Store” at
/Library/Google/GoogleSoftwareUpdate/TicketStore/— does anyone know what this does? I sure don’t. - A LaunchDaemon that runs as root on demand, at
/Library/LaunchDaemons/com.google.keystone.daemon.plist - A LaunchAgent (
/Library/LaunchAgents/com.google.keystone.agent.plist) that runs when you’re logged in, presumably to fire up the daemon so you can receive updates without administrative privileges.
Interestingly enough, this software component is never mentioned by Google. It isn’t an option you can deselect in the installer. Even worse, the plugin’s uninstall instructions don’t say a thing about it. This means that after you follow the plugin uninstall instructions, your computer is still checking in with Google’s servers to make sure that it’s up-to-date. I’m reluctant to call this malware, but it sure seems like spyware, doesn’t it? At the very least the installer ought to mention something.
Be cautious when installing this plugin onto any computer where security is essential. Any software component that runs as root, such as the updater this installer installs, is another attack vector for intruders trying to get at your data.
For what it’s worth, the API plugin does work if you only copy the stuff in /Library/Internet Plug-Ins to a computer or to your user account, so it appears that you can still use the plugin in a secure environment, you’ll just have to update it yourself and not have Google do it for you.
I’ve also mentioned this on the official Google Group.
New Safari 3.2 Feature: Secure Website Identification
Here’s a quick tip that slipped through the blogosphere (at least none of the Mac blogs I subscribe to featured it): in Safari 3.2, released last week, Apple’s added a feature from Firefox 3’s “awesome bar”: when you’re on a secure website, such as a bank’s, that has identification information, it’s displayed in green (though in Safari it’s at the top-right of the title bar). A screenshot:

Safari 3.2 adds secure website information to the title bar.
Along with a phishing filter, it looks like Safari is stepping up to the plate as a secure browser.
Use DVD Player in Fullscreen Mode on an External Monitor
By default, DVD player will exit fullscreen mode when it’s not the active application. This is a problem if you want to watch a movie on an external monitor while working on a primary monitor. To get around it, go to Preferences in DVD Player (DVD Player -> Preferences… or command + ,), switch to the “Full Screen” tab, and ensure that “Remain in full screen when DVD Player is inactive” is checked. This should achieve the desired results.
Source: MacRumors.com Forums
Prevent Mac OS X Leopard from Prompting You to Start Synergyd Every Time You Use SynergyKM
So here’s an annoyance. Having just installed SynergyKM, a great front-end for the awesome command-line utility Synergy, launching it would result in the following prompt:
To fix this, you need to remove the extended attribute com.apple.quarantine that’s on the file. Fire up Terminal and enter the following commands:
sudo xattr -d com.apple.quarantine /Library/PreferencePanes/SynergyKM.prefPane/Contents/Resources/Synergyd.app
sudo xattr -d com.apple.quarantine /Library/PreferencePanes/SynergyKM.prefPane/Contents/Resources/Synergyd.app/Contents/MacOS/Synergyd
That will remove the flags and prevent the prompt.
Normally, you’d only see this prompt once, but since installing it for all users changes permissions such that your user account can’t remove the attribute, it isn’t removed.
Note: This is assuming that you’ve installed it for all users. If you’ve installed it for one user, it’ll be in ~/Library, not /Library.
Update: I’ve submitted a patch to SynergyKM’s SourceForge page, so if they accept it this will no longer be an issue.
Computers are Disgusting
I recently wrote a script to automatically install firmware updates for our Macs. The problem with them is that for some, you have to hold down the power button to finish the installation after the machine has turned itself off. Now I don’t know about you, but I sure as hell don’t want to go around to 900 or so Macs and hold down their power button after installing an update. This script, while it can’t hold down the button for me, does allow student staff to automate the proces up to that point. I don’t have to give them a password they could use to break the system, they can do the update for me, everybody wins. It’s a beautiful system.
Well, today, I was testing the script out. The problem with testing it is that you can only test a given computer once; once the firmware update is installed, it won’t show up as needing to be installed anymore. So, I packed up my stuff and went to our biggest computer lab to do some testing. My test subjects were some “CyberStations,” computers we have with basic web-browsing and e-mail loadsets. They’re relatively unused during the summer, so if I broke any it wouldn’t be a big deal. I went up to one, ran the update, and waited. That’s when smoke came out of the back of the computer as the update ran. Oh shit, I thought, this thing is on fire!
Let’s go back a minute to my description of CyberStations. Their loadset consists of a vanilla Mac OS X Leopard install with some applications taken out, Firefox, Thunderbird, and Adium. Basically, it has the Apple-provided web browser, e-mail client, and IM program, as well as the leading open-source alternative for each. Nothing on these computers is too taxing. As a consequence, the fans never need to run too heavily, as the computer never really gets too hot.
Back to the smoking machine. I was sure it was on fire—where there’s smoke, there’s fire, right? Well, the student employee to whom I was demonstrating the script wasn’t too sure. He placed his hand on the back of the computer (an iMac G5, not that it matters) and didn’t feel any heat. So, if it wasn’t smoke, what was it? That’s when I realized what had happened. The fans, never having been run too hard, hadn’t been blowing a whole lot of dust around. When they ran full speed during the firmware update, dust had come flying out of the computer’s vents. A white, puffy cloud composed largely of the dead skin cells that had fallen off of our users’ skin for years. It was coming out of the bottom, out of the back, and even where the screen met the case. I quickly held my breath and stepped back.
I’m really glad that we have student staff to do the rest of this.


