mirror of
https://github.com/edisionnano/QDiskInfo.git
synced 2026-03-07 20:09:55 +03:00
CI Build
Create Musl and Glibc AppImage builds
This commit is contained in:
9
.github/scripts/KDiskInfo.desktop
vendored
Normal file
9
.github/scripts/KDiskInfo.desktop
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Type=Application
|
||||||
|
Version=1.0
|
||||||
|
Name=KDiskInfo
|
||||||
|
Icon=KDiskInfo
|
||||||
|
Exec=KDiskInfo
|
||||||
|
Terminal=false
|
||||||
|
Categories=System;Monitor;ConsoleOnly;
|
||||||
|
Keywords=system;process;task
|
||||||
64
.github/workflows/build.yaml
vendored
Normal file
64
.github/workflows/build.yaml
vendored
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
name: Build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
#branches:
|
||||||
|
#- main
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-unix:
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
clib: [glibc, musl]
|
||||||
|
include:
|
||||||
|
- clib: glibc
|
||||||
|
os: ubuntu-22.04
|
||||||
|
- clib: musl
|
||||||
|
os: ubuntu-latest
|
||||||
|
container: alpine:latest
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
container:
|
||||||
|
image: ${{ matrix.container }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Install dependencies for glibc
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y qt6-base-dev libgl1-mesa-dev libxkbcommon-dev libvulkan-dev qmake6
|
||||||
|
if: ${{ matrix.clib == 'glibc' }}
|
||||||
|
- name: Install dependencies for musl
|
||||||
|
run: |
|
||||||
|
apk add git cmake make gcc g++ curl gcompat qt6-qtbase-dev qt6-qtbase-x11
|
||||||
|
git config --global --add safe.directory '*'
|
||||||
|
if: ${{ matrix.clib == 'musl' }}
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
cmake -Bbuild
|
||||||
|
cmake --build build
|
||||||
|
|
||||||
|
- name: Package AppImage
|
||||||
|
run: |
|
||||||
|
curl -sSfLO "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-static-x86_64.AppImage"
|
||||||
|
curl -sSfLO "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-static-x86_64.AppImage"
|
||||||
|
curl -sSfL "https://github.com/probonopd/go-appimage/releases/download/832/appimagetool-823-x86_64.AppImage" -o appimagetool-static.AppImage
|
||||||
|
chmod a+x *.AppImage
|
||||||
|
|
||||||
|
mkdir -p AppDir/usr/bin
|
||||||
|
cp build/KDiskInfo AppDir/usr/bin/
|
||||||
|
cp .github/scripts/KDiskInfo.desktop AppDir/
|
||||||
|
cp icon.svg AppDir/KDiskInfo.svg
|
||||||
|
|
||||||
|
APPIMAGE_EXTRACT_AND_RUN=1 NO_STRIP=1 QMAKE=/usr/bin/qmake6 ARCH=x86_64 ./linuxdeploy-static-x86_64.AppImage --appdir=AppDir/ -d AppDir/KDiskInfo.desktop -i AppDir/KDiskInfo.svg -e AppDir/usr/bin/KDiskInfo --plugin qt
|
||||||
|
APPIMAGE_EXTRACT_AND_RUN=1 VERSION=${{ matrix.clib }} QMAKE=/usr/bin/qmake6 ARCH=x86_64 ./appimagetool-static.AppImage AppDir/
|
||||||
|
|
||||||
|
- name: Upload AppImage
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: KDiskInfo-${{ matrix.clib }}
|
||||||
|
path: ./KDiskInfo*.AppImage
|
||||||
|
|
||||||
Reference in New Issue
Block a user