linuxdeploy icon indicating copy to clipboard operation
linuxdeploy copied to clipboard

exit code 6

Open wiryonolau opened this issue 1 year ago • 4 comments

Hi I'm trying to create appimage from py_installer ( not one file ) result

Everything works except this step. The debug doesn't show any message in this step.

py_installer dist folder

dist
|- myapp  # Copy this to appimage/usr/bin/myapp
|- lib/_internal # Copy whole directory to appimage/usr/lib

appimage folder

appimage
|- AppRun
|- usr
    |- bin
        |- myapp
    |- lib
    |- share
        |- applications/myapp.desktop
        |- icons/hicolor/32x32/apps/myapp.png

appimage/AppRun

#!/bin/bash
HERE="$(dirname "$(readlink -f "${0}")")"
export LD_LIBRARY_PATH="$HERE/usr/lib:$LD_LIBRARY_PATH"
exec "$HERE/usr/bin/myapp" "$@"

Run

# I need to export here, AppRun export doesn't work when building
export LD_LIBRARY_PATH="appimage/usr/lib:$LD_LIBRARY_PATH"

./linuxdeploy-x86_64.AppImage \
   --appdir "appimage" \
   --output appimage \
   -v0 \
   --desktop-file "appimage/usr/share/applications/myapp.desktop" \
   --icon-file "appimage/usr/share/icons/hicolor/32x32/apps/myapp.png"

output

-- Running output plugin: appimage -- 
[appimage/stderr] terminate called after throwing an instance of 'std::runtime_error'
[appimage/stderr]   what():  exec() failed: Transport endpoint is not connected
ERROR: Failed to run plugin: appimage (exit code: 6) 

wiryonolau avatar Sep 29 '24 23:09 wiryonolau

Have you tried running the AppImage output plugin separately? It looks like a FUSE issue in some containerized environment at a first glance. I'm not sure how to reproduce this.

Please also increase the verbosity: -v0.

TheAssassin avatar Sep 30 '24 18:09 TheAssassin

Have you tried running the AppImage output plugin separately?

Any documentation for this, it's my first time packaging Appimage

It looks like a FUSE issue in some containerized environment at a first glance. I'm not sure how to reproduce this.

It running by default inside python virtualenv. I try also deactivate virtualenv but same error.

Please also increase the verbosity: -v0.

I always run using -v0 , I didn't see any meaningful error

I check on forum it might be the issue with static path, not sure why there is /usr/tmp in here

$ strings appimage/usr/bin/myapp | grep /usr
/usr/tmp

wiryonolau avatar Oct 01 '24 06:10 wiryonolau

You can run the plugin that is included in the AppImage by extracting linuxdeploy (by running it with --appimage-extract), then running the linuxdeploy-plugin-appimage binary in there against your AppDir.

TheAssassin avatar Oct 01 '24 18:10 TheAssassin

So this one works , the appimage generated and can be run ? So what is the cause ?

$ LINUXDEPLOY_OUTPUT_VERSION=1.0.0 ./squashfs-root/usr/bin/linuxdeploy-plugin-appimage --appdir=appimage
Found appimagetool: /home/wiryono/Projects/PYTHON/myapp/squashfs-root/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool
Running command: /home/wiryono/Projects/PYTHON/myapp/squashfs-root/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool "appimage"


appimagetool, continuous build (commit 5735cc5), build <local dev build> built on 2023-03-08 22:52:04 UTC
Using architecture x86_64
/home/wiryono/Projects/PYTHON/myapp/appimage should be packaged as myapp-1.0.0-x86_64.AppImage
WARNING: AppStream upstream metadata is missing, please consider creating it
         in usr/share/metainfo/myapp.appdata.xml
         Please see https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps
         for more information or use the generator at http://output.jsbin.com/qoqukof.
Generating squashfs...
Parallel mksquashfs: Using 16 processors
Creating 4.0 filesystem on myapp-1.0.0-x86_64.AppImage, block size 131072.
[==============================================================================================================================================================================================|] 977/977 100%

Exportable Squashfs 4.0 filesystem, gzip compressed, data block size 131072
	compressed data, compressed metadata, compressed fragments,
	compressed xattrs, compressed ids
	duplicates are removed
Filesystem size 36345.25 Kbytes (35.49 Mbytes)
	58.33% of uncompressed filesystem size (62312.20 Kbytes)
Inode table size 7146 bytes (6.98 Kbytes)
	30.81% of uncompressed inode table size (23191 bytes)
Directory table size 6053 bytes (5.91 Kbytes)
	43.12% of uncompressed directory table size (14036 bytes)
Number of duplicate files found 59
Number of inodes 656
Number of files 574
Number of fragments 67
Number of symbolic links  13
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 69
Number of ids (unique uids + gids) 1
Number of uids 1
	root (0)
Number of gids 1
	root (0)
Embedding ELF...
Marking the AppImage as executable...
Embedding MD5 digest
Success

Please consider submitting your AppImage to AppImageHub, the crowd-sourced
central directory of available AppImages, by opening a pull request
at https://github.com/AppImage/appimage.github.io

wiryonolau avatar Oct 01 '24 23:10 wiryonolau