SHADPS4: added (missing ES-DE part)

This commit is contained in:
XargonWan 2024-08-20 21:09:04 +09:00
parent 92990c6224
commit 73942b7f33
4 changed files with 1160 additions and 1136 deletions

View file

@ -24,3 +24,6 @@ hash^RETRODECKMELONDSLATEST^https://github.com/RetroDECK/net.kuribo64.melonDS/re
hash^RETRODECKSOLARUSLATEST^https://github.com/RetroDECK/org.solarus_games.solarus.Launcher/releases/latest/download/RetroDECK-solarus-Artifact.tar.gz
hash^RETRODECKGZDOOMLATEST^https://github.com/RetroDECK/org.zdoom.GZDoom/releases/latest/download/RetroDECK-gzdoom-Artifact.tar.gz
hash^RETRODECKMAMELATEST^https://github.com/RetroDECK/MAME/releases/latest/download/RetroDECK-MAME-Artifact.tar.gz
#This will replace RETRODECKSHADPS4LATESTURL with the URL of the latest artifact and RETRODECKSHADPS4LATESTSHA with its SHA256 hash.
latestghaartifact^RETRODECKSHADPS4LATESTURL^RETRODECKSHADPS4LATESTSHA^https://github.com/shadps4-emu/shadPS4/actions/workflows/linux-qt.yml^shadps4-linux-qt

View file

@ -188,8 +188,44 @@ handle_thisrepo() {
/bin/sed -i 's^'"$placeholder"'^'"$current_repo_url"'^g' "$rd_manifest"
}
# New function to handle the latest artifact from GitHub Actions
handle_latestghaartifact() {
local placeholder_url="$1"
local placeholder_hash="$2"
local workflow_url="$3"
local artifact_name="$4"
echo "Fetching workflow runs from: $workflow_url"
workflow_runs_url=$(echo "$workflow_url" | sed 's/github.com/api.github.com\/repos/' | sed 's/actions\/workflows\/[^\/]*$/actions\/runs/')
local runs_data=$(curl -s "$workflow_runs_url")
local latest_run_url=$(echo "$runs_data" | jq -r ".workflow_runs[0].artifacts_url")
if [[ -z "$latest_run_url" ]]; then
echo "Error: No workflow runs found"
exit 1
fi
echo "Fetching artifacts from the latest run: $latest_run_url"
local artifacts_data=$(curl -s "$latest_run_url")
local artifact_url=$(echo "$artifacts_data" | jq -r ".artifacts[] | select(.name == \"$artifact_name\").archive_download_url")
if [[ -z "$artifact_url" ]]; then
echo "Error: No artifact found with name $artifact_name"
exit 1
fi
echo "Downloading the artifact to calculate the hash..."
local artifact_hash=$(curl -sL "$artifact_url" | sha256sum | cut -d ' ' -f1)
echo "Replacing placeholder $placeholder_url with artifact URL $artifact_url"
echo "Replacing placeholder $placeholder_hash with artifact hash $artifact_hash"
/bin/sed -i 's^'"$placeholder_url"'^'"$artifact_url"'^g' "$rd_manifest"
/bin/sed -i 's^'"$placeholder_hash"'^'"$artifact_hash"'^g' "$rd_manifest"
}
# Process the task list
while IFS="^" read -r action placeholder url branch || [[ -n "$action" ]]; do
while IFS="^" read -r action placeholder url branch artifact_name || [[ -n "$action" ]]; do
if [[ ! "$action" == "#"* ]] && [[ -n "$action" ]]; then
case "$action" in
"branch" ) handle_branch "$placeholder" ;;
@ -203,6 +239,7 @@ while IFS="^" read -r action placeholder url branch || [[ -n "$action" ]]; do
"custom_command" ) handle_custom_command "$url" ;;
"url" ) handle_url "$placeholder" "$url" ;;
"THISREPO" ) handle_thisrepo "$placeholder" ;;
"latestghaartifact" ) handle_latestghaartifact "$placeholder" "$branch" "$url" "$artifact_name" ;;
esac
fi
done < "$automation_task_list"

View file

