Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,18 @@ jobs:
AppImage:
if: github.repository == 'darktable-org/darktable' || github.event_name == 'workflow_dispatch'
name: Nightly darktable AppImage
runs-on: ubuntu-22.04
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
compiler:
- { compiler: GNU12, CC: gcc-12, CXX: g++-12, packages: gcc-12 g++-12 }
os: [ubuntu-22.04, ubuntu-24.04-arm]
branch:
- { code: master, label: gitmaster }
include:
- os: ubuntu-22.04
compiler: { compiler: GNU12, CC: gcc-12, CXX: g++-12, packages: gcc-12 g++-12 }
- os: ubuntu-24.04-arm
compiler: { compiler: GNU14, CC: gcc-14, CXX: g++-14, packages: gcc-14 g++-14 }
env:
CC: ${{ matrix.compiler.CC }}
CXX: ${{ matrix.compiler.CXX }}
Expand Down Expand Up @@ -424,7 +428,7 @@ jobs:

Also, new versions can make changes to the database schema, so it's best to run them with a separate library.

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.
The `*-x86_64.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. The `*-aarch64.AppImage` package requires glibc 2.39 or higher (e.g. Ubuntu 24.04, Debian 13, Fedora 40 and newer).

The `*.AppImage.zsync` file is not intended to be downloaded and used locally. Just ignore it. This file contains technical information required by AppImage auto-updaters such as [AppImageUpdate](https://appimage.github.io/AppImageUpdate/).

Expand Down
8 changes: 4 additions & 4 deletions tools/appimage-build-script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,14 @@ cp -a /var/lib/lensfun-updates/* ../AppDir/usr/share/lensfun
# environment variable in AppRun.wrapped accordingly when starting
# AppImage so that libgphoto2 can find these drivers.
mkdir -p ../AppDir/usr/lib/libgphoto2
cp -a /usr/lib/x86_64-linux-gnu/libgphoto2/* ../AppDir/usr/lib/libgphoto2
ARCH=$(uname -m)
cp -a /usr/lib/$ARCH-linux-gnu/libgphoto2/* ../AppDir/usr/lib/libgphoto2

# Include gphoto2 port libraries. We also have to set the IOLIBS
# environment variable in AppRun.wrapped accordingly when starting
# AppImage so that libgphoto2 can find these drivers.
mkdir -p ../AppDir/usr/lib/libgphoto2_port
cp -a /usr/lib/x86_64-linux-gnu/libgphoto2_port/* ../AppDir/usr/lib/libgphoto2_port
cp -a /usr/lib/$ARCH-linux-gnu/libgphoto2_port/* ../AppDir/usr/lib/libgphoto2_port

# Include networking related GIO modules. We also have to set the GIO_EXTRA_MODULES
# environment variable in AppRun.wrapped accordingly when starting AppImage
Expand All @@ -67,14 +68,13 @@ cp -a /usr/lib/x86_64-linux-gnu/libgphoto2_port/* ../AppDir/usr/lib/libgphoto2_p
# may be incompatibility issues with different versions of glib in the bundle and
# on the host system, see https://github.com/darktable-org/darktable/issues/19266
mkdir -p ../AppDir/usr/lib/gio
cp -a /usr/lib/x86_64-linux-gnu/gio/* ../AppDir/usr/lib/gio
cp -a /usr/lib/$ARCH-linux-gnu/gio/* ../AppDir/usr/lib/gio

# Since linuxdeploy is itself an AppImage, we don't rely on it being installed
# on the build system, but download it every time we run this script. If that
# doesn't suit you (for example, you want to build an AppImage without an
# Internet connection), you can edit this script accordingly, and call
# linuxdeploy and its plugin from where you put them.
ARCH=$(uname -m)
wget -c --no-verbose "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-$ARCH.AppImage"
wget -c --no-verbose "https://raw.githubusercontent.com/linuxdeploy/linuxdeploy-plugin-gtk/master/linuxdeploy-plugin-gtk.sh"

Expand Down