appimage, flatpak, snap
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
appimage, flatpak, snap
Which one would be a preferred choice from a point of view of FreeCAD user? and why?
On my distro (ubuntu 20.04 LTS based), I can have:
flatpak - master 19.3 but no link branch, I haven'tried how well it integrates.
appimage - anything I care to download and install, integration is mostly doable and not difficult.
snap - both master 19.3 and link branch available, but on my (oldish) distro there are issues with integration (mostly solved with help here on the forum).
There is plenty of discussion on flatpak/appimage/snap on the interweb, but I am interested in FreeCAD biased opinions/advice?
On my distro (ubuntu 20.04 LTS based), I can have:
flatpak - master 19.3 but no link branch, I haven'tried how well it integrates.
appimage - anything I care to download and install, integration is mostly doable and not difficult.
snap - both master 19.3 and link branch available, but on my (oldish) distro there are issues with integration (mostly solved with help here on the forum).
There is plenty of discussion on flatpak/appimage/snap on the interweb, but I am interested in FreeCAD biased opinions/advice?
Re: appimage, flatpak, snap
Flatpak
Flatpak will not build any nightly builds.(it's against the policy of the Flathub IIRC)
official freecad flatpak: https://flathub.org/apps/details/org.freecadweb.FreeCAD
repo: https://github.com/flathub/org.freecadweb.FreeCAD
Snap
Snap packaging: see Snap
AppImage
see AppImage
FreeCAD as a project has primarily used AppImage (but that's starting to change it seems)
Issue with AppImage:
AppImage is enormous. Downloading from github is hit or miss due to throttling and rate limiting. So trying to delta download (that is only download new portions of an AppImage instead of re-downloading the whole package) will result in timeouts and failures.
FreeCAD has never gotten AppImage to really integrate well. Functionality was added to update AppImage from within FC but with a lot of problems and not always super reliably (although i was able to just update successfully)
Flatpak will not build any nightly builds.(it's against the policy of the Flathub IIRC)
official freecad flatpak: https://flathub.org/apps/details/org.freecadweb.FreeCAD
repo: https://github.com/flathub/org.freecadweb.FreeCAD
Snap
Snap packaging: see Snap
AppImage
see AppImage
FreeCAD as a project has primarily used AppImage (but that's starting to change it seems)
Issue with AppImage:
AppImage is enormous. Downloading from github is hit or miss due to throttling and rate limiting. So trying to delta download (that is only download new portions of an AppImage instead of re-downloading the whole package) will result in timeouts and failures.
FreeCAD has never gotten AppImage to really integrate well. Functionality was added to update AppImage from within FC but with a lot of problems and not always super reliably (although i was able to just update successfully)
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
- adrianinsaval
- Veteran
- Posts: 5551
- Joined: Thu Apr 05, 2018 5:15 pm
Re: appimage, flatpak, snap
There's no definitive answer I think, but since you ask for biased opinions, flatpak has worked great for me, I'm using it for the stable release and self-built packages and the appimage for dev branches/master. Unlike the appimage Flatpak integrates properly my system theme (breeze in KDE with custom colorscheme), the config file is separate to my other installations but the rest of the .FreeCAD is shared with the rest (this can be a pro or a con depending on your preference). The appimage is very convenient too but it has it flaws, installing (you need a web a browser) and updating is not as seamless, and some time ago they broke because a system library was updated in many distros and the supposedly universal appimage was incompatible (tbf this should be blamed on the people developing that library, breaking changes in a core library is not a good thing but who knows maybe they had a good reason). Given all the issues that have been mentioned several times with the snap and my general dislike of the philosophy behind it I haven't bothered trying out the snap.
Conclusion: flatpak (or your distro's package if it exist and doesn't give trouble but I guess that's already discarded hence the question) for stable, appimage for master, sudo *insert your distro's package removal command* snapd
Conclusion: flatpak (or your distro's package if it exist and doesn't give trouble but I guess that's already discarded hence the question) for stable, appimage for master, sudo *insert your distro's package removal command* snapd
- adrianinsaval
- Veteran
- Posts: 5551
- Joined: Thu Apr 05, 2018 5:15 pm
Re: appimage, flatpak, snap
true, it's theoretically posible to make a separate flatpak repo like the ppa that distributes daily builds however that's not happening in the near future unless someone puts the pants on and does it. So flatpak is great for stable but snap is the most convenient to install option for master while the appimage is probably better in terms of functionality and usage simplicity.
Re: appimage, flatpak, snap
Does the flatpak use the native file chooser, i.e. xdg-desktop-portal's dialog, or does it use the internal one?adrianinsaval wrote: ↑Wed Jan 26, 2022 12:50 pm Conclusion: flatpak (or your distro's package if it exist and doesn't give trouble but I guess that's already discarded hence the question) for stable
Re: appimage, flatpak, snap
Indeed. Here's a proof of concept where flatpak generated a HEAD buildadrianinsaval wrote: ↑Wed Jan 26, 2022 1:05 pmtrue, it's theoretically posible to make a separate flatpak repo like the ppa that distributes daily builds however that's not happening in the near future unless someone puts the pants on and does it.
https://github.com/flathub/org.freecadw ... AD/pull/52
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Re: appimage, flatpak, snap
You can also ask @hfiguiere on https://github.com/flathub/org.freecadweb.FreeCAD/
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
- adrianinsaval
- Veteran
- Posts: 5551
- Joined: Thu Apr 05, 2018 5:15 pm
Re: appimage, flatpak, snap
I had configured my FreeCAD to use the internal qt dialog even in the distro's package version for another reason (and I copied my config to the flatpak's) so it's using that, will check later what it uses when that option is not set.ppd wrote: ↑Wed Jan 26, 2022 1:26 pmDoes the flatpak use the native file chooser, i.e. xdg-desktop-portal's dialog, or does it use the internal one?adrianinsaval wrote: ↑Wed Jan 26, 2022 12:50 pm Conclusion: flatpak (or your distro's package if it exist and doesn't give trouble but I guess that's already discarded hence the question) for stable
Yes I was actually having a look to that after I posted and I think it's possible to make automatic builds with github actions however I have no idea where I could host a repo or how to do it.Kunda1 wrote: ↑Wed Jan 26, 2022 3:13 pm Indeed. Here's a proof of concept where flatpak generated a HEAD build
https://github.com/flathub/org.freecadw ... AD/pull/52
Re: appimage, flatpak, snap
Thank you all for your replies.
It seems to me that much vaunted "better integration" of snap packages is a bit of a mirage
I had similar problems with flatpak packages (not FreeCAD) caused by sandboxing (also portal problems).
My conclusion from this discussion is that both snap and flatpak are good for stable, straight (i.e. everything where designers expect it), and
latest versions of OS. Plus of course one must be happy with automatic updates
For everything else i.e. older OS, no-standard file locations, experimental, daily etc, etc, I am better off with appimage.
All the integration takes a bit more (not a lot) effort but it can be done and I feel much more in control.
Of course it is subjective, biased (an possibly misinformed)
but I will stick with appimages - thank you
It seems to me that much vaunted "better integration" of snap packages is a bit of a mirage
I had similar problems with flatpak packages (not FreeCAD) caused by sandboxing (also portal problems).
My conclusion from this discussion is that both snap and flatpak are good for stable, straight (i.e. everything where designers expect it), and
latest versions of OS. Plus of course one must be happy with automatic updates
For everything else i.e. older OS, no-standard file locations, experimental, daily etc, etc, I am better off with appimage.
All the integration takes a bit more (not a lot) effort but it can be done and I feel much more in control.
Of course it is subjective, biased (an possibly misinformed)
but I will stick with appimages - thank you
Re: appimage, flatpak, snap
I am not really qualified to answer, but....
my chosen distro is very hot on flatpak, so I tried some at first and immediately had problems which were suggested/diagnosed as a consequence of flatpak packaging and sandboxing and a suspicion about a choice of portal it was using...
Installing non-flatpak version solved the problems