name: Build KytyPS5 (Linux) on: workflow_dispatch: push: branches: [ main, master ] pull_request: jobs: build: runs-on: ubuntu-24.04 steps: - name: Checkout repository uses: actions/checkout@v4 with: submodules: recursive - name: Install build dependencies shell: bash run: | sudo apt-get update sudo apt-get install --no-install-recommends --yes \ clang \ glslang-tools \ libgl1-mesa-dev \ libx11-dev \ libxcursor-dev \ libxext-dev \ libxfixes-dev \ libxi-dev \ libxrandr-dev \ libxss-dev \ lld \ ninja-build - name: Install Qt 6.10.3 uses: jurplel/install-qt-action@v4 with: version: "6.10.3" host: linux target: desktop arch: linux_gcc_64 cache: true - name: Verify toolchain shell: bash run: | git --version cmake --version ninja --version clang++ --version ld.lld --version glslangValidator --version echo "Qt6_DIR=$Qt6_DIR" - name: Configure shell: bash run: | cmake -S src -B _Build/linux \ -G Ninja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_C_COMPILER=clang \ -DCMAKE_CXX_COMPILER=clang++ \ -DCMAKE_PREFIX_PATH="$Qt6_DIR" - name: Build shell: bash run: | cmake --build _Build/linux --target launcher --parallel - name: Install shell: bash run: | cmake --install _Build/linux --prefix _Build/linux/install - name: Upload artifacts uses: actions/upload-artifact@v4 with: name: KytyPS5-Linux path: _Build/linux/install/** if-no-files-found: error