mirror of
				https://github.com/PancakeTAS/lsfg-vk.git
				synced 2025-10-30 07:01:10 +00:00 
			
		
		
		
	enhancement(flatpakui): add manually triggered workflow
This commit is contained in:
		
							parent
							
								
									45ae660e78
								
							
						
					
					
						commit
						a22ad81056
					
				
					 3 changed files with 154 additions and 0 deletions
				
			
		
							
								
								
									
										71
									
								
								.github/workflows/build_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								.github/workflows/build_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,71 @@ | |||
| name: (Manual) Build lsfg-vk | ||||
| 
 | ||||
| on: ["workflow_dispatch"] | ||||
| 
 | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     # prepare system | ||||
|     - name: Checkout repository | ||||
|       uses: actions/checkout@v4 | ||||
|       with: | ||||
|         submodules: true | ||||
|     - name: Install build dependencies | ||||
|       uses: awalsh128/cache-apt-pkgs-action@latest | ||||
|       with: | ||||
|         packages: git wget xvfb | ||||
|           clang clang-tools llvm rustup | ||||
|           cmake ninja-build pkg-config | ||||
|           libdecor-0-0 libvulkan-dev | ||||
|           libgtk-4-dev libadwaita-1-dev | ||||
|         version: 1.0 | ||||
|         execute_install_scripts: true | ||||
|     - name: Install rust dependency | ||||
|       run: | | ||||
|         rustup default stable | ||||
|     # build the project | ||||
|     - name: Configure with CMake and Ninja | ||||
|       run: | | ||||
|         cmake -B build -G Ninja \ | ||||
|           -DCMAKE_BUILD_TYPE=Release \ | ||||
|           -DCMAKE_INSTALL_PREFIX=./target \ | ||||
|           -DCMAKE_C_COMPILER=clang \ | ||||
|           -DCMAKE_CXX_COMPILER=clang++ \ | ||||
|           -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=On | ||||
|     - name: Build with Ninja | ||||
|       run: | | ||||
|         ninja -C build | ||||
|     - name: Install with CMake | ||||
|       run: | | ||||
|         cmake --install build --strip | ||||
|     - name: Build lsfg-vk-ui | ||||
|       run: | | ||||
|         pushd ui | ||||
|         chmod +x ./build_appimage.sh | ||||
|         ./build_appimage.sh | ||||
|         popd | ||||
|     - name: Install lsfg-vk-ui | ||||
|       run: | | ||||
|         mkdir -p target/{bin,share/applications,share/icons/hicolor/256x256/apps} | ||||
|         mv ui/lsfg-vk-ui.AppImage target/bin/lsfg-vk-ui | ||||
|         cp ui/rsc/gay.pancake.lsfg-vk-ui.desktop target/share/applications/lsfg-vk-ui.desktop | ||||
|         cp ui/rsc/icon.png target/share/icons/hicolor/256x256/apps/gay.pancake.lsfg-vk-ui.png | ||||
|     # upload all files | ||||
|     - name: Upload lsfg-vk artifact | ||||
|       uses: actions/upload-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk | ||||
|         path: | | ||||
|           target/share/vulkan/implicit_layer.d/VkLayer_LS_frame_generation.json | ||||
|           target/share/applications/lsfg-vk-ui.desktop | ||||
|           target/share/icons/hicolor/256x256/apps/gay.pancake.lsfg-vk-ui.png | ||||
|           target/lib/liblsfg-vk.so | ||||
|           target/bin/lsfg-vk-ui | ||||
|     - name: Upload lsfg-vk artifact (without UI) | ||||
|       uses: actions/upload-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk_noui | ||||
|         path: | | ||||
|           target/share/vulkan/implicit_layer.d/VkLayer_LS_frame_generation.json | ||||
|           target/lib/liblsfg-vk.so | ||||
							
								
								
									
										38
									
								
								.github/workflows/flatpak_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								.github/workflows/flatpak_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,38 @@ | |||
| name: (Manual) Build lsfg-vk for Flatpak | ||||
| 
 | ||||
| on: ["workflow_dispatch"] | ||||
| 
 | ||||
| jobs: | ||||
|   flatpak-extensions: | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       matrix: | ||||
|         version: ["23.08", "24.08"] | ||||
|     container: | ||||
|       image: ghcr.io/flathub-infra/flatpak-github-actions:freedesktop-${{ matrix.version }} | ||||
|       options: --privileged | ||||
|     steps: | ||||
|       - name: Checkout repository | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Build Flatpak extension (${{ matrix.version }}) | ||||
|         uses: flatpak/flatpak-github-actions/flatpak-builder@v6 | ||||
|         with: | ||||
|           bundle: "org.freedesktop.Platform.VulkanLayer.lsfg_vk_${{ matrix.version }}.flatpak" | ||||
|           manifest-path: "flatpak/org.freedesktop.Platform.VulkanLayer.lsfgvk_${{ matrix.version }}.yml" | ||||
|           branch: "${{ matrix.version }}" | ||||
|           cache: false | ||||
|   flatpak-ui: | ||||
|     runs-on: ubuntu-latest | ||||
|     container: | ||||
|       image: ghcr.io/flathub-infra/flatpak-github-actions:gnome-48 | ||||
|       options: --privileged | ||||
|     steps: | ||||
|       - name: Checkout repository | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Build Flatpak | ||||
|         uses: flatpak/flatpak-github-actions/flatpak-builder@v6 | ||||
|         with: | ||||
|           bundle: "gay.pancake.lsfg-vk-ui.flatpak" | ||||
|           manifest-path: "flatpak/gay.pancake.lsfg-vk-ui.yml" | ||||
|           branch: "develop" | ||||
|           cache: false | ||||
							
								
								
									
										45
									
								
								.github/workflows/package_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								.github/workflows/package_test.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,45 @@ | |||
| name: (Manual) Package lsfg-vk | ||||
| 
 | ||||
| on: | ||||
|   workflow_run: | ||||
|     workflows: ["(Manual) Build lsfg-vk"] | ||||
|     types: | ||||
|       - completed | ||||
| 
 | ||||
| jobs: | ||||
|   package: | ||||
|     runs-on: ubuntu-latest | ||||
|     if: ${{ github.event.workflow_run.conclusion == 'success' }} | ||||
|     steps: | ||||
|     # prepare system | ||||
|     - name: Checkout repository | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Download lsfg-vk artifacts | ||||
|       uses: actions/download-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk | ||||
|         path: . | ||||
|         github-token: ${{ secrets.GITHUB_TOKEN }} | ||||
|         run-id: ${{ github.event.workflow_run.id }} | ||||
|     - name: Package lsfg-vk for various distros | ||||
|       run: | | ||||
|         chmod +x ./package/package.sh | ||||
|         ./package/package.sh | ||||
|     - name: Upload lsfg-vk for dpkg | ||||
|       uses: actions/upload-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk.dpkg | ||||
|         path: | | ||||
|           *.deb | ||||
|     - name: Upload lsfg-vk for rpm | ||||
|       uses: actions/upload-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk.rpm | ||||
|         path: | | ||||
|           *.rpm | ||||
|     - name: Upload lsfg-vk for alpm | ||||
|       uses: actions/upload-artifact@v4 | ||||
|       with: | ||||
|         name: lsfg-vk.alpm | ||||
|         path: | | ||||
|           *.zst | ||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 PancakeTAS
						PancakeTAS