Monthly Archives: December 2012

Kickstarter: “War for the Overworld” #

Consider being a Kickstarter backer for Dungeon Keeper 2, a very enjoyable game from yesteryear.

As with Dungeon Keeper, the player assumes the role of an “evil” fantasy dungeon overseer tasked with protecting his domain from questing do-gooder heroes sent to vanquish him. Looks to be a blast, and the project updates inspire confidence thus far.

Go be a backer!

Upgrading SQLite (and the up arrow key) #

I noticed the current version of SQLite now supports foreign key constraints. (Previous versions would parse the definition, but not enforce the constraint.) I wanted to take advantage of this in a project I’m working on, but it was oddly a bit convoluted to get there. I don’t know why my installed version was more than three years old (pre v3.6.19, which was released Oct of 2009), but it was definitely time for an upgrade.

Simply downloading and replacing the pre-compiled binary didn’t work well; I lost the functionality of the up arrow key (to recall the previous line), and encountered the escape sequence “^]]A” instead.

Some Google searching led me this answer on Stack Overflow, which was only partly helpful. It essentially says the pre-compiled binary isn’t linked to a readline library, so that support isn’t baked in by default. I’d have to compile from source to get that functionality back. (Why it’s not precompiled that way for a default OS X install, I don’t know.)

If you download the “autoconf” source … then you can compile it via the terminal (cd to the directory the tarball extracts to):

$ ./configure
$ make
$ sudo make install

Stack Overflow answer by AmbroseChapel

Mid-way into the ./configure, however, the process died as no C compiler was found by the script. Grr. I recently upgraded my computer, and it seems not all of the *nix pieces in the background transferred over as I had hoped.

Supposedly, the easiest way to get these installed is through the preferences dialog in Xcode. It’s an oddly slow download, and kept failing on me at the end with a “Failed to mount … not recognized error.” Repeated attempts yielded the same result. More searching revealed the problem was seemingly common, and solvable by attempting the download through either Tor or a VPN. So, I spent some time trying to get my school’s VPN software installed. (It took about an hour, due to almost no documentation, old software from my school, and wishing to avoid the Cisco client in favor of the OS X native one.) I still ended up with an error after downloading through the VPN, but the install worked this time.

After that, the SQLite config/make process worked just fine … Except the install didn’t overwrite my previous binary but created a new one in a different PATH location. Simply deleting the old one didn’t work (for reasons I don’t entirely understand); the new one would be found by which, but would not run when the binary was called without the full path. Not wanting to troubleshoot further, I added a soft link to the old path, and the up arrow key now works.

That was a lot of work for a “small” feature.

Cracking VPN profiles #

I was going to write a long, tutorial-style post on how I was able to get my university’s VPN working on OS X without having to resort to the Cisco client, which is what they provide. (Doubly frustrating, as the first client offered for download is a PowerPC only version … it’s not clear it doesn’t work on Intel-Macs until after it’s installed and wants to restart the machine. Yes, the is an version that works on Intel-Macs, but it has a different client name and is less prominently displayed.)

Turns out, the native client isn’t necessary, as an excellent (and generic) guide to using the native VPN client already exists, complete with a web-accessible tool for decrypting the “shared secret”. (Decryption took less than two seconds. Another online decryption service is here.)

The profile files are available publicly (complete with the “encoded” yet easily decoded “shared secret”), and can easily be found with a Google search (although I had to use the cached pages, as the university recently changed all of their support links, and the redirects point to a generic page).

It’s a bit strange that the “shared secret” is “guarded” so closely, particularly when the VPN is only usable via the university’s authentication. It seems it would be easier to simply offer instructions on how to use the native client, rather than offering multiple downloads.

The native client is nice. I find it much easier to use, and more consistent with the look and feel of OS X than the Cisco one.

Hire Tom! Hire Tom!