diff --git a/utils/scripts/docker/package_appimages.bash b/utils/scripts/docker/package_appimages.bash
index e4989c3a0001f93dea77efa1d1feb714933053c5..3fabeb467dc8f2f87a9a1c237cb8343be3185cd1 100755
--- a/utils/scripts/docker/package_appimages.bash
+++ b/utils/scripts/docker/package_appimages.bash
@@ -83,14 +83,21 @@ function deploy() {
     find ${EXEC^}/usr/lib/ -type f -and \( ${EXCLUDE_LIBS} \) -delete
     cp LICENSE CHANGELOG.md CONTRIBUTING.md ${EXEC^}/
     install -Dm644 ${EXEC}/${EXEC}.appdata.xml ${EXEC^}/usr/share/metainfo/${EXEC}.appdata.xml
+    unlink ${EXEC^}/AppRun \
+        && touch ${EXEC^}/AppRun \
+        && chmod +x ${EXEC^}/AppRun
 cat > ${EXEC^}/AppRun <<EOF
 #!/usr/bin/env bash
 set -e
 this_dir="\$(readlink -f "\$(dirname "\$0")")"
-for HOOK in "\$this_dir"/apprun-hooks/*; do
-    source "\$HOOK"
-done
-exec "\$this_dir"/AppRun.wrapped "$@"
+[ ! -n "\$(find "\$this_dir"/apprun-hooks/ -maxdepth 0 -type d -empty 2>/dev/null)" ] \
+    && [ -d "\$this_dir"/apprun-hooks/ ] \
+    && {
+        for HOOK in "\$this_dir"/apprun-hooks/*; do
+            source "\$HOOK"
+        done
+}
+exec "\$this_dir/usr/bin/${EXEC}" "$@"
 EOF
 
     # Pack the AppImage