CI: Package NoGUI AppImage on Linux instead of SDL

This commit is contained in:
Connor McLaughlin 2021-01-31 17:28:42 +10:00
parent 85b4a02f20
commit 2dabccffc6
4 changed files with 29 additions and 29 deletions

View file

@ -173,21 +173,21 @@ jobs:
run: | run: |
mkdir build mkdir build
cd build cd build
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SDL_FRONTEND=ON -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -G Ninja .. cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_NOGUI_FRONTEND=ON -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -G Ninja ..
ninja ninja
../appimage/generate_appimages.sh $(pwd) ../appimage/generate_appimages.sh $(pwd)
- name: Upload SDL AppImage - name: Upload NoGUI AppImage
uses: actions/upload-artifact@v1 uses: actions/upload-artifact@v1
with: with:
name: "linux-x64-appimage-sdl" name: "linux-x64-appimage-nogui"
path: "build/duckstation-sdl-x64.AppImage" path: "build/duckstation-nogui-x64.AppImage"
- name: Upload SDL AppImage zsync - name: Upload NoGUI AppImage zsync
uses: actions/upload-artifact@v1 uses: actions/upload-artifact@v1
with: with:
name: "linux-x64-appimage-sdl-zsync" name: "linux-x64-appimage-nogui-zsync"
path: "build/duckstation-sdl-x64.AppImage.zsync" path: "build/duckstation-nogui-x64.AppImage.zsync"
- name: Upload Qt AppImage - name: Upload Qt AppImage
uses: actions/upload-artifact@v1 uses: actions/upload-artifact@v1
@ -262,7 +262,7 @@ jobs:
mkdir build mkdir build
cd build cd build
export MACOSX_DEPLOYMENT_TARGET=10.14 export MACOSX_DEPLOYMENT_TARGET=10.14
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SDL_FRONTEND=OFF -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -DQt5_DIR=/usr/local/opt/qt/lib/cmake/Qt5 .. cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_NOGUI_FRONTEND=OFF -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -DQt5_DIR=/usr/local/opt/qt/lib/cmake/Qt5 ..
cmake --build . --parallel 2 cmake --build . --parallel 2
cd bin cd bin
zip -r duckstation-mac-release.zip DuckStation.app/ zip -r duckstation-mac-release.zip DuckStation.app/
@ -289,15 +289,15 @@ jobs:
with: with:
name: "windows-arm64" name: "windows-arm64"
- name: Download SDL AppImage Artifact - name: Download NoGUI AppImage Artifact
uses: actions/download-artifact@v1 uses: actions/download-artifact@v1
with: with:
name: "linux-x64-appimage-sdl" name: "linux-x64-appimage-nogui"
- name: Download SDL AppImage zsync Artifact - name: Download NoGUI AppImage zsync Artifact
uses: actions/download-artifact@v1 uses: actions/download-artifact@v1
with: with:
name: "linux-x64-appimage-sdl-zsync" name: "linux-x64-appimage-nogui-zsync"
- name: Download Qt AppImage Artifact - name: Download Qt AppImage Artifact
uses: actions/download-artifact@v1 uses: actions/download-artifact@v1
@ -332,8 +332,8 @@ jobs:
windows/duckstation-windows-x64-release-symbols.zip windows/duckstation-windows-x64-release-symbols.zip
windows-arm64/duckstation-windows-arm64-release.zip windows-arm64/duckstation-windows-arm64-release.zip
windows-arm64/duckstation-windows-arm64-release-symbols.zip windows-arm64/duckstation-windows-arm64-release-symbols.zip
linux-x64-appimage-sdl/duckstation-sdl-x64.AppImage linux-x64-appimage-nogui/duckstation-nogui-x64.AppImage
linux-x64-appimage-sdl-zsync/duckstation-sdl-x64.AppImage.zsync linux-x64-appimage-nogui-zsync/duckstation-nogui-x64.AppImage.zsync
linux-x64-appimage-qt/duckstation-qt-x64.AppImage linux-x64-appimage-qt/duckstation-qt-x64.AppImage
linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync
android/duckstation-android.apk android/duckstation-android.apk
@ -351,8 +351,8 @@ jobs:
windows/duckstation-windows-x64-release-symbols.zip windows/duckstation-windows-x64-release-symbols.zip
windows-arm64/duckstation-windows-arm64-release.zip windows-arm64/duckstation-windows-arm64-release.zip
windows-arm64/duckstation-windows-arm64-release-symbols.zip windows-arm64/duckstation-windows-arm64-release-symbols.zip
linux-x64-appimage-sdl/duckstation-sdl-x64.AppImage linux-x64-appimage-nogui/duckstation-nogui-x64.AppImage
linux-x64-appimage-sdl-zsync/duckstation-sdl-x64.AppImage.zsync linux-x64-appimage-nogui-zsync/duckstation-nogui-x64.AppImage.zsync
linux-x64-appimage-qt/duckstation-qt-x64.AppImage linux-x64-appimage-qt/duckstation-qt-x64.AppImage
linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync
android/duckstation-android.apk android/duckstation-android.apk

