Can a Linux user explain how chob, snap, flatpak and appimage relate to Gramps? Can we simplify the Downloads page again?
The latest 5.1.4 release was the first that had a Flatpak installer for non-techie Linux users. At least, it was the first where it was posted about the same time as the installers for Windows & macOS users.
So the installation docs probably need to evolve. Perhaps there can be a Linux distribution agnostic instruction section instead of that huge table of distros? It is a pain to keep that table accurate.
When Gramps started out, the installation was always for techies. So the Download page was stuffed to the gills with caveats, gotchas, and tweaking information for Linux. When the Windows & macOS ports were added, the complexity was multiplied by all their idiosyncracies.
But then the All-In-One and .dmg installers allowed the instructions to be pared back for those OSes. (Although we now need a separate Techie page to explain the manual install for each OS… just in case those installer options disappear unexpectedly.)
I haven’t used chob before, but doing a quick search I see that this is a way to search across the repositories for snap, flatpak and appimage.
flatpak, snap and appimage all aim to be disto-agnostic. All have some level of sandboxing and they all contain all of the needed dependencies for an application to run.
My use of flatpak shows that the application is typically downloaded from flathub and the user needs to run a command to update any installed flatpak applications. One can also check for updates with a flatpak command. The publisher needs to put the application in a repository that the user knows about. Flatpak requires the installation of the application and that will pull down any dependencies, if needed. Flatpaks can be installed for the system when run as root or in an individual user’s home directory. Running a flatpak is not as simple as executing “gramps”, instead it’s “flatpak run org.gramps_project.Gramps”.
I have used appimage as individual downloads from a website without a repository. The image file is an executable itself, nothing to install. This seems like a simple way to go, although likely the largest image file. The publisher can put this file on their website for download.
From what I’ve seen, snap appears to be limited to Ubuntu and the user has no control over when updates occur. Due to this I try and avoid snaps where possible.
Personally I prefer flatpak as I’ve seen it on multiple distributions and I control when it updates and it has an easy way to check for updates.
Right now I’m using gramps from the Ubuntu repository on Ubuntu 20.04 and that has me at version 5.1.2. I see that 5.1.4 is available on the website.
I expect that flatpak and appimage are easier for a developer to publish to rather than trying to create appropriate rpms and/or debs for the other major distributions and then having a repository to publish them from.