How to create an AppImage from start to finish from a Python project?

First a little background because otherwise this post will look like Im lazy. I recently came across an application which was distributed as an AppImage and it is way more convenient to use than the executables generated through PyInstaller. So I thought it would be a good idea to convert an project of mine (https://github.com/MawOfTheVoid/Pylette) to an AppImage but the problem is that I absolutly dont know to do it. I spent more or less the whole day researching how to do it and ended up only knowing that it is possible. I think the two biggest problems are for one that I am not comfortable with the the technologies being used like buildsystems, bash scripting and virtual enviroments. But secondly I think there is especially for Python a lack of tutorials and walkthroughs which could help people without experience in building AppImages and the examples here: https://github.com/AppImage/AppImageKit/wiki/Bundling-Python-apps doesnt help me. So it would be great if someone would either take the time to do a walkthrough on how to build Python based AppImages and explain why you do what you do so others can adapt the methods to there own projects or walk me through on how to build the application so that I can create a walkthrough. I know that I ask for me much but I also believe that Im not the only one with this problem and that it would help the AppImage standard if it were more accessible. So any help would be appreciated. Thanks!

1 Like

Yes, you’re not the only one. I asked a similar question in another thread some time ago.

My attempt with a YAML file in the PythonTurtle project is still unsuccessful. My main problem is that I must base the installation on Ubuntu 18.04 LTS Bionic for some dependencies not available on Trusty or Xenial.

At first sight it seems all easy just as Docker. But unfortunately it isn’t all that simple. I wish there was a clear recipe for packaging an AppImage.

Maybe you will enjoy https://github.com/linuxdeploy/linuxdeploy-plugin-conda - please open an issue there in case you are running into issues. It’s a great tool but could use a little better documentation…