Search Mac Software Downloads
|
DESCRIPTION

Sparkle is a module that developers can stick in their Cocoa applications (five-step install!) to get instant self-update functionality. By that, I mean that your app will be able to update itself, not just check for new versions: it'll read the update information from an appcast on your server, download, extract, install, restart, and even offer to show the users release notes before they decide if they want to update.

It's free, it's easy, and it’ll make using a Mac better for everyone, so go for it! Make sure to visit Sparkle's homepage to see a video of it in action.

Features
  • True self-updating - no action required from the user.
  • Supports appcasts for release information. Appcasts are cool.
  • Extracts updates from .tar, .tbz, and .tgz archives.
  • Displays a detailed status window to the user.
  • Can display release notes to the user before updating.
  • Seamless app integration - there's no mention of Sparkle anywhere; your app’s name and icon are inserted everywhere automatically.
  • Really, really easy to install.
  • You don't have to put any glue code for Sparkle anywhere in your project (it's all through IB), so it’s trivial to upgrade or remove the module.
  • (Should be) good about error handling in bad conditions.
WHAT'S NEW
Version 1.5b6:
  • Important Changes
    • Sparkle now requires DSA signatures on your updates. Check the documentation for more information on how to set that up if you don't already sign your updates. You can bypass this requirement if you deliver both your appcast and your updates over SSL.
  • Sparkle will no longer display release notes located at file:// URLs, since Javascript on such a page would be able to read files on your file system.
  • For security reasons, Sparkle will refuse to install updates which appear to "downgrade" the app.
  • SUUpdater now implements new keys: "automaticallyDownloadsUpdates", "lastUpdateCheckDate", and "sendsSystemProfile."
  • Fixed a bug that could prevent SUProbingUpdateDriver from working.
  • Fixed a bug that prevented the updaterWillRelaunchApplication: delegate method from getting called.
  • Fixed displaying release notes transmitted "loose" in the key.
  • Fixed Sparkle compilation on 10.4 systems.
  • Fixed a bug that could cause window confusion if an app changed its LSUIElement at runtime.
  • Added support for Sparkle 1.1's behavior of disabling updates when the check interval is 0.
  • Sparkle can now handle appending parameters to URLs which already have parameters.
  • If an update's sparkle:shortVersionString is the same as the host's CFBundleShortVersionString, the sparkle:version and CFBundleVersion will be presented in parentheticals.
REQUIREMENTS
Mac OS X 10.3.9 or later.

Bookmark and Share

SCREENSHOT

Developer:Andy Matuschak
Downloads:4,753
  - Version d/l:271
Development:Libraries
License:Free
Date:21 Aug 2009
Platform:PPC/Intel
OTHER PEOPLE SUGGEST
Suggest something else:
Sparkle User Reviews (10 posts)Write A Review
sort: smiles | time
Jun 16 2009

TAPPER  THis is my favorite Mac updater. I hope more developers use it. Very clear and intuituve.  
(Version 1.5b5)

praisebury
0
[ Reply ]
Aug 14 2008
*****

TONY ARNOLD  Sparkle is indispensable if you're a small developer. Until Apple releases something that handles what Sparkle does at an operating system level I'll be including the Sparkle framework in all of my apps.

Absolutely brilliant, Andy - keep up the great work!  
(Version 1.5b5)

praisebury
0
[ Reply ]
Jul 25 2008
*....

BORLOX  Am I the only one who thinks this is a bad idea?

Applications that don't need to access the network, shouldn't. The Mac OS is moving toward a sandbox security model in which applications can be selectively allowed access to kernel facilities such as I/O and networking. This framework conflicts with that model.

A security-conscious user should have an admin account that is used only for administrative tasks such as software installation. Only the apps that are required for those tasks should run in that account. All other work should be done in another account, without admin privileges. Sparkle conflicts with that model, too.

The one time I tried it, Sparkle installed an app bundle with wrong, wide open, permissions.

