name: AppImage on: push: branches: [ master ] pull_request: branches: [ master ] workflow_dispatch: jobs: build: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 - name: Packages Update run: | sudo apt update -qq - name: Packages Install run: | sudo apt install python3-pip python-dev build-essential gettext sudo pip3 install --upgrade pip sudo pip3 install meson sudo pip3 install ninja - name: Packages Install run: | if [ "$CXX" = "g++" ]; then export CXX="g++-5" CC="gcc-5"; fi - name: Build enviroment setup run: | mkdir build meson build cd build ninja - name: Directory and files creation working-directory: /home/runner/work/Bottles/Bottles/build run: | mkdir -p appdir/usr/local/share/bottles glib-compile-resources --sourcedir=../src/ui/ ../src/ui/bottles.gresource.xml --target=appdir/usr/local/share/bottles/bottles.gresource mkdir -p appdir/usr/bin ; cp src/bottles ./appdir/usr/bin/ cp -a ../src appdir/usr/local/share/bottles/bottles rm appdir/usr/local/share/bottles/bottles/bottles.in rm appdir/usr/local/share/bottles/bottles/meson.build mkdir -p appdir/usr/share/glib-2.0/schemas/ cp ../data/com.usebottles.bottles.gschema.xml appdir/usr/share/glib-2.0/schemas/com.usebottles.bottles.gschema.xml - name: Glib Schemas compilation working-directory: /home/runner/work/Bottles/Bottles/build run: | glib-compile-schemas appdir/usr/share/glib-2.0/schemas/ || echo "No schemas found." - name: Directory and files creation working-directory: /home/runner/work/Bottles/Bottles/build run: | mkdir -p appdir/usr/share/applications ; cp data/com.usebottles.bottles.desktop appdir/usr/share/applications/ cp -a ../AppRun appdir/AppRun - name: AppImage creation working-directory: /home/runner/work/Bottles/Bottles/build env: ARCH: x86_64 VERSION: alpha run: | wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage" chmod a+x linuxdeploy-x86_64.AppImage ./linuxdeploy-x86_64.AppImage --appdir appdir --icon-file=../data/icons/hicolor/scalable/apps/com.usebottles.bottles.svg --output appimage - name: Moving the artifact working-directory: /home/runner/work/Bottles/Bottles/build run: | mkdir output mv Bottles-alpha-x86_64.AppImage /home/runner/work/Bottles/Bottles/build/output/Bottles-alpha-x86_64.AppImage - uses: actions/upload-artifact@v2 with: name: Output path: /home/runner/work/Bottles/Bottles/build/output/Bottles-alpha-x86_64.AppImage