New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AppImages that bundle *everything* #225

Closed
aferrero2707 opened this Issue Sep 4, 2016 · 14 comments

Comments

Projects
None yet
5 participants
@aferrero2707

aferrero2707 commented Sep 4, 2016

As suggested in issue #224 I am trying to create a GIMP recipe that bundles all libraries, without blacklisting.
The standard recipe is presently not working on some distributions (Kubuntu 16.04 LiveCD for example), and I hope that the full bundling will solve such incompatibilities.

I have followed the example for sigil (https://github.com/probonopd/AppImages/blob/master/recipes/sigil/Recipe), but somehow I still cannot get the appimage to run correctly. In particular, the gimp executable crashes with a

free(): invalid next size (normal)

error that I cannot really interpret.

The full-bundling recipe can be found here: https://gist.github.com/aferrero2707/aea9aa96648078b306d6034daaf0372d

Does anyone have an idea how to fix that?

Thanks in advance!

@probonopd

This comment has been minimized.

Member

probonopd commented Sep 4, 2016

Don't bundle everything, it is neither recommended not supported. I also have issues with it.

@probonopd probonopd changed the title from Help needed with fully bundled Recipe for GIMP to AppImages that bundle *everything* Nov 5, 2016

@darealshinji

This comment has been minimized.

Contributor

darealshinji commented Nov 24, 2016

If you really need newer versions of libc6, libstdc++6 or similar base libraries, running an AppImage inside a chroot might be an option.

@probonopd

This comment has been minimized.

Member

probonopd commented Nov 24, 2016

Doesn't a chroot need root?

@darealshinji

This comment has been minimized.

Contributor

darealshinji commented Nov 24, 2016

schroot doesn't. But you need to be root to set it up. So... yeah.
Isn't it possible to use fuse to setup a chroot without root rights?

@probonopd

This comment has been minimized.

Member

probonopd commented Nov 24, 2016

...or use something like fakechroot

@probonopd

This comment has been minimized.

Member

probonopd commented Nov 29, 2016

or proot as is used by https://github.com/fsquillace/junest

@probonopd

This comment has been minimized.

Member

probonopd commented Jul 23, 2017

Also check https://github.com/lvml/makeaoi, a tool that bundles "everything"

@probonopd

This comment has been minimized.

Member

probonopd commented Aug 20, 2017

Another option may be to edit everything with patchelf so that absolutely no libraries get loaded from the system anymore (check with LD_DEBUG=libs!), and then in AppRun invoke the application like so:

"$APPDIR"/lib/x86_64-linux-gnu/ld-2.23.so "$APPDIR"/usr/bin/appstreamcli "$@"

Seems to have worked for me where all other options have failed me.

@probonopd

This comment has been minimized.

Member

probonopd commented Feb 2, 2018

Another option that automates this:

https://github.com/Intoli/exodus#how-it-works

@probonopd

This comment has been minimized.

Member

probonopd commented Mar 8, 2018

@TheAssassin

This comment has been minimized.

Member

TheAssassin commented Jul 15, 2018

Such a feature has been requested as a plugin for linuxdeploy, see linuxdeploy/linuxdeploy#5.

@darealshinji

This comment has been minimized.

Contributor

darealshinji commented Jul 16, 2018

Building a snap package may be an option.

@TheAssassin

This comment has been minimized.

Member

TheAssassin commented Jul 16, 2018

@darealshinji we want to be able to provide users with a solution to build AppImages this way, too, though.

@azubieta

This comment has been minimized.

Member

azubieta commented Nov 23, 2018

This should be addressed at linux deploy. Closing this issue as duplicated.
See linuxdeploy/linuxdeploy#5

@azubieta azubieta closed this Nov 23, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment