ontodev / robot

ROBOT is an OBO Tool
http://robot.obolibrary.org
BSD 3-Clause "New" or "Revised" License
259 stars 73 forks source link

Consider packaging ROBOT with platform-specific packages #827

Open jamesaoverton opened 3 years ago

jamesaoverton commented 3 years ago

After frustration with #826, I did some research. Java 15 comes with a (new?) tool called jpackage which claims to support:

I hope that it would also install Java as required, but I don't know. There are GitHub Actions for this, such as https://github.com/sualeh/build-jpackage, blog post.

Another good target would be Homebrew, but that would require a different tool.

I expect this would be a pain for developers to set up, but hopefully it would "just work" going forward. I think that users would appreciate this but I don't know.

Thoughts? Experience to share? Volunteers?

balhoff commented 3 years ago

We may want to look into making a Graal native image so we can provide a single-file native executable for Mac and others. Probably makes more sense for a command-line tool vs. packaging as .app. And in my experience Graal has excellent performance.

jamesaoverton commented 3 years ago

Good point @balhoff. That would save the hassle of installing Java.

There would still be the hassle of putting the file on the PATH and making it executable. I guess that's why people use sudo curl http://example.com/install > sh, scary as that is.