Skip to content

How to ensure the AppImage reuses files extracted from first run?#31

@mdear

Description

@mdear

Apaprently, if the NO_CLEANUP env variable is set, the AppImage infrastructure is supposed to not remove the unpacked files and reuse the existing files.

This is really important as we aim to use AppImage packaging in production deployments where we could manage a single unpacking delay, but do not want this delay each and every time the AppImage is run.

Why does this feature appear not to work?

I did try to build the appimagetool from the latest git repo, but still have not yet succeeded in doing so, so I took latest released binaries.

foot@qemuarm64:/home/ccs/Qt/Projects/CortexBuilds/bin# ./linuxdeploy-aarch64.AppImage --version linuxdeploy version 1-alpha (git commit ID 2b73a21), <local dev build> built on 2024-02-12 13:22:56 UTC root@qemuarm64:/home/ccs/Qt/Projects/CortexBuilds/bin# ./linuxdeploy-plugin-appimage --version Failed to parse arguments: Flag could not be matched: version ./linuxdeploy-plugin-appimage{OPTIONS} linuxdeploy-plugin-appimage OPTIONS: --appdir=[AppDir] AppDir to package as AppImage --plugin-type Return plugin type and exit --plugin-api-version Return plugin type and exit root@qemuarm64:/home/ccs/Qt/Projects/CortexBuilds/bin# ./linuxdeploy-plugin-qt-aarch64.AppImage --version ./linuxdeploy-plugin-qt-aarch64.AppImage{OPTIONS} linuxdeploy Qt plugin OPTIONS: --appdir=[appdir path] Path to an existing AppDir -p[plugin...], --extra-plugin=[plugin...] Extra Qt plugin to deploy (specified by name, filename or path) --plugin-type Print plugin type and exit --plugin-api-version Print plugin API version and exit --plugin-version Print plugin version and exit Bundles Qt resources. For use with an existing AppDir, created by linuxdeploy. root@qemuarm64:/home/ccs/Qt/Projects/CortexBuilds/bin# ./appimagetool --version appimagetool, continuous build (commit 8bbf694), build <local dev build> built on 2020-12-31 11:48:29 UTC root@qemuarm64:/home/ccs/Qt/Projects/CortexBuilds/bin# 
ccs@v700:~/Downloads$ export NO_CLEANUP=1 ccs@v700:~/Downloads$ sudo ./Dice-aarch64.AppImage /tmp/.mount_Dice-a5QqLk2/AppRun.wrapped: error while loading shared libraries: libglapi.so.0: cannot open shared object file: No such file or directory ccs@v700:~/Downloads$ ls /tmp/.mount* ls: cannot access '/tmp/.mount*': No such file or directory ccs@v700:~/Downloads$ 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions