Add AppImage build
Description
This MR adds a build job to create an AppImage version of the easy-installer.
On some linux distributions snap is not available out of the box which might make it too difficult for users to run the easy-installer. AppImage on the other hand is a self-contained executable that doens't even need installing, just download the file and execute it.
I've registered a local gitlab-runner on my machine and was able to successfully build the AppImage, see log at https://gitlab.e.foundation/Ingo-FP-Angel/easy-installer/-/jobs/667211 and artifacts at https://gitlab.e.foundation/Ingo-FP-Angel/easy-installer/-/artifacts. The part of publishing the artifacts (executable plus checksum file) is still missing at the moment as I don't have rights/credentials to push to /e/ download pages and/or the AppImage hub. This is something for you guys I'd expect.
For a little more info have a look at https://community.e.foundation/t/problems-installing-e-os-on-a-fairphone-4-using-the-easy-installer-in-linux-debian/51230/2?u=ingo_fp_angel
Test environment
-
non regression test
/!\ Checked OS should at least be tested: /!\
-
windows -
linux -
MacOS Not supported yet_
As far as I'm aware, AppImage only works on Linux, so no need for Windows or MacOS.
/!\ Checked devices should at least be tested: /!
If no device checked, then you can pick anyone from the list
-
GS290 -
FP3 -
2e -
starlte -
star2lte -
dreamlte -
dream2lte -
herolte -
hero2lte
HOW TO SETUP
- Download build from latest pipeline of this MR
linux
- make the binary executable via
chmod +x easy-installer.AppImage
- run via commandline
./easy-installer.AppImage
or (double) click in your GUI filemanager of choice
Uninstall the easy-installer test build:
Linux:
- delete the downloaded file
Test procedures
- check that easy-installer starts after it was marked as executable
- use the easy-installer and check that images are successfully downloaded and the log file exists in
/tmp/easy-installer
Check list
-
Self review -
Test procedure explained -
Tested on fresh install -
Tested applied as an update (IMHO not relevant, the update means just overwriting a single file with the new version) -
License -
Internal documentation -
User documentation