automated linux build

This commit is contained in:
EinTim23 2025-01-12 11:41:06 +01:00
parent d13231e84e
commit 017b21dbeb
6 changed files with 77 additions and 1 deletions

64
.github/workflows/build-appimage.yml vendored Normal file
View File

@ -0,0 +1,64 @@
name: Build and Package AppImage
on:
push:
branches:
- main
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
submodules: recursive
fetch-depth: 0
- name: Set up CMake
uses: lukka/get-cmake@latest
with:
cmakeVersion: '3.22.0'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
build-essential \
libssl-dev \
libx11-dev \
libxext-dev \
libxrandr-dev \
libxinerama-dev \
libxcursor-dev \
zlib1g-dev \
libglu1-mesa-dev \
libgtk-3-dev \
libwayland-dev \
fuse
sudo modprobe fuse
- name: Configure with CMake
run: cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
- name: Build the project
run: cmake --build build --config Release
- name: Download linuxdeploy
run: |
wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
chmod +x linuxdeploy-x86_64.AppImage
sudo mv linuxdeploy-x86_64.AppImage /usr/local/bin/linuxdeploy
- name: Create AppImage
run: |
cp -r build/PlayerLink linux/AppDir/usr/bin/
linuxdeploy --appdir=linux/AppDir --output appimage
- name: Upload AppImage artifact
uses: actions/upload-artifact@v3
with:
name: PlayerLink-AppImage
path: ./*.AppImage

6
.gitignore vendored
View File

@ -4,3 +4,9 @@ build/*
src/rsrc.hpp src/rsrc.hpp
PlayerLink.exe PlayerLink.exe
.vscode/* .vscode/*
linux/AppDir/usr/share/doc/*
linux/AppDir/usr/lib/*
linux/AppDir/usr/bin/*
linux/AppDir/*
!linux/AppDir/usr
!.gitkeep

View File

View File

View File

@ -0,0 +1,6 @@
[Desktop Entry]
Name=PlayerLink
Exec=PlayerLink
Icon=PlayerLink
Type=Application
Categories=Utility;GTK;

Binary file not shown.

After

Width:  |  Height:  |  Size: 285 KiB