Update .app using Sparkle with a different bundle-identifier
Asked Answered
A

1

6

I am using Sparkle to update an application from 0.9.2 to 1.0.0.

In the new update, I have changed the CFBundleIdentifier of MyApp.app from com.MyCompany.MyApp to au.com.MyCompany.MyApp.

When I test downloading this update (through Sparkle which is inbuilt to MyApp.app), it downloads the update and then gives me a window with this message:

An error occurred while extracting the archive. Please try again later.

Is there any other way, apart from having users reinstall the application, to have Sparkle recognise the old CFBundleIdentifier and update it to the new one?

Aenneea answered 21/11, 2013 at 0:9 Comment(1)
Not yet, no fix has been published AFAIK. The only workaround feasible (which isn't the best) would be to include a message and link into the old app to re-download your software (either through an update using the old identifier, or through some kind of global message system if you have one). After that, then progress with your change, and build on your app with the new CFBundleIdentifier. I'm guessing for security reasons, you can't update the app to a new bundle identifier - I'm not expecting it to be implemented any time soon, if at all.Aenneea
D
2

You can't change the identifier if you use .dmg for updates.

.zip with a DSA signature might work.

If you use .pkg (or .sparkle_guided.pkg) to deliver the update you can do whatever you want.

Dorn answered 14/10, 2016 at 16:23 Comment(1)
Just tried that with Sparkle 1.21.3 - doesn't work (any more).Chill

© 2022 - 2024 — McMap. All rights reserved.