diff --git a/.github/workflows/build_linux.yml b/.github/workflows/build_linux.yml new file mode 100644 index 000000000..f113af7c8 --- /dev/null +++ b/.github/workflows/build_linux.yml @@ -0,0 +1,44 @@ +name: Build Linux + +on: [push, pull_request] + +jobs: + appimage-builder: + name: Linux AppImage Build + + runs-on: ubuntu-20.04 + + steps: + - uses: actions/checkout@v3 + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install cmake libgl1-mesa-dev libgtk-3-dev libxkbcommon-dev libunwind-dev libfuse2 -y + - name: Install dependencies from BuildLinux.sh + shell: bash + run: sudo ./BuildLinux.sh -ur + - name: Fix permissions + shell: bash + run: sudo chown $USER -R ./ + - name: Build deps + id: cache_deps + uses: actions/cache@v3 + env: + cache-name: ${{ runner.os }}-cache-bambustudio_deps_x64 + with: + path: ${{ github.workspace }}/deps/build/destdir + key: build-${{ env.cache-name }} + + - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }} + name: Build deps + working-directory: ${{ github.workspace }} + continue-on-error: true + run: ./BuildLinux.sh -dsr + + - name: Build Studio + shell: bash + run: ./BuildLinux.sh -ir + - uses: actions/upload-artifact@v3 + with: + name: BambuStudio_Linux + path: './build/BambuStudio_ubu64.AppImage'