{ "app-id": "org.suyu_emu.suyu", "runtime": "org.kde.Platform", "runtime-version": "5.15-23.08", "sdk": "org.kde.Sdk", "base": "io.qt.qtwebengine.BaseApp", "base-version": "5.15-23.08", "command": "suyu-launcher", "finish-args": [ "--device=all", "--socket=fallback-x11", "--socket=wayland", "--socket=pulseaudio", "--share=network", "--share=ipc", "--filesystem=xdg-run/app/com.discordapp.Discord:ro", "--filesystem=home:ro", "--filesystem=/run/media:ro", "--talk-name=org.freedesktop.login1.Manager", "--env=QTWEBENGINEPROCESS_PATH=/app/bin/QtWebEngineProcess" ], "cleanup": [ "/include", "/bin/glslang", "/bin/glslangValidator", "/bin/zip*", "/bin/zstd*", "/bin/spirv-*", "/bin/sdl2-config", "/lib/pkgconfig", "/lib/cmake", "/share/doc", "/share/man", "/src", "*.a", "*.la" ], "cleanup-commands": [ "/app/cleanup-BaseApp.sh" ], "modules": [ "shared-modules/libusb/libusb.json", { "name": "libzip", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON", "-DCMAKE_BUILD_TYPE=RelWithDebInfo" ], "sources": [ { "type": "archive", "url": "https://github.com/nih-at/libzip/archive/v1.10.1.tar.gz", "sha256": "d56d857d1c3ad4a7f3a4c01a51c6a6e5530e35ab93503f62276e8ba2b306186a", "x-checker-data": { "type": "anitya", "project-id": 10649, "url-template": "https://github.com/nih-at/libzip/archive/v$version.tar.gz" } } ] }, { "name": "zstd", "buildsystem": "meson", "subdir": "build/meson", "config-opts": [ "-Dbin_programs=false", "-Dbin_contrib=false" ], "sources": [ { "type": "archive", "url": "https://github.com/facebook/zstd/releases/download/v1.5.5/zstd-1.5.5.tar.gz", "sha256": "9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4", "x-checker-data": { "type": "anitya", "project-id": 12083, "stable-only": true, "url-template": "https://github.com/facebook/zstd/releases/download/v$version/zstd-$version.tar.gz" } } ] }, { "name": "fmt", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON", "-DFMT_TEST=OFF" ], "sources": [ { "type": "archive", "url": "https://github.com/fmtlib/fmt/releases/download/10.2.1/fmt-10.2.1.zip", "sha256": "312151a2d13c8327f5c9c586ac6cf7cddc1658e8f53edae0ec56509c8fa516c9", "x-checker-data": { "type": "anitya", "project-id": 11526, "versions": { "<": "11.0.0" }, "url-template": "https://github.com/fmtlib/fmt/releases/download/$version/fmt-$version.zip" } } ] }, { "name": "glslang", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_BUILD_TYPE=Release" ], "sources": [ { "type": "archive", "url": "https://github.com/KhronosGroup/glslang/archive/14.0.0.tar.gz", "sha256": "80bbb916a23e94ea9cbfb1acb5d1a44a7e0c9613bcf5b5947c03f2273bdc92b0", "x-checker-data": { "type": "anitya", "stable-only": true, "project-id": 205796, "url-template": "https://github.com/KhronosGroup/glslang/archive/$version.tar.gz" } }, { "type": "archive", "url": "https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/sdk-1.3.261.1.tar.gz", "sha256": "ead95c626ad482882a141d1aa0ce47b9453871f72c42c0b28d39c82f60a52008", "dest": "External/spirv-tools", "x-checker-data": { "type": "anitya", "stable-only": true, "project-id": 334920, "url-template": "https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/sdk-$version.tar.gz" } }, { "type": "archive", "url": "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-1.3.261.1.tar.gz", "sha256": "32b4c6ae6a2fa9b56c2c17233c8056da47e331f76e117729925825ea3e77a739", "dest": "External/spirv-tools/external/spirv-headers", "x-checker-data": { "type": "anitya", "stable-only": true, "project-id": 334920, "url-template": "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-$version.tar.gz" } } ] }, { "name": "catch2", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_BUILD_TYPE=Release", "-DCATCH_INSTALL_EXTRAS=ON", "-DCATCH_BUILD_TESTING=OFF" ], "builddir": true, "sources": [ { "type": "archive", "url": "https://github.com/catchorg/Catch2/archive/v3.5.3.tar.gz", "sha256": "8d723b0535c94860ef8cf6231580fa47d67a3416757ecb10639e40d748ab6c71", "x-checker-data": { "type": "anitya", "stable-only": true, "versions": { "<": "4.0.0" }, "project-id": 7680, "url-template": "https://github.com/catchorg/Catch2/archive/v$version.tar.gz" } } ] }, { "name": "nlohmann-json", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_BUILD_TYPE=Release", "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON", "-DJSON_BuildTests=OFF" ], "sources": [ { "type": "archive", "url": "https://github.com/nlohmann/json/archive/v3.11.3.tar.gz", "sha256": "0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406", "x-checker-data": { "type": "anitya", "project-id": 11152, "url-template": "https://github.com/nlohmann/json/archive/v$version.tar.gz" } } ] }, { "name": "boost", "buildsystem": "simple", "build-commands": [ "./bootstrap.sh --with-libraries=context,container,system,headers", "./b2 -j $FLATPAK_BUILDER_N_JOBS install --prefix=/app" ], "sources": [ { "type": "archive", "url": "https://boostorg.jfrog.io/artifactory/main/release/1.84.0/source/boost_1_84_0.tar.bz2", "sha256": "cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454", "x-checker-data": { "type": "anitya", "project-id": 6845, "url-template": "https://boostorg.jfrog.io/artifactory/main/release/$version/source/boost_${version0}_${version1}_${version2}.tar.bz2" } } ] }, { "name": "nv-codec-headers", "make-install-args": [ "PREFIX=/app" ], "no-autogen": true, "cleanup": [ "*" ], "sources": [ { "type": "git", "url": "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git", "tag": "n12.1.14.0", "commit": "1889e62e2d35ff7aa9baca2bceb14f053785e6f1", "x-checker-data": { "type": "git", "tag-pattern": "^n([\\d.]+)$" } } ] }, { "name": "gamemode", "buildsystem": "meson", "config-opts": [ "-Dwith-sd-bus-provider=no-daemon", "-Dwith-examples=false" ], "sources": [ { "type": "archive", "url": "https://github.com/FeralInteractive/gamemode/releases/download/1.8.1/gamemode-1.8.1.tar.xz", "sha256": "cdb117d05d65dbd03c0bd2104df874a1f878db8f23cc4d55bfa44e832482269e", "x-checker-data": { "type": "anitya", "project-id": 17418, "stable-only": true, "url-template": "https://github.com/FeralInteractive/gamemode/releases/download/$version/gamemode-$version.tar.xz" } } ] }, { "name": "rapidjson", "buildsystem": "cmake-ninja", "config-opts": [ "-DCMAKE_BUILD_TYPE=None", "-DRAPIDJSON_HAS_STDSTRING=ON", "-DRAPIDJSON_BUILD_CXX11=ON", "-DRAPIDJSON_BUILD_DOC=OFF", "-DRAPIDJSON_BUILD_EXAMPLES=OFF", "-DRAPIDJSON_BUILD_TESTS=OFF" ], "sources": [ { "type": "archive", "url": "https://github.com/Tencent/rapidjson/archive/v1.1.0/rapidjson-1.1.0.tar.gz", "sha256": "bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e", "x-checker-data": { "type": "anitya", "stable-only": true, "versions": { "=": "1.1.0" }, "project-id": 7422, "url-template": "https://github.com/Tencent/rapidjson/archive/v$version.tar.gz" } } ] }, { "name": "suyu", "buildsystem": "cmake-ninja", "builddir": true, "config-opts": [ "-DCMAKE_BUILD_TYPE=RelWithDebInfo", "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON", "-DENABLE_QT_TRANSLATION=ON", "-DSUYU_ENABLE_COMPATIBILITY_REPORTING=ON", "-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF", "-DSUYU_USE_QT_WEB_ENGINE=ON", "-DSUYU_USE_BUNDLED_FFMPEG=ON", "-DBUILD_TAG=dev", "-DUSE_DISCORD_PRESENCE=ON", "-DBUILD_REPOSITORY=suyu-emu/suyu" ], "build-options": { "env": { "TITLEBARFORMATIDLE": "suyu | dev-flatpak", "TITLEBARFORMATRUNNING": "suyu | dev-flatpak | {}" }, "arch": { "aarch64": { "config-opts": [ "-DENABLE_OPENGL=OFF" ] } } }, "cleanup": [ "/share/man", "/share/pixmaps" ], "post-install": [ "install -Dm755 ../suyu-launcher.sh /app/bin/suyu-launcher", "install -Dm644 ../org.suyu_emu.suyu.metainfo.xml /app/share/metainfo/org.suyu_emu.suyu.metainfo.xml", "install -Dm644 ../org.suyu_emu.suyu.svg /app/share/icons/hicolor/scalable/apps/org.suyu_emu.suyu.svg", "desktop-file-edit --set-key StartupWMClass --set-value suzu --set-key Exec --set-value suyu-launcher /app/share/applications/org.suyu_emu.suyu.desktop", "rm -rf /app/share/appdata" ], "sources": [ { "type": "git", "url": "https://gitlab.com/suyu-emu/suyu.git", "tag": "dev", "disable-shallow-clone": true, "x-checker-data": { "type": "git", "tag-pattern": "^(dev-0-\\d+)$" } }, { "type": "file", "path": "org.suyu_emu.suyu.metainfo.xml" }, { "type": "file", "path": "org.suyu_emu.suyu.svg" }, { "type": "file", "path": "suyu-launcher.sh" }, { "type": "file", "path": "compatibility_list.json", "dest": "dist/compatibility_list" } ] } ] }