48 lines
1.1 KiB
YAML
48 lines
1.1 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
jobs:
|
|
build-and-release:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y build-essential cmake qt6-base-dev
|
|
|
|
- name: Configure CMake
|
|
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
|
|
|
- name: Build
|
|
run: cmake --build build --config Release -- -j$(nproc)
|
|
|
|
- name: Package
|
|
run: |
|
|
mkdir -p package/bin
|
|
mkdir -o package/share/applications
|
|
cp build/wallpaper-carousel package/bin/
|
|
cp README.md package/
|
|
cp LICENSE package/
|
|
cp app/wallpaper-carousel.desktop package/share/applications/
|
|
|
|
cd package
|
|
tar -czvf ../wallpaper-carousel-linux-x64.tar.gz *
|
|
|
|
- name: Create Release
|
|
uses: softprops/action-gh-release@v1
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
with:
|
|
files: wallpaper-carousel-linux-x64.tar.gz
|
|
generate_release_notes: true
|