This patch introduces code to build an AppImage version of Hydrogen using both our build.sh script as well as using the AppVeyor pipeline. Whenever the latter is triggered for an -artifacts branch or a tag a Hydrogen.AppImage will be generated and uploaded.
The main idea of AppImage (as far as I got it) is to build on the oldest possible system to harness forward ABI compatibility of gcc in order to allow running the image on as many systems as possible. (Linux versions using clang or linking against musl will most probably not work). Therefore, I used the Ubuntu 16.04 image of AppVeyor and the code required some changes to support it
code fixes to be compatible with Qt 5.5 (very old)
treestate.py is now compatible with Python 3.5
I tested the image on a Fedora 38 live system and it most worked. There are still a couple of things to be fixed and more tests on more OSs to be done. But I'll address them in separate PRs.
This patch introduces code to build an AppImage version of Hydrogen using both our
build.sh
script as well as using the AppVeyor pipeline. Whenever the latter is triggered for an-artifacts
branch or a tag aHydrogen.AppImage
will be generated and uploaded.The main idea of AppImage (as far as I got it) is to build on the oldest possible system to harness forward ABI compatibility of
gcc
in order to allow running the image on as many systems as possible. (Linux versions usingclang
or linking againstmusl
will most probably not work). Therefore, I used the Ubuntu 16.04 image of AppVeyor and the code required some changes to support ittreestate.py
is now compatible with Python 3.5I tested the image on a Fedora 38 live system and it most worked. There are still a couple of things to be fixed and more tests on more OSs to be done. But I'll address them in separate PRs.
Fixes #1504