Unfortunately, more and more developers are included this waste of disk space in their products, and you can't remove it, because then the apps won't launch.  
(Version 1.5b4)

praisebury
-8
[ 1 Reply - Reply ]
Replies:
Aug 21 2009

ROBOTANK  While I realize your point about user accounts is valid and that there are potential issues with applications phoning home (I don't really know anything about where OS X security is heading, so I can't judge that comment), consider that many, or even most, users don't know and/or care enough about their operating system or its security to bother with such concerns. Learning about UNIX permissions and creating multiple user accounts for different tasks simply aren't things that your average Mac user is going to do. Casual computer users like things that work with minimal effort on their part, and Sparkle does just that. Admittedly, it's only simplifying an already fairly simple process in most cases, but it is still a convenience and a time saver, and so people will continue to like it and use it. For your own part, can't you simply disable automatic update checking in apps with Sparkle and update them manually?  
(Version 1.5b6)

praisebury
0

Jun 6 2008

HOFMAN  The concept is really nice. But unfortunately the implementation is very buggy. There are some critical bugs, and it has a huge chance to lead to namespace clashes, due to its implementation of many categories on Cocoa objects. Due to the nature of this framework, as a simple drop-in utility, this is pretty serious. Moreover the localizations are missing.

Anyone should be aware this is a *beta* version. MU should have noted this, probably this version should not have been listed at all.

I strongly advice developers not to use this version. And if you do, be aware that you *must* fix its bugs and be very well aware of the namespace problems.  
(Version 1.5b1)

praisebury
0
[ Reply ]
Jun 1 2008
*****

ZWEI  This is how updates should be done!  
(Version 1.5b1)

praisebury
0
[ Reply ]
Mar 30 2007

GUILLAUMEK  Too bad the dev's site has been down for some time now. Is this stil being developped?  
(Version 1.1)

praisebury
0
[ 3 Replies - Reply ]
Replies:
Mar 30 2007

MACUPDATE ADMIN  I sent the developer an email just now... I'll post his reply as soon as I get it.  
(Version 1.1)

praisebury
0
Mar 30 2007

GUILLAUMEK  That was quick! :) nice.  
(Version 1.1)

praisebury
0
Apr 3 2007

GUILLAUMEK  "Sorry, but the SQLite database behind Sparkle's site exploded in a giant fireball, and Caltech is an unrelenting work-slinging monster, so I don't have time to fix it at the moment. I'd really appreciate it if you didn't send me emails about the site or with bug reports until I get the site back up. In the meantime, you can still download Sparkle here."

http://sparkle.andymatuschak.org/  
(Version 1.1)

praisebury
0

Jul 16 2006

NAMXAM  It would be great if you two could cooperate and create a quasi standard for the mac platform - something similar to Growl, just for software updates.  
(Version 1.1)

praisebury
0
[ Reply ]
Jan 25 2006
****½

BILLY RAY VALENTINE  Really easy to use, code all commented. Very well done.

I like it ;)

Thanks a lot.  
(Version 0.1.1)

praisebury
0
[ Reply ]
Jan 25 2006

NATH31  sounds like a good updating app plugin. I cannot tell you the amount of times when I saw an update for an app, but wanted it to be a 2-click job, rather than loading the disk image, copying, replacing, etc....

this would be greatly appreciated.  
(Version 0.1.1)

praisebury
0
[ Reply ]
Jan 10 2006

SASCHA MüLLNER  Cool I am basically working at the same. I did it with a framework and a system preference and am thinking of integrating more features like updating all apps. instantly using the framework, mirror downloads with crc check. How about a coop? Would be cool if you could drop me a message - sascha!muellner.de

Kind regards,

Sascha  
(Version 0.1)

praisebury
0
[ 1 Reply - Reply ]
Replies:
Mar 16 2007

EDUO  Actually, if Sparkle had some way to "publish" its update parameters it could be scanned by your prefpane. It would be a good step in the right direction and would push both projects for adoption.  
(Version 1.1)

praisebury
0