From 2dabccffc6c8179bc7369efa4d4faa795d7f952c Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Sun, 31 Jan 2021 17:28:42 +1000 Subject: [PATCH] CI: Package NoGUI AppImage on Linux instead of SDL --- .github/workflows/rolling-release.yml | 32 +++++++++---------- CMakeLists.txt | 2 +- ...-sdl.desktop => duckstation-nogui.desktop} | 8 ++--- appimage/generate_appimages.sh | 16 +++++----- 4 files changed, 29 insertions(+), 29 deletions(-) rename appimage/{duckstation-sdl.desktop => duckstation-nogui.desktop} (60%) diff --git a/.github/workflows/rolling-release.yml b/.github/workflows/rolling-release.yml index dc4d69443..58e43aa5a 100644 --- a/.github/workflows/rolling-release.yml +++ b/.github/workflows/rolling-release.yml @@ -173,21 +173,21 @@ jobs: run: | mkdir 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 ../appimage/generate_appimages.sh $(pwd) - - name: Upload SDL AppImage + - name: Upload NoGUI AppImage uses: actions/upload-artifact@v1 with: - name: "linux-x64-appimage-sdl" - path: "build/duckstation-sdl-x64.AppImage" + name: "linux-x64-appimage-nogui" + path: "build/duckstation-nogui-x64.AppImage" - - name: Upload SDL AppImage zsync + - name: Upload NoGUI AppImage zsync uses: actions/upload-artifact@v1 with: - name: "linux-x64-appimage-sdl-zsync" - path: "build/duckstation-sdl-x64.AppImage.zsync" + name: "linux-x64-appimage-nogui-zsync" + path: "build/duckstation-nogui-x64.AppImage.zsync" - name: Upload Qt AppImage uses: actions/upload-artifact@v1 @@ -262,7 +262,7 @@ jobs: mkdir build cd build 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 cd bin zip -r duckstation-mac-release.zip DuckStation.app/ @@ -289,15 +289,15 @@ jobs: with: name: "windows-arm64" - - name: Download SDL AppImage Artifact + - name: Download NoGUI AppImage Artifact uses: actions/download-artifact@v1 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 with: - name: "linux-x64-appimage-sdl-zsync" + name: "linux-x64-appimage-nogui-zsync" - name: Download Qt AppImage Artifact uses: actions/download-artifact@v1 @@ -332,8 +332,8 @@ jobs: windows/duckstation-windows-x64-release-symbols.zip windows-arm64/duckstation-windows-arm64-release.zip windows-arm64/duckstation-windows-arm64-release-symbols.zip - linux-x64-appimage-sdl/duckstation-sdl-x64.AppImage - linux-x64-appimage-sdl-zsync/duckstation-sdl-x64.AppImage.zsync + linux-x64-appimage-nogui/duckstation-nogui-x64.AppImage + linux-x64-appimage-nogui-zsync/duckstation-nogui-x64.AppImage.zsync linux-x64-appimage-qt/duckstation-qt-x64.AppImage linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync android/duckstation-android.apk @@ -351,8 +351,8 @@ jobs: windows/duckstation-windows-x64-release-symbols.zip windows-arm64/duckstation-windows-arm64-release.zip windows-arm64/duckstation-windows-arm64-release-symbols.zip - linux-x64-appimage-sdl/duckstation-sdl-x64.AppImage - linux-x64-appimage-sdl-zsync/duckstation-sdl-x64.AppImage.zsync + linux-x64-appimage-nogui/duckstation-nogui-x64.AppImage + linux-x64-appimage-nogui-zsync/duckstation-nogui-x64.AppImage.zsync linux-x64-appimage-qt/duckstation-qt-x64.AppImage linux-x64-appimage-qt-zsync/duckstation-qt-x64.AppImage.zsync android/duckstation-android.apk diff --git a/CMakeLists.txt b/CMakeLists.txt index 29373e497..46be669b6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ set(CMAKE_OSX_DEPLOYMENT_TARGET "10.14.0" CACHE STRING "") # Global options. 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_QT_FRONTEND "Build the Qt frontend" ON) option(ENABLE_DISCORD_PRESENCE "Build with Discord Rich Presence support" ON) diff --git a/appimage/duckstation-sdl.desktop b/appimage/duckstation-nogui.desktop similarity index 60% rename from appimage/duckstation-sdl.desktop rename to appimage/duckstation-nogui.desktop index 6c5983bd4..5dd3bbcb4 100644 --- a/appimage/duckstation-sdl.desktop +++ b/appimage/duckstation-nogui.desktop @@ -1,10 +1,10 @@ [Desktop Entry] Type=Application -Name=DuckStation SDL +Name=DuckStation NoGUI GenericName=PlayStation 1 Emulator Comment=Fast-ish PlayStation 1 emulator -Icon=duckstation-sdl -TryExec=duckstation-sdl -Exec=duckstation-sdl %f +Icon=duckstation-nogui +TryExec=duckstation-nogui +Exec=duckstation-nogui %f Terminal=true Categories=Game;Emulator; diff --git a/appimage/generate_appimages.sh b/appimage/generate_appimages.sh index d29a185a9..28edd75f6 100755 --- a/appimage/generate_appimages.sh +++ b/appimage/generate_appimages.sh @@ -28,9 +28,9 @@ chmod a+x ${BUILD_DIR}/linuxdeploy-plugin-appimage-x86_64.AppImage # Copy icons into the /. directory structure that linuxdeploy nominally expects, # e.g. 16x16/duckstation-qt.png, 32x32/duckstation-qt.png, etc. -FRONTENDS=("qt" "sdl") +FRONTENDS=("qt" "nogui") ICONS_QT=() -ICONS_SDL=() +ICONS_NOGUI=() for filename in ${APPIMAGE_RESOURCES_DIR}/icon-*px.png; do [[ ${filename} =~ ${APPIMAGE_RESOURCES_DIR}/icon-(.*)px.png ]]; @@ -81,11 +81,11 @@ OUTPUT="duckstation-qt-x64.AppImage" \ ${BUILD_DIR}/linuxdeploy-plugin-appimage-x86_64.AppImage \ --appdir=${BUILD_DIR}/duckstation-qt.AppDir -UPDATE_INFORMATION="zsync|https://github.com/stenzek/duckstation/releases/download/latest/duckstation-sdl-x64.AppImage.zsync" \ -OUTPUT="duckstation-sdl-x64.AppImage" \ +UPDATE_INFORMATION="zsync|https://github.com/stenzek/duckstation/releases/download/latest/duckstation-nogui-x64.AppImage.zsync" \ +OUTPUT="duckstation-nogui-x64.AppImage" \ ${BUILD_DIR}/linuxdeploy-x86_64.AppImage \ - --appdir=${BUILD_DIR}/duckstation-sdl.AppDir \ - --executable=${BUILD_DIR}/bin/duckstation-sdl \ - --desktop-file=${APPIMAGE_RESOURCES_DIR}/duckstation-sdl.desktop \ - ${ICONS_SDL[@]/#/--icon-file=} \ + --appdir=${BUILD_DIR}/duckstation-nogui.AppDir \ + --executable=${BUILD_DIR}/bin/duckstation-nogui \ + --desktop-file=${APPIMAGE_RESOURCES_DIR}/duckstation-nogui.desktop \ + ${ICONS_NOGUI[@]/#/--icon-file=} \ --output=appimage