3 ms·
> Relying on npm seems a bit awkward. 1. npm solves a few problems here. By publishing to npm, the app is instantly available to be downloaded and installed b
by shannah78 5y ago
> Relying on npm seems a bit awkward.
1. npm solves a few problems here. By publishing to npm, the app is instantly available to be downloaded and installed by users.
2. Auto updating. The launcher will automatically check for updates on launch, and download them if any are found so that users are always working with your latest version.
I may add support for other CDNs - and originally I just had it so you self host. But npm removes a lot fo complexity. It only takes a minute to create an account, and then you can publish.
> I might suggest using native packages, especially on mac; something like a DMG or .package.
> Relying on npm seems a bit awkward.
1. npm solves a few problems here. By publishing to npm, the app is instantly available to be downloaded and installed by users.
2. Auto updating. The launcher will automatically check for updates on launch, and download them if any are found so that users are always working with your latest version.
I may add support for other CDNs - and originally I just had it so you self host. But npm removes a lot fo complexity. It only takes a minute to create an account, and then you can publish.
> I might suggest using native packages, especially on mac; something like a DMG or .package
The trouble with DMG and .pkg is that they need to be codesigned and notarized individually - which means you need a Mac and an Apple Developer account. Using jDeploy you don't need a Mac, and you don't need to worry about codesigning. This is because the installer is already signed and notarized. This probably the biggest pain point that I wanted to solve with jDeploy.
- RandyRanderson 5y agoconda might be another option. Apparently it does anything (not just python packages). https://github.com/conda-forge/miniforge https://github.com/conda-forge/miniforge
- cosmotic 5y agoI presume jdeploy is using its own code-signing to bootstrap the download and installation of other apps. Why not bootstrap a pkg?
- shannah78 5y agoYes the jDeploy installer is codesigned and notarized. The same installer is reused for every app. It figures out the specific app to be installed from a code in the installer name, so that, when run, the installer installs the correct app. With a pkg I would need a different pkg for every app - which would need to be codesigned. Then we're back at the "need a mac to build mac app" issue. I wanted jDeploy fulfill WORA to whatever extent possible.
- seinecle 5y agoI had tried uploaded dmg to github (free hosting) and using github actions for the signing and notarization. Plus update4j for the automatic updates. All worked fine except for the notarization, never cracked this one.
- Folcon 5y agoApologies for how much junk is in here[0], I finally figured out notarization and then lost the will to touch it. I'm planning on circling back to clean it up in a few weeks when that entire pile of stress is a bit more of a distant memory, but hopefully it's helpful? =)... - [0]: https://github.com/Folcon/fruit-economy/blob/185d49f120bac18355d34721ba7c24178fa5da14/.github/workflows/build-release-artifacts.yml#L119 https://github.com/Folcon/fruit-economy/blob/185d49f120bac18...