Posted by Tom Harrington
Over recent weeks I’ve been working on my own version of Sparkle, Andy Matuschak’s uber-cool auto-update framework for Cocoa apps. I love it– but at the same time, Omni Group’s Software Update Stats page just plain makes me drool. I so need data like that, and if I’d realized that back in 2002 I might have given up supporting 10.1 by now. Or not. But at least I’d know if dropping it was going to seriously inconvenience my customers.
So, I thought to myself, “Self, why not combine these ideas? I mean, if the app’s already contacting the server to check for an update, why not have it pass along some basic information about the Mac it’s running on at the time?” Since Sparkle’s open source and has a completely non-restrictive license, I decided to do it. However, Andy didn’t think it was something he wanted in the core Sparkle distribution.
So, here’s SparklePlus– Sparkle plus basic system profile information. This version of Sparkle is, as with the original, something you can pretty much just drop into your app and have it work. Do this, and the app will ask your users if it’s OK to include anonymous system information, and do its work without asking for any help from you.
Here’s a quick movie to show you what it looks like. Aside from this it’s exactly like Andy M’s movie. (And by the way– yes, we could use some help with localizing this window from people who speak languages other than English!)
There’s also some PHP code to use on your web host, along with a MySQL database. The distribution includes a README that explains how to use it. At the moment pretty graphs a la Omni are missing, but all in good time. The data gets collected, the eye candy will fit in later.
I’d like to thank Jonathan Wight for offering to host SparklePlus here at ironcoder.org, and for fixing some problems in the PHP code. Also numerous people in #macsb have been extremely helpful, looking over the code, putting it through its paces and making sure it seems ready for public consumption.
<
p>You can get SparklePlus 0.2 through SVN here at ironcoder.org. That’d be:
svn co http://ironcoder.org/svn/SparklePlus/tags/release-0.2
Or if you want to keep up to date with it, grab the trunk and take your chances:
svn co http://ironcoder.org/svn/SparklePlus/trunk
As of today it’s current with Andy’s latest SVN updates (that’s rev 686).