Requires Mac OS X 10.6 or later
Since giving up a dedicated office space, I’ve found myself much more peripatetic than usual. That means working on different networks, some of which I may trust more than others, and in environments that require different combinations of system settings—audio volume, screen brightness, and more.
That’s where Sidekick comes in. This utility determines your current location and then automatically changes various settings. Previously known as NetworkLocation, and a free update to owners of NetworkLocation 3.1.4 or later, it was revamped in its 4.0 incarnation to look spiffier and to overhaul its location engine. Specifically, Sidekick now uses OS X’s CoreLocation technology to determine your Mac’s current whereabouts – in latitude and longitude – and use that location to trigger rules for system behaviour.
Because CoreLocation debuted on the Mac with Snow Leopard (Mac OS X 10.6), Sidekick works only with Snow Leopard and Lion (OS X 10.7). It also requires a live internet connection.
Sidekick’s operations are accessed via the app’s systemwide menu. The settings window shows you a list of defined places, which are each a combination of triggers based on geographic coordinates alone or any combination of location, available networks, and attached or network-reachable devices.
In the basic mode, you define a location by dropping a pin on a map or having Sidekick identify your current spot. Clicking Advanced lets you provide one or more associated locations by typing in an address or point of interest; you can also configure triggers based on specific networks and connected devices.
Sidekick lets you define a location by dropping a pin on a map or having the utility drop one for you. Actions associated with triggers are kicked off when you get in range of the location.
Triggers activate one or more actions, which you define by clicking the Add Action button. Available actions include application-specific options, such as opening a URL in a browser, changing your iChat status, or changing iTunes’s equaliser settings; and system options, such as connecting to a server, setting the timezone, starting a Time Machine backup, or locking the Keychain. (A number of third-party Sidekick extensions are available for integrating programs such as 1Password or Adium.) Alternatively, the Capture My Settings option automatically populates the list with various current settings.
You can manually switch locations at any time by choosing the desired location from Sidekick’s menu. Manual switches can be use useful when you have a configuration that isn’t location specific – for example, a ‘minimise battery usage’ grouping that dims the screen, disables Wi-Fi and disables network and internet access by programs you routinely use.
But Sidekick’s marquee feature is automatic location switching based on where you are. A reasonable example of Sidekick usage might be that you wake up in the morning and peck away at email at home before grabbing your MacBook and heading for a train. The train has Wi-Fi and when you lift open the laptop’s screen, Sidekick identifies the train’s network – rather than your geographic location – and turns on your VPN connection, dims screen brightness and disables Bluetooth to save battery life, mutes sound to avoid bothering your fellow passengers and switches your desktop background to all black. It might also set your email server to a secure connection to Gmail.
You can also define a location by providing any combination of specific address, a set of networks, or devices present.
When you get to the office and plug your MacBook into AC power, Sidekick recognises the location and possibly the network. It increases screen brightness, fires up Bluetooth for your wireless headphones, bumps the volume back up and launches (and begins playing) iTunes. It also disconnects the VPN (an action that requires editing an AppleScript for initial setup) since you’re on a trusted network and hooks you into your office email system.
A limited subset of actions can also be triggered by leaving a place. This option lets you, for example, quit a program or change particular settings when you venture out of range of a given location. Sidekick is a bit more limited than its predecessor here, however, as Sidekick doesn’t let you change the diameter or area of a location you’ve defined. This means that if you want to use a college or corporate campus as a trigger, you need to avoid geographical cues and rely instead on network detection.
One complaint I had about NetworkLocation that carries over to Sidekick is that the list of Wi-Fi networks you can use as triggers isn’t populated by the contents of OS X’s list (in Network preferences) of previously used AirPort networks. Instead, you must manually type in network names or IP addresses. Sidekick also lacks the capability to use a network’s unique Wi-Fi network number (the BSSID), which would allow the utility to distinguish between identically named networks.
The program includes many useful actions, but also lets you run command-line scripts via Terminal, or launch programs or AppleScripts. This makes it more broadly useful beyond its built-in features. For example, I use Mailsmith for email, so while Mailsmith actions aren’t directly available, I can use AppleScript to change mail status from disabled to auto-connect and to trigger email retrieval.
Sidekick tracks your movements well, automatically switching profiles as you move between defined zones. Apple’s CoreLocation seems less accurate than the Skyhook Wi-Fi-positioning service used by NetworkLocation – sometimes by a little, sometimes by a lot – but for the rough purpose of determining a general location (as opposed to, say, geotagging photos), CoreLocation works well enough.
Sidekick isn’t the perfect solution for automatic settings updates, but between recognising where you’re at and letting you manually change groups of settings, it avoids most of the tedium of adapting your Mac to your current spot.