View file

@ -18,7 +18,7 @@ set(CMAKE_OSX_DEPLOYMENT_TARGET "10.14.0" CACHE STRING "")
# Global options. # Global options.
if(NOT ANDROID) if(NOT ANDROID)
option(BUILD_SDL_FRONTEND "Build the SDL frontend" ON) option(BUILD_SDL_FRONTEND "Build the SDL frontend" OFF)
option(BUILD_NOGUI_FRONTEND "Build the NoGUI frontend" ON) option(BUILD_NOGUI_FRONTEND "Build the NoGUI frontend" ON)
option(BUILD_QT_FRONTEND "Build the Qt frontend" ON) option(BUILD_QT_FRONTEND "Build the Qt frontend" ON)
option(ENABLE_DISCORD_PRESENCE "Build with Discord Rich Presence support" ON) option(ENABLE_DISCORD_PRESENCE "Build with Discord Rich Presence support" ON)

View file

@ -1,10 +1,10 @@
[Desktop Entry] [Desktop Entry]
Type=Application Type=Application
Name=DuckStation SDL Name=DuckStation NoGUI
GenericName=PlayStation 1 Emulator GenericName=PlayStation 1 Emulator
Comment=Fast-ish PlayStation 1 emulator Comment=Fast-ish PlayStation 1 emulator
Icon=duckstation-sdl Icon=duckstation-nogui
TryExec=duckstation-sdl TryExec=duckstation-nogui
Exec=duckstation-sdl %f Exec=duckstation-nogui %f
Terminal=true Terminal=true
Categories=Game;Emulator; Categories=Game;Emulator;

View file

@ -28,9 +28,9 @@ chmod a+x ${BUILD_DIR}/linuxdeploy-plugin-appimage-x86_64.AppImage
# Copy icons into the <resolution>/<app_name>.<ext> directory structure that linuxdeploy nominally expects, # Copy icons into the <resolution>/<app_name>.<ext> directory structure that linuxdeploy nominally expects,
# e.g. 16x16/duckstation-qt.png, 32x32/duckstation-qt.png, etc. # e.g. 16x16/duckstation-qt.png, 32x32/duckstation-qt.png, etc.
FRONTENDS=("qt" "sdl") FRONTENDS=("qt" "nogui")
ICONS_QT=() ICONS_QT=()
ICONS_SDL=() ICONS_NOGUI=()
for filename in ${APPIMAGE_RESOURCES_DIR}/icon-*px.png; do for filename in ${APPIMAGE_RESOURCES_DIR}/icon-*px.png; do
[[ ${filename} =~ ${APPIMAGE_RESOURCES_DIR}/icon-(.*)px.png ]]; [[ ${filename} =~ ${APPIMAGE_RESOURCES_DIR}/icon-(.*)px.png ]];
@ -81,11 +81,11 @@ OUTPUT="duckstation-qt-x64.AppImage" \
${BUILD_DIR}/linuxdeploy-plugin-appimage-x86_64.AppImage \ ${BUILD_DIR}/linuxdeploy-plugin-appimage-x86_64.AppImage \
--appdir=${BUILD_DIR}/duckstation-qt.AppDir --appdir=${BUILD_DIR}/duckstation-qt.AppDir
UPDATE_INFORMATION="zsync|https://github.com/stenzek/duckstation/releases/download/latest/duckstation-sdl-x64.AppImage.zsync" \ UPDATE_INFORMATION="zsync|https://github.com/stenzek/duckstation/releases/download/latest/duckstation-nogui-x64.AppImage.zsync" \
OUTPUT="duckstation-sdl-x64.AppImage" \ OUTPUT="duckstation-nogui-x64.AppImage" \
${BUILD_DIR}/linuxdeploy-x86_64.AppImage \ ${BUILD_DIR}/linuxdeploy-x86_64.AppImage \
--appdir=${BUILD_DIR}/duckstation-sdl.AppDir \ --appdir=${BUILD_DIR}/duckstation-nogui.AppDir \
--executable=${BUILD_DIR}/bin/duckstation-sdl \ --executable=${BUILD_DIR}/bin/duckstation-nogui \
--desktop-file=${APPIMAGE_RESOURCES_DIR}/duckstation-sdl.desktop \ --desktop-file=${APPIMAGE_RESOURCES_DIR}/duckstation-nogui.desktop \
${ICONS_SDL[@]/#/--icon-file=} \ ${ICONS_NOGUI[@]/#/--icon-file=} \
--output=appimage --output=appimage