mirror of
https://github.com/RetroDECK/AppImages.git
synced 2025-04-11 02:55:09 +00:00
60 lines
2 KiB
YAML
60 lines
2 KiB
YAML
name: AppImage Maker
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
project:
|
|
- name: dolphin
|
|
repo: https://github.com/dolphin-emu/dolphin.git
|
|
cmake_args: "-DENABLE_SDL=ON"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up build dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y cmake make git wget patch
|
|
wget -O ../appimagetool https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
|
|
chmod +x ../appimagetool
|
|
|
|
- name: Remove previous appimage directory
|
|
run: |
|
|
rm -rf appimages/${{ matrix.project.name }}
|
|
mkdir -p appimages/${{ matrix.project.name }}
|
|
|
|
- name: Run build script
|
|
run: |
|
|
chmod +x automation_tools/build_appimage.sh
|
|
# Collect any patch files from patches/<appname>/
|
|
PATCH_ARGS=""
|
|
for f in patches/${{ matrix.project.name }}/*.patch; do
|
|
if [ -f "$f" ]; then
|
|
PATCH_ARGS="$PATCH_ARGS $f"
|
|
fi
|
|
done
|
|
# Determine output file name with current date (YYYYMMDD)
|
|
DATE=$(date +%Y%m%d)
|
|
OUTPUT="appimages/${{ matrix.project.name }}/${{ matrix.project.name }}-${DATE}.AppImage"
|
|
echo "Building AppImage for ${{ matrix.project.name }}..."
|
|
echo "Repository: ${{ matrix.project.repo }}"
|
|
echo "Output: $OUTPUT"
|
|
echo "CMake Args: ${{ matrix.project.cmake_args }}"
|
|
echo "Patch files: $PATCH_ARGS"
|
|
automation_tools/build_appimage.sh "${{ matrix.project.repo }}" "${{ matrix.project.name }}" "$OUTPUT" "${{ matrix.project.cmake_args }}" $PATCH_ARGS
|
|
|
|
- name: Publish AppImage
|
|
if: success()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ matrix.project.name }}-AppImage
|
|
path: appimages/${{ matrix.project.name }}/*.AppImage
|