94 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Build Release
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     tags:
 | |
|       - "*"
 | |
|   workflow_dispatch:
 | |
| 
 | |
| jobs:
 | |
|   build-web:
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       - name: Clone repository
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Set up Flutter
 | |
|         uses: subosito/flutter-action@v2
 | |
|         with:
 | |
|           channel: stable
 | |
|           cache: true
 | |
|       - run: flutter pub get
 | |
|       - run: flutter build web --release
 | |
|       - name: Archive production artifacts
 | |
|         uses: actions/upload-artifact@v4
 | |
|         with:
 | |
|           name: build-output-web
 | |
|           path: build/web
 | |
|   build-exe:
 | |
|     runs-on: windows-latest
 | |
|     steps:
 | |
|       - name: Clone repository
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Set up Flutter
 | |
|         uses: subosito/flutter-action@v2
 | |
|         with:
 | |
|           channel: stable
 | |
|           cache: true
 | |
|       - run: flutter pub get
 | |
|       - run: flutter build windows
 | |
|       - name: Archive production artifacts
 | |
|         uses: actions/upload-artifact@v4
 | |
|         with:
 | |
|           name: build-output-windows
 | |
|           path: build/windows/x64/runner/Release
 | |
|       - name: Compile Installer
 | |
|         uses: Minionguyjpro/Inno-Setup-Action@v1.2.2
 | |
|         with:
 | |
|           path: setup.iss
 | |
|       - name: Archive installer artifacts
 | |
|         uses: actions/upload-artifact@v4
 | |
|         with:
 | |
|           name: build-output-windows-installer
 | |
|           path: Installer/windows-x86_64-setup.exe
 | |
|   build-linux:
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       - name: Clone repository
 | |
|         uses: actions/checkout@v4
 | |
|       - name: Set up Flutter
 | |
|         uses: subosito/flutter-action@v2
 | |
|         with:
 | |
|           channel: stable
 | |
|       - run: |
 | |
|           sudo apt-get update -y
 | |
|           sudo apt-get install -y ninja-build libgtk-3-dev
 | |
|           sudo apt-get install -y libmpv-dev mpv
 | |
|           sudo apt-get install -y libayatana-appindicator3-dev
 | |
|           sudo apt-get install -y keybinder-3.0
 | |
|           sudo apt-get install -y libnotify-dev
 | |
|           sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
 | |
|           sudo apt-get install -y gstreamer-1.0
 | |
|           sudo apt-get install -y libsecret-1-dev
 | |
|       - run: flutter pub get
 | |
|       - run: flutter build linux
 | |
|       - name: Archive production artifacts
 | |
|         uses: actions/upload-artifact@v4
 | |
|         with:
 | |
|           name: build-output-linux
 | |
|           path: build/linux/x64/release/bundle
 | |
|       - name: Build AppImage
 | |
|         run: |
 | |
|           rm -r Solian.AppDir | true
 | |
|           mkdir Solian.AppDir
 | |
|           cp -r build/linux/x64/release/bundle/* Solian.AppDir
 | |
|           cp -r buildtools/appimage_config/* Solian.AppDir
 | |
|           cp assets/icons/icon-padded.png Solian.AppDir
 | |
|           sudo chmod +x buildtools/appimagetool-x86_64.AppImage
 | |
|           sudo chmod +x Solian.AppDir/AppRun
 | |
|           ./buildtools/appimagetool-x86_64.AppImage Solian.AppDir
 | |
|       - name: Archive production artifacts
 | |
|         uses: actions/upload-artifact@v4
 | |
|         with:
 | |
|           name: build-output-linux-appimage
 | |
|           path: "./*.AppImage*"
 |