mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2025-04-10 19:15:12 +00:00
RPCS3: migrated to AppImage
This commit is contained in:
parent
4ccd5069c7
commit
29df2a1633
|
@ -589,8 +589,8 @@ modules:
|
|||
- name: xemu-dummy-hdd
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- mkdir -p ${FLATPAK_DEST}/retrodeck/extras/XEMU
|
||||
- mv -f "xbox_hdd.qcow2" "${FLATPAK_DEST}/retrodeck/extras/XEMU/xbox_hdd.qcow2"
|
||||
- mkdir -p ${FLATPAK_DEST}/retrodeck/extras/XEMU
|
||||
- mv -f "xbox_hdd.qcow2" "${FLATPAK_DEST}/retrodeck/extras/XEMU/xbox_hdd.qcow2"
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/mborgerson/xemu-hdd-image/releases/latest/download/xbox_hdd.qcow2.zip
|
||||
|
@ -614,49 +614,24 @@ modules:
|
|||
# MELONDS - END
|
||||
|
||||
# RPCS3 - START
|
||||
# https://github.com/flathub/net.rpcs3.RPCS3
|
||||
# https://rpcs3.net/download
|
||||
|
||||
- name: rpcs3
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
build-options:
|
||||
append-ld-library-path: /usr/lib/sdk/llvm18/lib
|
||||
append-path: /usr/lib/sdk/llvm18/bin
|
||||
cflags: &optflags -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
|
||||
-grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection
|
||||
-fcf-protection -fno-omit-frame-pointer
|
||||
cflags-override: true
|
||||
cxxflags: *optflags
|
||||
cxxflags-override: true
|
||||
env:
|
||||
AR: llvm-ar
|
||||
CC: clang
|
||||
CXX: clang++
|
||||
RANLIB: llvm-ranlib
|
||||
ldflags: -fuse-ld=lld
|
||||
config-opts:
|
||||
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
|
||||
- -DBUILD_LLVM=OFF
|
||||
- -DUSE_NATIVE_INSTRUCTIONS=OFF
|
||||
- -DUSE_PRECOMPILED_HEADERS=OFF
|
||||
- -DUSE_SDL=ON
|
||||
- -DUSE_SYSTEM_CURL=ON
|
||||
- -DUSE_SYSTEM_FFMPEG=OFF # Disabled this to force RPCS3 to use our built FFMPEG
|
||||
- -DUSE_SYSTEM_LIBPNG=ON
|
||||
- -DUSE_SYSTEM_SDL=ON
|
||||
- -DUSE_SYSTEM_ZLIB=ON
|
||||
- -Wno-dev
|
||||
post-install:
|
||||
- cp /usr/lib/sdk/llvm18/lib/libLLVM.so.18.1 /app/lib/
|
||||
- |-
|
||||
set -eux
|
||||
COMM_TAG="$(awk -F'[\{,]' '/version{.*}/{printf "%d.%d.%d", $2, $3, $4}' ../rpcs3/rpcs3_version.cpp)"
|
||||
COMM_COUNT="$(git rev-list --count HEAD)";
|
||||
COMM_HASH="$(git rev-parse --short=8 HEAD)";
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- chmod +x *.AppImage
|
||||
- ./*.AppImage --appimage-extract
|
||||
- mkdir -p "${FLATPAK_DEST}/app"
|
||||
- cp -r squashfs-root/usr/bin* "${FLATPAK_DEST}/app/bin"
|
||||
- cp -r squashfs-root/usr/lib* "${FLATPAK_DEST}/app/lib"
|
||||
- cp -r squashfs-root/usr/share* "${FLATPAK_DEST}/app/share"
|
||||
#TODO: - cp -r squashfs-root/usr/optional* # maybe aloready included in flatpak runtime
|
||||
#TODO: - cp -r squashfs-root/usr/plugins* # maybe aloready included in qt
|
||||
#TODO: Do we need this wrapper? squashfs-root/apprun-hooks/linuxdeploy-plugin-qt-hook.sh
|
||||
sources:
|
||||
- type: git
|
||||
url: https://github.com/RPCS3/rpcs3.git
|
||||
commit: 5b973448bf75a239f34fd9c7698c8a02b04e2ea9
|
||||
- type:
|
||||
url: https://github.com/RPCS3/rpcs3-binaries-linux/releases/download/build-ebcb4034119955991a17210af2a45a672fc9533d/rpcs3-v0.0.32-16685-ebcb4034_linux64.AppImage
|
||||
sha526: 2553D56E01A3E3058FA9CEB4E1D61A07EAF2C5BBA9E96B29E8923914D89F6E17
|
||||
|
||||
# RPCS3 - END
|
||||
|
||||
|
@ -699,10 +674,10 @@ modules:
|
|||
|
||||
# PRIMEHACK - END
|
||||
|
||||
# Duckstation-AppImage - START - AUTOUPDATED
|
||||
# Duckstation - START
|
||||
# https://github.com/stenzek/duckstation/releases/tag/preview
|
||||
|
||||
- name: Duckstation-AppImage
|
||||
- name: duckstation
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- chmod +x DuckStation-*.AppImage
|
||||
|
@ -715,173 +690,23 @@ modules:
|
|||
url: https://github.com/stenzek/duckstation/releases/download/v0.1-6937/DuckStation-x64.AppImage
|
||||
sha256: 8a16f034cc8b11341ed9ad382226549301736794582bdec46a5e19b3ca981e07
|
||||
|
||||
# Duckstation-AppImage - END
|
||||
# Duckstation - END
|
||||
|
||||
# Cemu - START
|
||||
# needed libusb 1.0.26 but we provide 1.0.27, it could break
|
||||
# https://github.com/cemu-project/Cemu/releases
|
||||
# https://github.com/flathub/info.cemu.Cemu
|
||||
|
||||
- name: hidapi
|
||||
buildsystem: cmake-ninja
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/libusb/hidapi/archive/refs/tags/hidapi-0.14.0.tar.gz
|
||||
sha256: a5714234abe6e1f53647dd8cba7d69f65f71c558b7896ed218864ffcf405bcbd
|
||||
x-checker-data:
|
||||
type: anitya
|
||||
project-id: 5594
|
||||
stable-only: true
|
||||
url-template: https://github.com/libusb/hidapi/archive/refs/tags/hidapi-$version.tar.gz
|
||||
|
||||
- name: boost
|
||||
- name: cemu
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- ./bootstrap.sh --prefix=${FLATPAK_DEST} --with-toolset=gcc --with-libraries=filesystem,system,program_options,nowide
|
||||
- ./b2 install variant=release link=shared runtime-link=shared cxxflags="$CXXFLAGS"
|
||||
linkflags="$LDFLAGS" -j ${FLATPAK_BUILDER_N_JOBS}
|
||||
cleanup:
|
||||
- /include
|
||||
- /lib/cmake
|
||||
- chmod +x *.AppImage
|
||||
- ./*.AppImage --appimage-extract
|
||||
- mkdir -p "${FLATPAK_DEST}/app"
|
||||
- cp -r squashfs-root/usr/* "${FLATPAK_DEST}/app"
|
||||
#TODO: do we need this wrapper? squashfs-root/apprun-hooks/linuxdeploy-plugin-gtk.sh
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.tar.bz2
|
||||
sha256: 7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617
|
||||
x-checker-data:
|
||||
type: anitya
|
||||
project-id: 6845
|
||||
stable-only: true
|
||||
url-template: https://boostorg.jfrog.io/artifactory/main/release/$version/source/boost_${major}_${minor}_$patch.tar.bz2
|
||||
|
||||
- name: libzip
|
||||
buildsystem: cmake-ninja
|
||||
config-opts:
|
||||
- -DBUILD_DOC=OFF
|
||||
- -DBUILD_EXAMPLES=OFF
|
||||
- -DBUILD_REGRESS=OFF
|
||||
- -DBUILD_TOOLS=OFF
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://libzip.org/download/libzip-1.10.1.tar.xz
|
||||
mirror-urls:
|
||||
- https://github.com/nih-at/libzip/releases/download/v1.10.1/libzip-1.10.1.tar.xz
|
||||
sha256: dc3c8d5b4c8bbd09626864f6bcf93de701540f761d76b85d7c7d710f4bd90318
|
||||
x-checker-data:
|
||||
type: anitya
|
||||
project-id: 10649
|
||||
url-template: https://libzip.org/download/libzip-$version.tar.xz
|
||||
|
||||
- name: fmt
|
||||
buildsystem: cmake-ninja
|
||||
config-opts:
|
||||
- -DFMT_TEST=Off
|
||||
cleanup:
|
||||
- '*'
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/fmtlib/fmt/archive/9.1.0.tar.gz
|
||||
sha256: 5dea48d1fcddc3ec571ce2058e13910a0d4a6bab4cc09a809d8b1dd1c88ae6f2
|
||||
x-checker-data:
|
||||
type: anitya
|
||||
project-id: 11526
|
||||
url-template: https://github.com/fmtlib/fmt/archive/$version.tar.gz
|
||||
versions: {<: '10.0'}
|
||||
|
||||
- name: wxWidgets
|
||||
buildsystem: cmake-ninja
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/cmake
|
||||
- /lib/wx
|
||||
- /share
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.5/wxWidgets-3.2.5.tar.bz2
|
||||
sha256: 0ad86a3ad3e2e519b6a705248fc9226e3a09bbf069c6c692a02acf7c2d1c6b51
|
||||
x-checker-data:
|
||||
type: anitya
|
||||
project-id: 5150
|
||||
stable-only: true
|
||||
url-template: https://github.com/wxWidgets/wxWidgets/releases/download/v$version/wxWidgets-$version.tar.bz2
|
||||
versions: {'!=': 3.2.4-with-msvs2012-fix}
|
||||
|
||||
- name: Cemu
|
||||
buildsystem: cmake-ninja
|
||||
config-opts:
|
||||
- -DPORTABLE=false
|
||||
- -DENABLE_VCPKG=false
|
||||
sources:
|
||||
- type: git
|
||||
url: https://github.com/cemu-project/Cemu
|
||||
# TODO: Update tag pattern on next stable ^v([\d.]+)$
|
||||
x-checker-data:
|
||||
type: git
|
||||
tag-pattern: ^v([\d.]+-\d+)$
|
||||
tag: v2.0-88
|
||||
commit: aefbb918beb8718af8f190a73018ff63bf801d95
|
||||
disable-submodules: true
|
||||
- type: git
|
||||
url: https://github.com/mozilla/cubeb
|
||||
commit: 6c1a6e151c1f981a2800d40af7c041cfcccc710e
|
||||
dest: dependencies/cubeb
|
||||
- type: git
|
||||
url: https://github.com/Exzap/ZArchive
|
||||
dest: dependencies/ZArchive
|
||||
tag: v0.1.2
|
||||
- type: git
|
||||
url: https://github.com/ocornut/imgui
|
||||
dest: dependencies/imgui
|
||||
commit: f65bcf481ab34cd07d3909aab1479f409fa79f2f
|
||||
- type: shell
|
||||
commands:
|
||||
- sed "s/set(EXPERIMENTAL_VERSION.*/set(EXPERIMENTAL_VERSION \"$(git describe
|
||||
--tag | sed "s/v2.0-//")\" CACHE STRING \"\")/g" -i CMakeLists.txt
|
||||
- type: script
|
||||
commands:
|
||||
- |
|
||||
for d in DiscordCanary Discord; do
|
||||
for i in {0..9}; do
|
||||
test -S $XDG_RUNTIME_DIR/discord-ipc-$i ||
|
||||
ln -sf {app/com.discordapp.$d,$XDG_RUNTIME_DIR}/discord-ipc-$i;
|
||||
done
|
||||
done
|
||||
Cemu_relwithdebinfo "$@"
|
||||
dest-filename: Cemu-wrapper
|
||||
- type: script
|
||||
dest-filename: dev_release_metainfo.py
|
||||
commands:
|
||||
- |
|
||||
import os
|
||||
import xml.etree.ElementTree as ET
|
||||
meta_file = os.environ.get('AS_META_FILE')
|
||||
version = os.environ.get('AS_META_VERSION')
|
||||
release_type = os.environ.get('AS_META_TYPE')
|
||||
release_date = os.environ.get('AS_META_DATE')
|
||||
release_url = os.environ.get('AS_META_URL')
|
||||
tree = ET.parse(meta_file)
|
||||
root = tree.getroot()
|
||||
el_releases = root.find('releases')
|
||||
for el_release in el_releases:
|
||||
el_releases.remove(el_release)
|
||||
el_release = ET.SubElement(el_releases, 'release')
|
||||
el_url = ET.SubElement(el_release, 'url')
|
||||
el_url.text = release_url
|
||||
el_release.attrib['type'] = release_type
|
||||
el_release.attrib['date'] = release_date
|
||||
el_release.attrib['version'] = version
|
||||
ET.indent(tree, space=' ', level=0)
|
||||
tree.write(meta_file, encoding='utf8')
|
||||
post-install:
|
||||
- cp -r bin/gameProfiles ${FLATPAK_DEST}/share/Cemu/
|
||||
- cp -r bin/resources ${FLATPAK_DEST}/share/Cemu/
|
||||
- install -Dm644 -t ${FLATPAK_DEST}/share/icons/hicolor/128x128/apps/ dist/linux/info.cemu.Cemu.png
|
||||
- install -D -t ${FLATPAK_DEST}/bin/ bin/Cemu_relwithdebinfo Cemu-wrapper
|
||||
- type:
|
||||
url: https://github.com/cemu-project/Cemu/releases/download/v2.0-88/Cemu-2.0-88-x86_64.AppImage
|
||||
sha526: 1af1ad5322df5fa0e2a97588c7486604daf42deb8c4d07a2b885047d9701fed0
|
||||
|
||||
# Cemu - END
|
||||
|
||||
|
@ -907,6 +732,7 @@ modules:
|
|||
# Vita3K - END
|
||||
|
||||
# SOLARUS - START
|
||||
# why from source: they only provide a snap
|
||||
# https://github.com/flathub/org.solarus_games.solarus.Launcher
|
||||
|
||||
- name: luajit
|
||||
|
|
Loading…
Reference in a new issue