A big yes from me, I’ve used AppImages for years and can’t remember one problem.
A big yes from me too !
Yes. I currently use a community-packaged version of DarkTable, but I would appreciate having an official AppImage option.
If you chose not to release an official AppImage, I would continue to use the community-packaged versions or build it myself.
If you do decide to release AppImage binaries, I would point out that it may be worth doing a little bit of extra work to remove the libfuse2.0 dependency. Currently, AppImage defaults to using libfuse2.0 because there are some very old but still supported distros that don’t have libfuse3.0. However, some newer distros (notably Ubuntu) no longer ship libfuse2.0 by default having already moved on. As a result, some users may need to install an older version of the library as a dependency to run the AppImage (which slightly defeats the purpose and gets some folks riled up in forums or GitHub issues).
There’s some controversy about the project’s choice to stick with libfuse2.0 as the default, but there’s nothing technically preventing anyone from bumping libfuse to the newer version and giving up compatibility with those very old distributions.
N.B. The 4.8 appimage is at the bottom of this page - Release release 4.8.0 · darktable-org/darktable · GitHub
Curiosity question: which is easier for the dev team, preparing binary Appimages or preparing binary builds for OBS? It would of course be great to have access to both, but if one is materially less effort than the other maybe it makes sense to lean in that direction.
The dev team does not prepare the OBS builds, the community does. Historically it has been @asn or @darix but there isn’t a ton of interest.
I have just tried appimage with mint 20.3.
i get these errors:
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libexiv2.so.28)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libopenjp2.so.7)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.35' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libGraphicsMagick-Q16.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libGraphicsMagick-Q16.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libGraphicsMagick-Q16.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libicuuc.so.70)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libicuuc.so.70)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libcups.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libcups.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libepoxy.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libxkbcommon.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libmount.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libmount.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libselinux.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libselinux.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/liblzma.so.5)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/liblzma.so.5)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libltdl.so.7)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libIlmThread-3_2.so.31)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libIlmThread-3_2.so.31)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libOpenEXRCore-3_2.so.31)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libdav1d.so.7)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libdav1d.so.7)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgav1.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgav1.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgav1.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libaom.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libssh.so.4)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libpsl.so.5)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgnutls.so.30)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgnutls.so.30)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgssapi_krb5.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libldap-2.5.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libldap-2.5.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libgcrypt.so.20)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libudev.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libudev.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libavahi-common.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libavahi-common.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libavahi-client.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libdbus-1.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libdbus-1.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libblkid.so.1)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libunistring.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libunistring.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libcrypto.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libcrypto.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libp11-kit.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libp11-kit.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libkrb5.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libkrb5.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libk5crypto.so.3)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libkrb5support.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libkrb5support.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libsasl2.so.2)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libsystemd.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libsystemd.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libsystemd.so.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libabsl_malloc_internal.so.2206.0.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libabsl_base.so.2206.0.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libabsl_base.so.2206.0.0)
/tmp/.mount_darktacK7ysc/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /tmp/.mount_darktacK7ysc/usr/bin/../lib/libcap.so.2)
/tmp/.mount_darktai9K5mh/AppRun.wrapped: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /tmp/.mount_darktai9K5mh/usr/bin/../lib/libabsl_time_zone.so.2206.0.0)
i know mint 20.3 isn’t that new anyway.
FWIW: the OBS can do the AppImage as well for you.
So you answered your own question. From the releases page:
The AppImage package is compatible with distribution releases that have glibc version 2.35 or higher. For example, if we consider some popular distributions, Ubuntu 22.04, Debian 12, Fedora 36 and newer releases are compatible.
So sorry… i have landed directly to release 4.8 page and there wasn’t such an info ( Release release 4.8.0 · darktable-org/darktable · GitHub ). Time to upgade, as soon as mint 22 will be released! Thank you!
I noticed that as well. I don’t know much about AppImage, I guess it uses some temporary storage and discards the built files when closing? Is it possible to avoid this somehow?
Apart from that, I did a very quick benchmark and didn’t notice any performance difference between built-from-source and AppImage.
Of course, the AppImage should be always build. Not all user are fan of Flatpak applicatons.
The appimage has been made official.
With regards to AppImages / Flatpaks / Native Builds is there a difference in performance (especially using OpenCL) in a native build compared to a sandboxed Flatpak / appimage?