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^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^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 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" /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 # 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 if [[ ! "$action" == "#"* ]] && [[ -n "$action" ]]; then
case "$action" in case "$action" in
"branch" ) handle_branch "$placeholder" ;; "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" ;; "custom_command" ) handle_custom_command "$url" ;;
"url" ) handle_url "$placeholder" "$url" ;; "url" ) handle_url "$placeholder" "$url" ;;
"THISREPO" ) handle_thisrepo "$placeholder" ;; "THISREPO" ) handle_thisrepo "$placeholder" ;;
"latestghaartifact" ) handle_latestghaartifact "$placeholder" "$branch" "$url" "$artifact_name" ;;
esac esac
fi fi
done < "$automation_task_list" done < "$automation_task_list"

View file

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

View file

@ -524,6 +524,22 @@ modules:
url: https://github.com/RetroDECK/MAME/releases/latest/download/RetroDECK-MAME-Artifact.tar.gz url: https://github.com/RetroDECK/MAME/releases/latest/download/RetroDECK-MAME-Artifact.tar.gz
sha256: RETRODECKMAMELATEST 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 # ES-DE
- name: ES-DE - name: ES-DE