Open ryanccn opened 2 years ago
Change updater to use other formats?
It's worth noting that this is what Sparkle (the update framework for macOS) has to say about this (emphasis mine):
Sparkle supports updating from ZIP archives, tarballs, disk images (DMGs), and installer packages. While you can reuse the same archive for distribution of your app on your website, we recommend serving ZIPs or tarballs (e.g. tar.xz) for updates because they are the fastest and most reliable formats for Sparkle. Disk images (DMGs) can be significantly slower to extract programmatically and sometimes be less reliable to attach/detach. Installer packages should rarely be used for distribution or updates (i.e. only for kexts, but not for installing daemons or installing system extensions).
Yeah I was more thinking of using the .zips for the updater, but idk it isn't really necessary to change that part since it's internal.
honestly i think tar.gz is fine, dmgs are less and less used and zips remove executable bits
on macOS everything in zips seems to be given an executable bit by default or something on decompress, haven't run into permission issues with apps from zips (such as Visual Studio Code).
DMGs could be useful for clueless users who have no idea what to do tho
dmgs are less and less used and zips remove executable bits
I only have used dmg to install application, and most of the application offer dmg as the only(minecraft launcher) or default option. I don't think they are becoming less used??
zips remove executable bits
?? wdym
With zip file, you have to extract its contents to the current directory, and then you would then have to browse to in the Finder and drag to somewhere yourself.
DMGs could be useful for clueless users who have no idea what to do tho
Most of the people who use macOS prefer dmgs. and it doesnt make you clueless.
Also pls do this process: https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution It will make the installing experience much better
dmgs are less and less used and zips remove executable bits
I only have used dmg to install application, and most of the application offer dmg as the only(minecraft launcher) or default option. I don't think they are becoming less used??
As I said, less apps are using dmg because it's slow
zips remove executable bits
?? wdym
With zip file, you have to extract its contents to the current directory, and then you would then have to browse to in the Finder and drag to somewhere yourself.
If you read above, we used zips initially but they removed executable bits so the .app didn't run :p
DMGs could be useful for clueless users who have no idea what to do tho
Most of the people who use macOS prefer dmgs. and it doesnt make you clueless.
Also pls do this process: https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution It will make the installing experience much better
honestly the process is the same between dmg and not not dmg, so :P
As I said, less apps are using dmg because it's slow
Surely tell me an app that doesn't use dmgs. The slowness can depend on the size. and also like what do you expect the process installing the application to be? Instantaneous?
If you read above, we used zips initially but they removed executable bits so the .app didn't run :p
What are "executable bits"? like custom scripts other than the application itself?
honestly the process is the same between dmg and not not dmg, so :P
DMGs are fun to install. You also get the satisfying 'ding' sound after it done. You can add a custom background as well (: eg:
Also pls do this process: https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution It will make the installing experience much better
Well, it does require the maintainers to pay Apple ~$99/year, so I doubt it’s high priority
(the fee can be waived for nonprofit organizations, but I don’t think there is one for the launcher)
IMO .tar.gz is fine. You just double-click it and Finder will extract it for you. Then you can move that to Applications or leave it in your Downloads folder.
and also like what do you expect the process installing the application to be? Instantaneous?
The point was about DMG being slower than normal archives.
What are "executable bits"? like custom scripts other than the application itself?
On UNIX-like systems, applications need to have an executable
flag set to be able to run. ZIP files do not support these.
Well, it does require the maintainers to pay Apple ~$99/year, so I doubt it’s high priority
We will probably do it eventually, as we got funding on Open Collective. I wouldn't mind if our macOS users specifically would donate for this, as most of our user base will not profit from us spending our budget on the Apple developer program.
Fair enough. But still just also build dmg file. Don't need another fork of multimc just to add dmg support. The only reason I could find for dmg being slow is because of the better compression(this and advantage imo since it take less time to download)
.zip is definitely a more widely used compression format on macOS, so I think it would be worth it to add distribution for it.
https://github.com/ryanccn/PrismLauncher/actions/runs/3306718631 I've tested this and it works fine. Should I open a PR?
.zip and .tar.gz work identically on macOS. I don't see a reason we would need both
Maybe offer dmg since it different than .zip and .tar.gz?
Maybe offer dmg since it different than .zip and .tar.gz?
.dmg would require an extra step in installing dependencies for creating DMGs (e.g. https://www.npmjs.com/package/create-dmg), and it doesn't provide that much of a benefit.
Goal
Use .zip and .dmg (?) for packaging on macOS while keeping .tar.gz's for backwards compatibility
Motivation
More commonly used formats for macOS app distribution.
Specification
Drawbacks
Not really.
Unresolved Questions
No
Alternatives Considered
No
This suggestion is unique
You may use the editor below to elaborate further.
No response