opensim-gui icon indicating copy to clipboard operation
opensim-gui copied to clipboard

deb package for OpenSIM?

Open marnunez opened this issue 4 years ago • 5 comments

Hi! I'm leaving this issue here just to test weather there's some interest in packaging opensim-core and opensim-gui as an apt package for use in Debian, Ubuntu and their derivatives. After all the work @halleysfifthinc did in #1181, the final cherry to the ice cream would be to create separate packages, perhaps opensim-core, python3-opensim and opensim-gui. The packages could be built in Github actions from existing tarballs, so AFAIK there shouldn't be any big computational cost to it. They could even be eventually uploaded to the Debian/Ubuntu repositories. Any thoughts on the matter?

marnunez avatar May 25 '20 21:05 marnunez

This would be fantastic.

Another option is to package the GUI as a Snap, so it is available on all Linux variants.

We should do both! It would be fantastic if community members were interested in starting this. I can provide some guidelines based on the packaging of Simbody for Debian.

I might have time for making the Snap but not the Debian package.

https://snapcraft.io/first-snap#

chrisdembia avatar Jun 08 '20 23:06 chrisdembia

@AlbertoCasasOrtiz What does it take to do this, and what's the pros/cons?

aymanhab avatar Dec 05 '22 22:12 aymanhab

@aymanhab Creating a deb package looks like a complex process but it would be the best way of distributing opensim to Linux users. As Chris said, having a snap package is also a great idea.

For the deb package, I am sure the Debian and Ubuntu communities could help us building the packages. Also, if we could upload it to official Ubuntu/Debian repositories, users could install opensim easily by just executing a command (something like: sudo apt install opensim-core and sudo apt install opensim-gui).

This presentation that I found in debian website explains the advantages of having a deb package: https://www.debian.org/doc/manuals/packaging-tutorial/packaging-tutorial.en.pdf

I think the most interesting thing for us is that, according to that presentation, that would make opensim available for:

  • 12 ports (architectures), including 2 non-Linux (Hurd; KFreeBSD)
  • Also used by 120 Debian derivative distributions

For the snap package, and based on the link that Chris shared, look like creating the snap package is similar to how we are building the conda package. Thus, this may be the easiest option, also making it available for many different distributions.

Another option is appimage. From their website:

Distribute your desktop Linux application in the AppImage format and win users running all common Linux distributions. Package once and run everywhere. Reach users on all major desktop distributions.

AlbertoCasasOrtiz avatar Dec 08 '22 21:12 AlbertoCasasOrtiz

Thanks @AlbertoCasasOrtiz

aymanhab avatar Dec 08 '22 21:12 aymanhab

My impression of packaging for Linux is that snap is easier than a debian package, and would integrate well with Ubuntu thru their app/snap store, but I think a debian package might be more broadly useful (Ubuntu/Canonical is the only distro that has built-in/default support on snaps, afaik). Personally, I would prefer a debian package, and bare debian packages (ie not in the debian/Ubuntu repositories) can still easily be installed by sudo dpkg -i opensim.deb.

halleysfifthinc avatar Dec 08 '22 22:12 halleysfifthinc