are there any free solutions (or self hosted) for ...
# compose-desktop
a
are there any free solutions (or self hosted) for auto-updating jetpack compose apps? I am aware that “anything that works for java apps should work for jetpack compose desktop” but I am looking for specifics
l
If the project's open source, I hear conveyor is a good choice. I believe it's free for open source projects.
t
It’s not completely free, but the Microsoft Store and/or Apple App Store could be an option.
a
@Landry Norris it’s a closed source, paid app. @Thomas good suggestion. might have to go that route as I’ve been finding it a headache to handle auto-updates.
One thing I like from electron is their auto-update solutions that integrate well with the OS. the framework itself has an auto-updater API and there are various services that plug into it. I was using vercel’s hazel
I would love to do something similar for jetpack compose desktop apps, but I am clueless about how the java world auto-updates apps
m
If it is a “closed source, paid app” then it should not be a problem to also pay a small fee for Conveyor. Compared to the headaches you would have otherwise this should pay off rather quickly. During the introductory period Conveyor is free for everyone anyway. So you could try it without risk. (I am in no way affiliated with them. Just sharing my opinion.)
m
@Alex Styl I totally get that you're doing a spare time project so don't want to pay for Conveyor, whilst also keeping your app proprietary. The nice thing about Hydraulic being a small company is we can come up with alternative arrangements very easily. It would have saved you a lot of time so far to use it, so maybe it's worth us having a quick chat to figure out an arrangement that can work for you - one where you can keep the option of commercializing your app in future, without needing to pay up front today for example?
W.R.T. Electron, their solutions have a lot of problems and quirks. Squirrel goes through long periods where it's abandoned, it's a very confusing mishmash of tools, and they seem to require a dynamic update server for which the implementations are mostly also abandoned. There's a public server available but it's only for open source projects. Otherwise you'll have to run your own, which means ongoing rent for a VM and figuring out how to run one of those unmaintained servers. With Conveyor you just need a static web host e.g. S3 bucket. So it's not a panacea and we support Electron apps too for that reason, we've got some interest from Electron users as a consequence.
Re: how do other Java projects do it? They don't. It's one of the big weaknesses of the JVM ecosystem that drives people to Electron, even though Electron isn't really ideal in a lot of ways. They did the work to build and integrate software updates out of the box, which is essential, whereas
jpackage
ignores the issue.
a
@mikehearn it doesn’t make sense for me to pay for something I already have in my app. I already have a mechanism where people know there’s a new version available and they have to manually download and update. not ideal but it works. Also I am not working on a ‘spare time project’
m
Ah OK. I thought you were, and that's why any solution had to be free. OK then.