From 4e6c57c84b764c0129723504a4c48731bbb21a35 Mon Sep 17 00:00:00 2001 From: xhon-pelushi Date: Wed, 12 Aug 2026 20:45:05 -0400 Subject: [PATCH] fix(appimage): bundle sync-exclude.lst inside AppDir so it ships in the AppImage Fixes #8483 The AppImage build script moved sync-exclude.lst into /app/usr/bin/, which is outside the AppDir tree that linuxdeploy/appimagetool actually package. As a result the file never made it into the AppImage, and ConfigFile::excludeFileFromSystem()'s AppImage fallback (which looks next to the running executable) found nothing, leaving Linux AppImage users with only the few hardcoded read-only patterns instead of the full default exclusion list (including ~$* for Office lock files). Signed-off-by: xhon-pelushi --- admin/linux/build-appimage.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/admin/linux/build-appimage.sh b/admin/linux/build-appimage.sh index 4e7913528bda7..d837fdbc5385d 100755 --- a/admin/linux/build-appimage.sh +++ b/admin/linux/build-appimage.sh @@ -70,8 +70,12 @@ rm -rf usr/share/nemo-python/ mkdir -p AppDir/usr/share mv usr/share/${EXECUTABLE_NAME} AppDir/usr/share/${EXECUTABLE_NAME} -# Move sync exclude to right location -mv /app/etc/*/sync-exclude.lst usr/bin/ +# Move sync exclude to right location. It has to end up inside AppDir +# (not just /app), otherwise it is never packed into the AppImage and +# ConfigFile::excludeFileFromSystem()'s AppImage fallback finds nothing +# next to the executable at runtime. +mkdir -p AppDir/usr/bin +mv /app/etc/*/sync-exclude.lst AppDir/usr/bin/ rm -rf etc # com.nextcloud.desktopclient.nextcloud.desktop