@ -1,46 +1,44 @@
{
"about_links": {
"example_site": {
"description": "Updated description.",
"name": "Updated Site",
"url": "https://updated-example.com"
},
"rd_changelog": {
"description": "Opens the RetroDECK change log in your default browser",
"name": "Changelog",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_rd_versions/version-history/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_rd_versions/version-history/"
},
"rd_contactus": {
"description": "Opens the RetroDECK contact us section in your default browser",
"name": "Contact us",
"url": "https://github.com/XargonWan/RetroDECK",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://github.com/XargonWan/RetroDECK"
},
"rd_credits": {
"description": "Opens the RetroDECK Credits in your default browser",
"name": "Credits",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/"
},
"rd_donate": {
"description": "Opens Donations page in your default browser",
"name": "Donate",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/"
},
"rd_licenses": {
"description": "Opens the RetroDECK licenses in your default browser",
"name": "Licences",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/"
},
"rd_web": {
"description": "Opens the RetroDECK Website in your default browser",
"name": "Website",
"url": "https://retrodeck.net/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.net/"
},
"rd_wiki": {
"description": "Opens the RetroDECK Wiki in your default browser",
"name": "Wiki",
"url": "https://retrodeck.readthedocs.io/en/latest/",
"icon": "res://assets/icons/pixelitos/128/internet-web-browser.png"
"url": "https://retrodeck.readthedocs.io/en/latest/"
}
},
"finit_default_options": {
@ -628,6 +626,9 @@
},
"ps3": {
"name": "Sony PlayStation 3"
},
"ps4": {
"name": "Sony PlayStation 4"
},
"psp": {
"name": "Sony PlayStation Portable"
@ -787,9 +788,7 @@
"retroarch": {
"description": "RetroArch (Multi-emulator Frontend)",
"name": "RetroArch",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-guide/",
"launch": "retroarch",
"system": "retroarch",
"properties": [
{
"cheevos": true,
@ -849,7 +848,7 @@
}
]
},
"picodrive_libretro": {
"picodrive_libetro": {
"name": "PicoDrive",
"description": "SEGA MS/MD/CD/32X Libretro Core",
"system": [
@ -866,7 +865,7 @@
}
]
},
"genesisplusgx_libretro": {
"genesisplusgx_libetro": {
"name": "Genesis Plus GX",
"description": "SEGA MS/GG/MD/CD Libretro Core",
"system": [
@ -883,7 +882,7 @@
}
]
},
"genesisplusgxwide_libretro": {
"genesisplusgxwide_libetro": {
"name": "Genesis Plus GX Wide",
"description": "SEGA MS/GG/MD/CD Libretro Core for Wide Screen",
"system": [
@ -899,7 +898,7 @@
}
]
},
"mupen64plus-next_libretro": {
"mupen64plus-next_libetro": {
"name": "Mupen64Plus-Next",
"description": "Nintendo 64 Libretro Core",
"system": "n64",
@ -911,7 +910,7 @@
}
]
},
"snes9x-current_libretro": {
"snes9x-current_libetro": {
"name": "Snes9x - Current",
"description": "Super Nintendo Libretro Core",
"system": "snes",
@ -924,7 +923,7 @@
}
]
},
"gambatte_libretro": {
"gambatte_libetro": {
"name": "Gambatte",
"description": "Game Boy/Color Libretro Core",
"system": [
@ -939,7 +938,7 @@
}
]
},
"mgba_libretro": {
"mgba_libetro": {
"name": "mGBA",
"description": "Game Boy Advance Libretro Core",
"system": "gba",
@ -956,17 +955,14 @@
"mame": {
"description": "MAME: Multiple Arcade Machine Emulator",
"name": "MAME",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/mame/mame-guide/",
"system": [
"arcade"
],
"launch": "mame",
"launch-args": "-inipath /var/config/mame/ini -rompath $(dirname \"$game\") $game"
"launch": "mame"
},
"citra": {
"description": "Citra Nintendo 3DS Emulator (via Ponzu)",
"name": "Citra (via Ponzu)",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/",
"system": "n3ds",
"ponzu": true,
"launch" : "citra-qt",
@ -977,27 +973,17 @@
}
]
},
"ruffle": {
"description": "Flash Games emulator",
"name" : "Ruffle",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/",
"system" : "flash",
"launch": "ruffle-rd-wrapper.sh"
},
"melonds": {
"description": "MelonDS Nintendo DS Emulator",
"name": "melonds",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/melonds/melonds-guide/",
"system": "nds",
"launch": "melonDS"
"launch": "MelonDS"
},
"pcsx2": {
"name": "pcsx2",
"description": "PCSX2 Play Station 2 Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/pcsx2/pcsx2-guide/",
"system": "ps2",
"launch" : "pcsx2-qt",
"launch-args": "-batch $game",
"properties": [
{
"ask_to_exit": true,
@ -1008,9 +994,7 @@
"duckstation": {
"name": "Duckstation",
"description": "PlayStation Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/duckstation/duckstation-guide/",
"launch": "duckstation-qt",
"launch-args": "-batch $game",
"system": "psx",
"properties": [
{
@ -1022,7 +1006,6 @@
"ppsspp": {
"name": "PPSSPP",
"description": "PPSSPP: PlayStation Portable Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ppsspp/ppsspp-guide/",
"launch": "PPSSPPSDL",
"system": "psp",
"properties": [
@ -1035,18 +1018,14 @@
"vita3k": {
"name": "Vita3k",
"description": "Vita3K PSVita Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/vita3k/vita3k-guide/",
"system": "psvita",
"launch": "Vita3K",
"launch-args": "-r $game.psvita"
"launch": "Vita3K"
},
"rpcs3": {
"name": "RPCS3",
"description": "RPCS3 PlayStation 3 Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/rpcs3/rpcs3-guide/",
"system": "ps3",
"launch": "rpcs3",
"launch-override": "cd $(dirname $game) && rpcs3 $game",
"properties": [
{
"ask_to_exit": true
@ -1056,26 +1035,27 @@
"ryujinx": {
"name": "Ryujinx",
"description": "Ryujinx Nintendo Switch Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ryujinx/ryujinx-guide/",
"system": "switch",
"launch": "Ryujinx.sh"
},
"shadps4" : {
"description": "PS4 Emulator for Linux",
"name": "shadps4",
"system": "ps4",
"launch": "shadps4-qt"
}
"yuzu": {
"name": "Yuzu (via Ponzu)",
"description": "Yuzu Nintendo Switch Emulator (via Ponzu)",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/",
"launch": "Yuzu",
"system": "switch",
"launch-args": "-f -g $game",
"ponzu": true,
"abxy_button": true
},
"dolphin": {
"name": "Dolphin",
"description": "Dolphin Wii and GameCube Emulator",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-guide/",
"launch": "dolphin-emu-wrapper",
"launch-args": "-e $game",
"system": [
"gc",
"wii"
@ -1093,9 +1073,7 @@
"primehack": {
"name": "PrimeHack",
"description": "A fork of Dolphiin to enhance Metroid Prime experience",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-guide/",
"launch": "primehack-wrapper",
"launch-args": "-e $game",
"system": [
"wii"
],
@ -1109,10 +1087,8 @@
"cemu": {
"description": "Wii U emulator",
"name": "Cemu",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/cemu/cemu-guide/",
"system": "wiiu",
"launch": "Cemu-wrapper",
"launch-args": "-g $game",
"properties": [
{
"abxy_button": true,
@ -1123,16 +1099,8 @@
"xemu": {
"description": "xemu Xbox Emulator",
"name": "xemu",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/xemu/xemu-guide/",
"system": "xbox",
"launch": "xemu",
"launch-args": "-dvd_path $game"
},
"es-de": {
"description": "ES-DE Emulation Frontend",
"name": "ES-DE",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_es_de/esde-guide/."
, "launch": "es-de"
"launch": "xemu"
}
}
}

View file

@ -524,6 +524,22 @@ modules:
url: https://github.com/RetroDECK/MAME/releases/latest/download/RetroDECK-MAME-Artifact.tar.gz
sha256: RETRODECKMAMELATEST
# SHADPS4
- name: shadps4
buildsystem: simple
build-commands:
- unzip shadps4-linux-qt.zip
- chmod +x *.AppImage
- ./*.AppImage --appimage-extract
- mkdir -p "${FLATPAK_DEST}/retrodeck/tmplib" "${FLATPAK_DEST}/retrodeck/tmplib/debug"
- mv "squashfs-root/usr/lib/"* "${FLATPAK_DEST}/retrodeck/tmplib"
- cp -r squashfs-root/usr/* "${FLATPAK_DEST}/"
sources:
- type: file
url: RETRODECKSHADPS4LATESTURL
sha256: RETRODECKSHADPS4LATESTSHA
# ES-DE
- name: ES-DE