mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-25 07:25:38 +00:00
Merge branch 'cooker-0.7.2b' into cooker-0.7.2b-ryujinx
This commit is contained in:
commit
0a0a78e4e0
105
.github/workflows/cooker-selfhosted.yml
vendored
105
.github/workflows/cooker-selfhosted.yml
vendored
|
@ -1,4 +1,4 @@
|
|||
name: cooker-selfhosted
|
||||
name: "Build cooker"
|
||||
|
||||
on:
|
||||
push:
|
||||
|
@ -6,8 +6,10 @@ on:
|
|||
- cooker*
|
||||
paths:
|
||||
- '.github/workflows/**'
|
||||
- 'automation_tools/**'
|
||||
- 'emu-configs/**'
|
||||
- 'es-configs/**'
|
||||
- 'functions/**'
|
||||
- 'rd-submodules/**'
|
||||
- '*.sh'
|
||||
- 'net.retrodeck.retrodeck.yml'
|
||||
|
@ -30,9 +32,15 @@ jobs:
|
|||
run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
|
||||
continue-on-error: true
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
- name: Clone RetroDECK repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
- name: Generate build ID
|
||||
- name: "Install dependencies"
|
||||
run: "automation_tools/install_dependencies.sh"
|
||||
|
||||
- name: Generate cooker build ID
|
||||
run: |
|
||||
word1=$(shuf -n 1 ${GITHUB_WORKSPACE}/automation_tools/codename_wordlist.txt)
|
||||
capitalized_word1="$(tr '[:lower:]' '[:upper:]' <<< ${word1:0:1})${word1:1}"
|
||||
|
@ -40,34 +48,63 @@ jobs:
|
|||
capitalized_word2="$(tr '[:lower:]' '[:upper:]' <<< ${word2:0:1})${word2:1}"
|
||||
result=$capitalized_word1$capitalized_word2
|
||||
echo $result > ${GITHUB_WORKSPACE}/buildid
|
||||
ls -lah ${GITHUB_WORKSPACE} # DEBUG
|
||||
cat ${GITHUB_WORKSPACE}/buildid # DEBUG
|
||||
echo "buildid=$result" >> $GITHUB_ENV
|
||||
echo "VersionID is $result"
|
||||
|
||||
- name: Initialize environment
|
||||
- name: Run pre-build automation tasks
|
||||
run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
|
||||
|
||||
- name: "Adding flatpak portal for automated updates (cooker only)"
|
||||
run: sed -i '/finish-args:/a \ \ - --talk-name=org.freedesktop.Flatpak' net.retrodeck.retrodeck.yml
|
||||
|
||||
# - name: "Updating release notes in appdata"
|
||||
# run: "automation_tools/appdata_management.sh"
|
||||
|
||||
- name: "[DEBUG] Outputting manifest"
|
||||
run: cat net.retrodeck.retrodeck.yml
|
||||
|
||||
- name: "Build flatpak: download only"
|
||||
id: "flatpak-download"
|
||||
run: |
|
||||
git pull
|
||||
git submodule init
|
||||
git submodule update
|
||||
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2
|
||||
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
flatpak install --user -y --noninteractive \
|
||||
org.kde.Sdk//6.3 \
|
||||
org.kde.Platform//6.3 \
|
||||
org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 \
|
||||
io.qt.qtwebengine.BaseApp/x86_64/6.3 \
|
||||
org.freedesktop.Sdk.Extension.llvm13 \
|
||||
org.freedesktop.Sdk.Extension.dotnet6/x86_64/22.08 \
|
||||
runtime/org.freedesktop.Platform.ffmpeg-full/x86_64/22.08
|
||||
/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh # Run pre-build automation tasks
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--download-only \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
continue-on-error: true
|
||||
|
||||
# Sometimes flatpak download fails, in this case it tries a second time
|
||||
- name: "Build flatpak: download only (retry)"
|
||||
if: steps.flatpak-download.outcome == 'failure'
|
||||
run: |
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--download-only \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
|
||||
- name: Build flatpak
|
||||
run: |
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean --install-deps-from=flathub --install-deps-from=flathub-beta --repo=${GITHUB_WORKSPACE}/local ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker net.retrodeck.retrodeck.yml
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--disable-download \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
|
||||
- name: Create Artifact for flathub
|
||||
run: |
|
||||
|
@ -79,11 +116,22 @@ jobs:
|
|||
|
||||
- name: Create Bundle
|
||||
run: |
|
||||
flatpak build-bundle ${GITHUB_WORKSPACE}/local RetroDECK.flatpak net.retrodeck.retrodeck
|
||||
flatpak build-bundle ${GITHUB_WORKSPACE}/local RetroDECK-cooker.flatpak net.retrodeck.retrodeck
|
||||
|
||||
- name: Set environment variable with current branch name
|
||||
run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
|
||||
|
||||
- name: Get commits since last release
|
||||
run: |
|
||||
# Get the latest release tag
|
||||
LATEST_TAG=$(git describe --tags --abbrev=0)
|
||||
# Get all commits since the latest release tag
|
||||
COMMITS=$(git log $LATEST_TAG..HEAD --pretty=format:"- %s")
|
||||
# Set the output variable
|
||||
echo "::set-output name=commits::$COMMITS"
|
||||
id: commits
|
||||
continue-on-error: true
|
||||
|
||||
- name: Publish the flatpak in a new cooker release
|
||||
uses: ncipollo/release-action@v1
|
||||
with:
|
||||
|
@ -92,24 +140,25 @@ jobs:
|
|||
# Release Notes (Cooker)
|
||||
This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
|
||||
|
||||
## Commits since last release
|
||||
${{ steps.commits.outputs.commits }}
|
||||
|
||||
For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/qQcrFvaA2C) on our Discord server.
|
||||
|
||||
Cooker channel is provided for the community to test fixes and explore new functionality.
|
||||
Please DO NOT open issues or ask support on this build.
|
||||
|
||||
artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz"
|
||||
artifacts: "RetroDECK-cooker.flatpak,RetroDECK-Artifact.tar.gz"
|
||||
allowUpdates: true
|
||||
#prerelease: true
|
||||
makeLatest: true
|
||||
#draft: true
|
||||
token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
|
||||
repo: RetroDECK-cooker
|
||||
continue-on-error: true
|
||||
|
||||
# In case it cannot publish the release at least it's providing the flatpak file for creating a manual release
|
||||
- name: Upload RetroDECK.flatpak
|
||||
- name: Upload RetroDECK-cooker.flatpak
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: retrodeck-flatpak
|
||||
path: RetroDECK.flatpak
|
||||
continue-on-error: true
|
||||
path: RetroDECK-cooker.flatpak
|
||||
continue-on-error: true
|
||||
|
|
29
.github/workflows/flathub_push_main.yml
vendored
29
.github/workflows/flathub_push_main.yml
vendored
|
@ -1,5 +1,5 @@
|
|||
|
||||
name: PUSH-main-flathub
|
||||
name: "Push main on Flathub"
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
@ -9,6 +9,7 @@ jobs:
|
|||
Pushing_main_into_flathub:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Pushing
|
||||
shell: bash
|
||||
run: |
|
||||
|
@ -47,17 +48,35 @@ jobs:
|
|||
# Copying only a few files as the others are cloned by git in retrodeck.sh
|
||||
cd $gits_folder/RetroDECK
|
||||
cp -rf \
|
||||
'flathub.json' \
|
||||
'LICENSE' \
|
||||
'flathub.yml' \
|
||||
'README.md' \
|
||||
$gits_folder/flathub/
|
||||
|
||||
cd $gits_folder/flathub
|
||||
ls -lah
|
||||
|
||||
# manipulating manifest
|
||||
mv flathub.yml net.retrodeck.retrodeck.yml
|
||||
# Creating the manifest for flathub
|
||||
manifest='net.retrodeck.retrodeck.yml'
|
||||
sed -n '/cleanup/q;p' $gits_folder/RetroDECK/net.retrodeck.retrodeck.yml > $manifest
|
||||
sed -i '/^[[:space:]]*#/d' $manifest
|
||||
sed -i 's/[[:space:]]*#.*$//' $manifest
|
||||
cat << EOF >> $manifest
|
||||
modules:
|
||||
- name: retrodeck
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- cp -rn files/* /app
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://artifacts.retrodeck.net/artifacts/RetroDECK-Artifact.tar.gz
|
||||
sha256: __SHA__
|
||||
EOF
|
||||
|
||||
cat << EOF >> flathub.json
|
||||
{
|
||||
"only-arches": ["x86_64"]
|
||||
}
|
||||
EOF
|
||||
|
||||
# Getting latest release name
|
||||
# version=$(\
|
||||
|
|
82
.github/workflows/main-selfhosted.yml
vendored
82
.github/workflows/main-selfhosted.yml
vendored
|
@ -1,4 +1,4 @@
|
|||
name: main-selfhosted
|
||||
name: "Build main"
|
||||
|
||||
on:
|
||||
push:
|
||||
|
@ -6,8 +6,10 @@ on:
|
|||
- main
|
||||
paths:
|
||||
- '.github/workflows/**'
|
||||
- 'automation_tools/**'
|
||||
- 'emu-configs/**'
|
||||
- 'es-configs/**'
|
||||
- 'functions/**'
|
||||
- 'rd-submodules/**'
|
||||
- '*.sh'
|
||||
- 'net.retrodeck.retrodeck.yml'
|
||||
|
@ -30,35 +32,70 @@ jobs:
|
|||
run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
|
||||
continue-on-error: true
|
||||
|
||||
- name: Generate build ID
|
||||
id: generating_buildid
|
||||
run: echo "##[set-output name=build-id;]$(echo "$( git rev-parse --short HEAD )")"
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
- name: Clone RetroDECK repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
- name: Initialize enviornment
|
||||
- name: "Install dependencies"
|
||||
run: "automation_tools/install_dependencies.sh"
|
||||
|
||||
- name: Run pre-build automation tasks
|
||||
run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
|
||||
|
||||
- name: Read manifest content
|
||||
id: read_manifest
|
||||
run: echo "::set-output name=file_content::$(cat net.retrodeck.retrodeck.yml)"
|
||||
|
||||
# - name: "Updating release notes in appdata"
|
||||
# run: "automation_tools/appdata_management.sh"
|
||||
|
||||
- name: Check versions (main only)
|
||||
id: check_version_string
|
||||
run: "automation_tools/version_checker.sh"
|
||||
|
||||
- name: "Build flatpak: download only"
|
||||
id: "flatpak-download"
|
||||
run: |
|
||||
git pull
|
||||
git submodule init
|
||||
git submodule update
|
||||
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2
|
||||
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
flatpak install --user -y --noninteractive \
|
||||
org.kde.Sdk//6.3 \
|
||||
org.kde.Platform//6.3 \
|
||||
org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 \
|
||||
io.qt.qtwebengine.BaseApp/x86_64/6.3 \
|
||||
org.freedesktop.Sdk.Extension.llvm13 \
|
||||
org.freedesktop.Sdk.Extension.dotnet6/x86_64/22.08 \
|
||||
runtime/org.freedesktop.Platform.ffmpeg-full/x86_64/22.08
|
||||
/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh # Run pre-build automation tasks
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--download-only \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
continue-on-error: true
|
||||
|
||||
# Sometimes flatpak download fails, in this case it tries a second time
|
||||
- name: "Build flatpak: download only (retry)"
|
||||
if: steps.flatpak-download.outcome == 'failure'
|
||||
run: |
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--download-only \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
|
||||
- name: Build flatpak
|
||||
run: |
|
||||
git config --global protocol.file.allow always
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/local
|
||||
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
|
||||
flatpak-builder --user --force-clean --install-deps-from=flathub --install-deps-from=flathub-beta --repo=${GITHUB_WORKSPACE}/local ${GITHUB_WORKSPACE}/retrodeck-flatpak-main net.retrodeck.retrodeck.yml
|
||||
flatpak-builder --user --force-clean \
|
||||
--install-deps-from=flathub \
|
||||
--install-deps-from=flathub-beta \
|
||||
--repo=${GITHUB_WORKSPACE}/local \
|
||||
--disable-download \
|
||||
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
|
||||
net.retrodeck.retrodeck.yml
|
||||
|
||||
- name: Create Artifact for flathub
|
||||
run: |
|
||||
|
@ -92,7 +129,6 @@ jobs:
|
|||
bodyFile: "body.md"
|
||||
artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz"
|
||||
allowUpdates: true
|
||||
#prerelease: true
|
||||
makeLatest: true
|
||||
token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
|
||||
repo: RetroDECK
|
||||
|
|
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -13,5 +13,5 @@ Thumbs.db
|
|||
.flatpak-builder/
|
||||
retrodeck-flatpak-cooker/
|
||||
retrodeck-flatpak/
|
||||
bakcup
|
||||
.old
|
||||
backup
|
||||
.old
|
|
@ -6,6 +6,8 @@
|
|||
![Flathub](https://img.shields.io/flathub/v/net.retrodeck.retrodeck)
|
||||
![Discord](https://img.shields.io/discord/951662718102962256?label=discord)
|
||||
![GitHub](https://img.shields.io/github/license/XargonWan/RetroDECK)
|
||||
[![Documentation Status](https://readthedocs.org/projects/retrodeck/badge/?version=latest)](https://retrodeck.readthedocs.io/en/latest/?badge=latest)
|
||||
|
||||
|
||||
# RetroDECK on your device!
|
||||
|
||||
|
|
91
automation_tools/appdata_management.sh
Executable file
91
automation_tools/appdata_management.sh
Executable file
|
@ -0,0 +1,91 @@
|
|||
#!/bin/bash
|
||||
|
||||
source automation_tools/version_extractor.sh
|
||||
|
||||
# Fetch appdata version
|
||||
appdata_version=$(fetch_appdata_version)
|
||||
echo -e "Appdata:\t\t$appdata_version"
|
||||
|
||||
# Defining manifest file location
|
||||
appdata_file="net.retrodeck.retrodeck.appdata.xml"
|
||||
|
||||
# Check if release with appdata_version already exists
|
||||
if grep -q "version=\"$appdata_version\"" "$appdata_file"; then
|
||||
echo "Deleting existing release version $appdata_version..."
|
||||
|
||||
# Remove the existing release entry
|
||||
sed -i "/<release version=\"$appdata_version\"/,/<\/release>/d" "$appdata_file"
|
||||
fi
|
||||
|
||||
echo "Adding new release version $appdata_version..."
|
||||
|
||||
# Get today's date in the required format (YYYY-MM-DD)
|
||||
today_date=$(date +"%Y-%m-%d")
|
||||
echo "Today is $today_date"
|
||||
|
||||
# Construct the release snippet
|
||||
release_snippet="\
|
||||
<releases>
|
||||
<release version=\"$appdata_version\" date=\"$today_date\">
|
||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/$appdata_version</url>
|
||||
<description>
|
||||
RELEASE_NOTES_PLACEHOLDER
|
||||
</description>
|
||||
</release>"
|
||||
|
||||
# Read the entire content of the XML file
|
||||
xml_content=$(cat "$appdata_file")
|
||||
|
||||
# Replace RELEASE_NOTES_PLACEHOLDER with the actual release notes
|
||||
# TODO
|
||||
git clone https://github.com/XargonWan/RetroDECK.wiki.git /tmp/wiki
|
||||
|
||||
# Path to the markdown file
|
||||
wiki="/tmp/wiki/Version-history:-Patch-Notes.md"
|
||||
# Read the markdown file until the first occurrence of "---"
|
||||
latest_version_notes=""
|
||||
while IFS= read -r line; do
|
||||
if [ "$line" = "---" ]; then
|
||||
break
|
||||
fi
|
||||
latest_version_notes+="$line\n"
|
||||
done < "$wiki"
|
||||
|
||||
# Extract the version number
|
||||
version_number="${latest_version_notes#*# RetroDECK }" # Remove text before "# RetroDECK "
|
||||
version_number="${version_number%% -*}" # Remove text after " - "
|
||||
|
||||
# Extract sections from the latest version notes
|
||||
sections=$(echo "$latest_version_notes" | awk '/##/ { print; }')
|
||||
|
||||
# Create a formatted section list
|
||||
section_list=""
|
||||
current_section=""
|
||||
while IFS= read -r line; do
|
||||
if [[ "$line" == "##"* ]]; then
|
||||
if [ -n "$current_section" ]; then
|
||||
section_list+="</ul>"
|
||||
fi
|
||||
section_name="${line##*# }"
|
||||
section_list+="<p>${section_name}</p><ul>"
|
||||
elif [[ "$line" == "- "* ]]; then
|
||||
entry="${line#*- }"
|
||||
section_list+="<li>${entry}</li>"
|
||||
fi
|
||||
done <<< "$sections"
|
||||
|
||||
if [ -n "$current_section" ]; then
|
||||
section_list+="</ul>"
|
||||
fi
|
||||
|
||||
# Replace RELEASE_NOTES_PLACEHOLDER with the actual release notes
|
||||
release_description="${release_snippet/RELEASE_NOTES_PLACEHOLDER/$section_list}"
|
||||
|
||||
# Append the new release snippet to the content
|
||||
modified_xml_content="${xml_content/<releases>/$release_description}"
|
||||
|
||||
# Overwrite the original XML file with the modified content
|
||||
echo "$modified_xml_content" > "$appdata_file"
|
||||
|
||||
# Format the XML file
|
||||
#xmlstarlet fo --omit-decl "$appdata_file"
|
|
@ -9,3 +9,4 @@ hash^MSXBIOSHASHPLACEHOLDER^http://bluemsx.msxblue.com/rel_download/blueMSXv282f
|
|||
hash^XEMUHDDHASHPLACEHOLDER^https://github.com/mborgerson/xemu-hdd-image/releases/latest/download/xbox_hdd.qcow2.zip
|
||||
latestcommit^UNIVERSALDYNAMICINPUTCOMMITPLACEHOLDER^https://github.com/Venomalia/UniversalDynamicInput^main
|
||||
outside_info^VERSIONPLACEHOLDER^${GITHUB_WORKSPACE}/buildid
|
||||
branch^THISBRANCH
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Don't use this script lightly
|
||||
|
||||
git submodule deinit --all
|
||||
rm rd-submodules/retroarch
|
||||
git rm -rf --cached rd-submodules/retroarch
|
5
automation_tools/install_dependencies.sh
Executable file
5
automation_tools/install_dependencies.sh
Executable file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
# This scritp is installing the required dependencies to correctly run the pipeline and buold the flatpak
|
||||
|
||||
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 curl
|
||||
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
10
automation_tools/pre_build_automation.sh
Normal file → Executable file
10
automation_tools/pre_build_automation.sh
Normal file → Executable file
|
@ -15,6 +15,7 @@
|
|||
|
||||
rd_manifest=${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml
|
||||
automation_task_list=${GITHUB_WORKSPACE}/automation_tools/automation_task_list.cfg
|
||||
current_branch=$(git rev-parse --abbrev-ref HEAD)
|
||||
|
||||
echo "Manifest location: $rd_manifest"
|
||||
echo "Automation task list location: $automation_task_list"
|
||||
|
@ -23,10 +24,17 @@ echo "Task list contents:"
|
|||
cat "$automation_task_list"
|
||||
echo
|
||||
|
||||
# Update all collected information
|
||||
while IFS="^" read -r action placeholder url branch
|
||||
do
|
||||
if [[ ! $action == "#"* ]] && [[ ! -z "$action" ]]; then
|
||||
if [[ "$action" == "hash" ]]; then
|
||||
if [[ "$action" == "branch" ]]; then
|
||||
echo
|
||||
echo "Placeholder text: $placeholder"
|
||||
echo "Current branch:" "$current_branch"
|
||||
echo
|
||||
/bin/sed -i 's^'"$placeholder"'^'"$current_branch"'^g' $rd_manifest
|
||||
elif [[ "$action" == "hash" ]]; then
|
||||
echo
|
||||
echo "Placeholder text: $placeholder"
|
||||
echo "URL to hash: $url"
|
||||
|
|
63
automation_tools/version_checker.sh
Executable file
63
automation_tools/version_checker.sh
Executable file
|
@ -0,0 +1,63 @@
|
|||
#!/bin/bash
|
||||
# This script is used to check that the versions are correct and topping the pipeline if something is wrong.
|
||||
# This is designed to be run on the main pipeline to check that everything is in order before building RetroDECK.
|
||||
|
||||
source automation_tools/version_extractor.sh
|
||||
|
||||
# Set the file paths
|
||||
appdata="net.retrodeck.retrodeck.appdata.xml"
|
||||
manifest="net.retrodeck.retrodeck.yml"
|
||||
manifest_content=$(cat "$manifest")
|
||||
|
||||
compare_versions() {
|
||||
local manifest_version_cleaned=$(echo "$1" | sed 's/[a-zA-Z]//g')
|
||||
local appdata_version_cleaned=$(echo "$2" | sed 's/[a-zA-Z]//g')
|
||||
|
||||
if [[ "$manifest_version_cleaned" == "$appdata_version_cleaned" ]]; then
|
||||
return 0 # Versions are equal
|
||||
fi
|
||||
|
||||
local IFS=.
|
||||
local manifest_parts=($manifest_version_cleaned)
|
||||
local appdata_parts=($appdata_version_cleaned)
|
||||
|
||||
for ((i=0; i<${#manifest_parts[@]}; i++)); do
|
||||
if ((manifest_parts[i] > appdata_parts[i])); then
|
||||
return 1 # Manifest version is greater
|
||||
elif ((manifest_parts[i] < appdata_parts[i])); then
|
||||
return 2 # Appdata version is greater
|
||||
fi
|
||||
done
|
||||
|
||||
return 0 # Versions are equal
|
||||
}
|
||||
|
||||
repo_version=$(fetch_repo_version)
|
||||
echo -e "Online repository:\t$repo_version"
|
||||
|
||||
manifest_version=$(fetch_manifest_version)
|
||||
echo -e "Manifest:\t\t$manifest_version"
|
||||
|
||||
appdata_version=$(fetch_appdata_version)
|
||||
echo -e "Appdata:\t\t$appdata_version"
|
||||
|
||||
# Additional checks
|
||||
if [[ "$manifest_version" == "main" || "$manifest_version" == "THISBRANCH" ]]; then
|
||||
echo "Manifest version cannot be 'main' or 'THISBRANCH'. Please fix it."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ "$appdata_version" != "$manifest_version" ]]; then
|
||||
echo "Appdata version is not equal to manifest version. Please fix it."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
compare_versions "$repo_version" "$manifest_version"
|
||||
result=$?
|
||||
|
||||
if [ "$result" -eq 1 ]; then
|
||||
echo "Repository version is less than manifest version. Please fix it."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "All checks passed. Well done!"
|
28
automation_tools/version_extractor.sh
Executable file
28
automation_tools/version_extractor.sh
Executable file
|
@ -0,0 +1,28 @@
|
|||
#!/bin/bash
|
||||
|
||||
appdata="net.retrodeck.retrodeck.appdata.xml"
|
||||
manifest="net.retrodeck.retrodeck.yml"
|
||||
manifest_content=$(cat "$manifest")
|
||||
|
||||
fetch_repo_version(){
|
||||
# Getting latest RetroDECK release info
|
||||
LATEST_RELEASE=$(curl -s "https://api.github.com/repos/XargonWan/RetroDECK/releases/latest")
|
||||
# Extracting tag name from the latest release
|
||||
repo_version=$(echo "$LATEST_RELEASE" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
|
||||
# Printing results
|
||||
echo "$repo_version"
|
||||
}
|
||||
|
||||
fetch_appdata_version(){
|
||||
# Extract the version from the net.retrodeck.retrodeck.appdata.xml file
|
||||
appdata_version=$(grep -oPm1 "(?<=<release version=\")[^\"]+" "$appdata")
|
||||
echo "$appdata_version"
|
||||
}
|
||||
|
||||
fetch_manifest_version(){
|
||||
# Use awk to extract the value of the first iteration of VERSION variable
|
||||
manifest_version=$(echo "$manifest_content" | awk '/VERSION=/ && !/#/ { sub(/.*VERSION=/, ""); sub(/#.*/, ""); print; exit }')
|
||||
# Trim leading and trailing whitespace
|
||||
manifest_version=$(echo "$manifest_version" | awk '{$1=$1;print}')
|
||||
echo "$manifest_version"
|
||||
}
|
|
@ -286,6 +286,10 @@ gambatte_gb_link_network_server_ip_9 = "0"
|
|||
gambatte_gb_palette_pixelshift_1 = "PixelShift 01 - Arctic Green"
|
||||
gambatte_gb_palette_twb64_1 = "TWB64 001 - Aqours Blue"
|
||||
gambatte_gb_palette_twb64_2 = "TWB64 101 - 765PRO Pink"
|
||||
gambatte_gb_input_player1_l = "nul"
|
||||
gambatte_gb_input_player1_l_btn = "nul"
|
||||
gambatte_gb_input_player1_r = "nul"
|
||||
gambatte_gb_input_player1_r_btn = "nul"
|
||||
gambatte_gbc_color_correction = "GBC only"
|
||||
gambatte_gbc_color_correction_mode = "accurate"
|
||||
gambatte_gbc_frontlight_position = "central"
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
The ~/retrodeck/texture_packs/duckstaiton/ represents the /duckstation/textures/ folder in Duckstation.
|
||||
|
||||
Note:
|
||||
Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
|
||||
|
||||
Note:
|
||||
TITLEID is different for every game.
|
||||
|
||||
Enable Custom Textures
|
||||
- Open up Duckstation inside RetroDECK Configurator by pressing Open Emulator - Duckstation.
|
||||
- Go to Settings -> Advanced -> Tweaks/Hacks
|
||||
- Enable VRAM Write Texture Replacement and set it to On.
|
||||
- Preload Texture Replacements and set it to On.
|
||||
|
||||
How do I add texture packs?
|
||||
Requirements: Texture pack files
|
||||
|
||||
NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
|
||||
|
||||
Texture folder directly
|
||||
- Extract any texture pack files from compressed .zip or any other format into folders.
|
||||
- Go into ~/retrodeck/texture_packs/duckstation/. The folders are all named by TITLEID.
|
||||
- Move textures into the right ~/retrodeck/texture_packs/duckstation/<TITLEID> folder.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/Duckstation%3A-Texture-Packs
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,32 @@
|
|||
RetroArch - NES - Mesen
|
||||
The texture_packs/RetroArch-Mesen/ represents /retroarch/system/HdPacks/ folder.
|
||||
|
||||
Note:
|
||||
Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
|
||||
|
||||
Enable Texture Packs in the Mesen core for certain games
|
||||
From the RetroArch Quick Menu
|
||||
|
||||
- Go to Core Options -> Enable HD Packs set to On
|
||||
- Then save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options
|
||||
|
||||
How do I add texture packs that can be used by the Mesen Core?
|
||||
NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
|
||||
|
||||
- All texture packs go into the texture_packs/RetroArch-Mesen/ folder.
|
||||
- The texture pack have to be extracted from .zip or other compressed format into a folder.
|
||||
- The name of the folder must be the same name as that of the rom file the texture pack is for.
|
||||
Example:
|
||||
|
||||
You want apply a texture pack to a game called ScaryCastle USA.nes and you have downloaded the ScaryCastle TexturePACK HD.zip.
|
||||
|
||||
- Extract the ScaryCastle TexturePACK HD.zip
|
||||
- Move the extracted ScaryCastle TexturePACK HD folder into texture_packs/RetroArch-Mesen/
|
||||
- Rename the ScaryCastle TexturePACK HD folder so it has the same name as the rom ScaryCastle USA without the .nes file extension.
|
||||
- Start up RetroDECK and select the ScaryCastle nes games.
|
||||
NOTE: On the Steam Deck go into GameMode first, then launch RetroDECK.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mesen%3A-Texture-Packs
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,30 @@
|
|||
RetroArch - N64 - Mupen64Plus-Next
|
||||
|
||||
The directory 'texture_packs/RetroArch-Mupen64Plus/' corresponds to the '/retroarch/system/Mupen64plus/' folder.
|
||||
|
||||
Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
|
||||
|
||||
To enable Texture Packs in the Mupen64Plus-Next core for certain games, follow these steps:
|
||||
|
||||
1. Open the RetroArch Quick Menu.
|
||||
2. Navigate to Core Options -> GLideN64.
|
||||
3. Set 'Use High-Res Textures', 'Cache Textures', 'Use High-Res Full Alpha Channel', and 'Use Hi-Res Storage' to On.
|
||||
4. Save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options.
|
||||
|
||||
Optionally, you can set 'Use High-Res Texture Cache Compression' to On to compress uncompressed HD Textures into .hts files.
|
||||
|
||||
To add texture packs that can be used by the Mupen64Plus-Next Core:
|
||||
|
||||
Note: On the Steam Deck, this could be easier to do in Desktop Mode.
|
||||
|
||||
1. All texture packs go into the 'texture_packs//RetroArch-Mupen64Plus/hires_texture/' or 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
|
||||
2. The texture pack must be extracted from .zip or other compressed format into a folder.
|
||||
|
||||
For compressed textures stored in .hts files, place them in the 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
|
||||
|
||||
For uncompressed textures stored in loose folders or files, place them in the 'texture_packs/RetroArch-Mupen64Plus/hires_texture/' folder.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mupen64Plus-Next%3A-Texture-Packs
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,26 @@
|
|||
PCSX2 - Playstation 2
|
||||
|
||||
The directory '~/retrodeck/texture_packs/PCSX2/' corresponds to the '/PCSX2/textures/' folder in PCSX2.
|
||||
|
||||
Please note that some texture packs may be designed for a specific version or region of a game. Ensure you have the correct game and textures for it.
|
||||
|
||||
Also, keep in mind that 'TITLEID' is different for every game.
|
||||
|
||||
To enable Custom Textures, follow these steps:
|
||||
|
||||
1. Open up PCSX2 inside RetroDECK Configurator by pressing 'Open Emulator' - 'PCSX2'.
|
||||
2. Press 'Settings' -> 'Graphics'.
|
||||
3. Set 'Load Textures' and 'Async Texture Loading' to On.
|
||||
|
||||
To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
|
||||
|
||||
For direct texture folder:
|
||||
|
||||
1. Extract any texture pack files from compressed .zip or any other format into folders.
|
||||
2. Go into '~/retrodeck/texture_packs/PCSX2/'. The folders are all named by 'TITLEID'.
|
||||
3. Move textures into the correct '~/retrodeck/texture_packs/PCSX2/<TITLEID>' folder.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/PCSX2%3A-Texture-Packs
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,26 @@
|
|||
PPSSPP - PSP
|
||||
|
||||
The directory '~/retrodeck/texture_packs/ppsspp/' corresponds to the '/PSP/TEXTURES/' folder in PPSSPP.
|
||||
|
||||
Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
|
||||
|
||||
Also, keep in mind that 'TITLEID' is different for every game.
|
||||
|
||||
To enable Custom Textures, follow these steps:
|
||||
|
||||
1. Open up PPSSPP inside RetroDECK Configurator by pressing 'Open Emulator' - 'PPSSPP'.
|
||||
2. Press 'Settings' -> 'Tools' -> 'Developer Tools'.
|
||||
3. Set 'Replace Textures' to On.
|
||||
|
||||
To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
|
||||
|
||||
For adding textures:
|
||||
|
||||
1. Extract any texture pack files from compressed .zip or any other format into folders.
|
||||
2. Go into '~/retrodeck/texture_packs/ppsspp/'. The folders are all named by 'TITLEID'.
|
||||
3. Paste the textures into the correct '~/retrodeck/texture_packs/ppsspp/<TITLEID>' folder.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/PPSSPP%3A-Texture-Packs
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,19 @@
|
|||
There are two ways of adding mods into Citra
|
||||
|
||||
From Citra
|
||||
- Extract any mod from compressed .zip or any other format to folders.
|
||||
- Open up Citra inside RetroDECK Configurator by pressing Open Emulator - Citra.
|
||||
- Right click on the game you want to add mods into.
|
||||
- Click on Open Mods Location.
|
||||
- Paste the mod files inside that directory, each folder is stored by the TITLLEID of the game.
|
||||
- Quit Citra
|
||||
|
||||
From the mod folder directly
|
||||
- Extract any mod files from compressed .zip or any other format into folders.
|
||||
- Go into ~/retrodeck/mods/citra/. The folders are all named by TITLEID.
|
||||
- Past the mods into the right ~/retrodeck/mods/yuzu/<TITLEID> folder.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/Citra%3A-Mods#citra---3ds
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,19 @@
|
|||
Prerequisites
|
||||
- Open up Dolphin inside RetroDECK Configurator by pressing Open Emulator - Dolphin.
|
||||
- Press Options -> Graphic Settings
|
||||
- Enable Graphics Mods and set it to On.
|
||||
|
||||
Installation
|
||||
- Extract any mod files from compressed .zip or any other format into folders.
|
||||
- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/dolphin/.
|
||||
- Move the mods into the right folder: ~/retrodeck/mods/dolphin/<GAME_ID>
|
||||
|
||||
Notes:
|
||||
- The ~/retrodeck/mods/dolphin/ that represents the /load/GraphicMods folder.
|
||||
- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
|
||||
- GAME_ID is different for every game.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,19 @@
|
|||
Prerequisites
|
||||
- Open up Primehack inside RetroDECK Configurator by pressing Open Emulator - Primehack.
|
||||
- Press Options -> Graphic Settings
|
||||
- Enable Graphics Mods and set it to On.
|
||||
|
||||
Installation
|
||||
- Extract any mod files from compressed .zip or any other format into folders.
|
||||
- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/primehack/.
|
||||
- Move the mods into the right folder: ~/retrodeck/mods/primehack/<GAME_ID>
|
||||
|
||||
Notes:
|
||||
- The ~/retrodeck/mods/primehack/ that represents the /load/GraphicMods folder.
|
||||
- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
|
||||
- GAME_ID is different for every game.
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
|
||||
|
||||
The RetroDECK Team
|
|
@ -0,0 +1,25 @@
|
|||
There are two ways of adding mods into Yuzu
|
||||
|
||||
From Yuzu directly
|
||||
- Extract any mod files from compressed .zip or any other format to folders.
|
||||
- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
|
||||
- Right click on the game you want to add mods into.
|
||||
- Click on Open Mod Data Destination.
|
||||
- Paste the mod folders inside that directory.
|
||||
- Right clicking on the game and selecting Properties.
|
||||
- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
|
||||
- Quit Yuzu
|
||||
|
||||
From the mods/yuzu folder
|
||||
- Extract any mod files from compressed .zip or any other format into folders.
|
||||
- Go into ~/retrodeck/mods/yuzu/ and file the right folder for the game you want to add mods to. The folders are all named by TITLEID.
|
||||
- Move those folders into ~/retrodeck/mods/yuzu/<TITLEID>
|
||||
- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
|
||||
- Right clicking on the game and selecting Properties.
|
||||
- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
|
||||
- Quit Yuzu
|
||||
|
||||
Related wiki article can be found here:
|
||||
https://github.com/XargonWan/RetroDECK/wiki/Yuzu%3A-Mods
|
||||
|
||||
The RetroDECK Team
|
|
@ -2,12 +2,13 @@ config_file_format^retroarch
|
|||
target_file^/var/config/retroarch/config/mGBA/gba.cfg
|
||||
defaults_file^$emuconfigs/retroarch/retroarch.cfg
|
||||
change^borders^aspect_ratio_index^23
|
||||
change^borders^custom_viewport_height^600
|
||||
change^borders^custom_viewport_width^900
|
||||
change^borders^custom_viewport_x^190
|
||||
change^borders^custom_viewport_y^37
|
||||
change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg
|
||||
change^borders^input_overlay_aspect_adjust_landscape^0.105000
|
||||
change^borders^custom_viewport_height^640
|
||||
change^borders^custom_viewport_width^960
|
||||
change^borders^custom_viewport_x^160
|
||||
change^borders^custom_viewport_y^0
|
||||
change^borders^input_overlay_enable^true
|
||||
change^borders^input_overlay_scale_landscape^1.140000
|
||||
change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg
|
||||
change^borders^input_overlay_aspect_adjust_landscape^0.110000
|
||||
change^borders^input_overlay_scale_landscape^1.2150000
|
||||
change^borders^input_overlay_y_offset_landscape^0.020000
|
||||
enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp
|
||||
|
|
|
@ -10,5 +10,5 @@ change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gbc.
|
|||
change^borders^input_overlay_aspect_adjust_landscape^0.110000
|
||||
change^borders^input_overlay_enable^true
|
||||
change^borders^input_overlay_scale_landscape^1.205000
|
||||
change^borders^input_overlay_y_offset_landscape^0.005000
|
||||
change^borders^input_overlay_y_offset_landscape^-0.040000
|
||||
enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp
|
||||
|
|
|
@ -2,10 +2,12 @@ config_file_format^retroarch
|
|||
target_file^/var/config/retroarch/config/Genesis Plus GX/gg.cfg
|
||||
defaults_file^$emuconfigs/retroarch/retroarch.cfg
|
||||
change^borders^aspect_ratio_index^23
|
||||
change^borders^custom_viewport_width^800
|
||||
change^borders^custom_viewport_x^240
|
||||
change^borders^custom_viewport_y^43
|
||||
change^borders^custom_viewport_width^960
|
||||
change^borders^custom_viewport_height^720
|
||||
change^borders^custom_viewport_x^160
|
||||
change^borders^custom_viewport_y^24
|
||||
change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gg.cfg
|
||||
change^borders^input_overlay_aspect_adjust_landscape^-0.080000
|
||||
change^borders^input_overlay_aspect_adjust_landscape^0.110000
|
||||
change^borders^input_overlay_enable^true
|
||||
change^borders^input_overlay_scale_landscape^1.345000
|
||||
change^borders^input_overlay_scale_landscape^1.350000
|
||||
change^borders^input_overlay_y_offset_landscape^0.020000
|
||||
|
|
|
@ -2,4 +2,17 @@
|
|||
# FILE NAME^DESTINATION
|
||||
# The destination can be an internal variable name like $roms_folder if needed
|
||||
# The FILE name can have spaces in it, but the DESTINATION cannot, even in variable form
|
||||
RetroDECK Example Readme.txt^$rdhome
|
||||
|
||||
# mods
|
||||
how-to-install-citra-mods.txt^$mods_folder/Citra
|
||||
how-to-install-dolphin-mods.txt^$mods_folder/Dolphin
|
||||
how-to-install-primehack-mods.txt^$mods_folder/Primehack
|
||||
how-to-install-yuzu-mods.txt^$mods_folder/Yuzu
|
||||
|
||||
# textures
|
||||
how-to-install-Mesen-textures.txt^$texture_packs_folder/RetroArch-Mesen
|
||||
how-to-install-PPSSPP-textures.txt^$texture_packs_folder/PPSSPP
|
||||
how-to-install-PCSX2-textures.txt^$texture_packs_folder/PCSX2
|
||||
how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/cache
|
||||
how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture
|
||||
how-to-install-Duckstation-textures.txt^$texture_packs_folder/Duckstation
|
||||
|
|
|
@ -13,11 +13,14 @@ Creator of the RetroDECK configurator and various awesome features.
|
|||
Lazorne
|
||||
Community management/outreach, testing, documentation, feature suggestions and some design.
|
||||
|
||||
dottormac
|
||||
Beta Tester
|
||||
|
||||
LX32
|
||||
Junior code contributor, Beta Tester
|
||||
|
||||
|
||||
Collaborators
|
||||
Niroku / Atari
|
||||
Helps with community management, is also part of Batocera
|
||||
|
||||
Leon Styhre
|
||||
Maker of EmulationStation Desktop Edition
|
||||
|
||||
|
@ -27,7 +30,7 @@ Theme creator for ES-DE and AmberELEC
|
|||
|
||||
Additional credits
|
||||
RavenKilit
|
||||
Did some code and testning, contributed to AmberELEC
|
||||
Former Beta Tester and AmberELEC contributor
|
||||
|
||||
MorGuux
|
||||
Made the RetroDECK steamdb graphics for the old logo
|
||||
|
@ -38,11 +41,14 @@ Made the new logo and steamdb graphics
|
|||
teotwaki
|
||||
Generous cloud hosting sponsor
|
||||
|
||||
Niroku / Atari
|
||||
Helps with community management, is also part of Batocera
|
||||
|
||||
Gabeboii
|
||||
Webmaster
|
||||
|
||||
Draco
|
||||
Server Administration
|
||||
Former server admiistrator and code consultant
|
||||
|
||||
ItzSelenux
|
||||
Maker of pixelitos
|
||||
|
@ -56,7 +62,7 @@ Special Thanks
|
|||
We want give special thanks to:
|
||||
|
||||
Our Patreons that keeps the build servers running and provide feedback.
|
||||
All related emulation projects.
|
||||
All related emulation projects, such as Batocera and AmberELEC where we are taking our inspiration.
|
||||
All people that have put both time and money into emulation projects.
|
||||
All the users who help others with support, guidance and good spirit.
|
||||
All the users who help with testing and reporting issues.
|
||||
|
|
|
@ -80,7 +80,7 @@ cheevos_visibility_account = "true"
|
|||
cheevos_visibility_mastery = "true"
|
||||
cheevos_visibility_summary = "1"
|
||||
cheevos_visibility_unlock = "true"
|
||||
config_save_on_exit = "false"
|
||||
config_save_on_exit = "true"
|
||||
content_database_path = "/app/share/libretro/database/rdb"
|
||||
content_favorites_directory = "default"
|
||||
content_favorites_path = "/var/config/retroarch/content_favorites.lpl"
|
||||
|
|
|
@ -15,16 +15,17 @@
|
|||
<entry>RetroArch-Linux-x86_64.AppImage</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.libretro.RetroArch</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.libretro.RetroArch</entry>
|
||||
<entry>~/Applications/RetroArch-Linux*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/RetroArch-Linux*.AppImage</entry>
|
||||
<entry>~/.local/bin/RetroArch-Linux*.AppImage</entry>
|
||||
<entry>~/bin/RetroArch-Linux*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.libretro.RetroArch</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.libretro.RetroArch</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<core name="RETROARCH">
|
||||
<rule type="corepath">
|
||||
<!-- FlatPak RetroDECK -->
|
||||
<!-- Flatpak RetroDECK -->
|
||||
<entry>/app/share/libretro/cores</entry>
|
||||
<!-- Snap package -->
|
||||
<entry>~/snap/retroarch/current/.config/retroarch/cores</entry>
|
||||
|
@ -69,11 +70,12 @@
|
|||
<entry>net.cebix.basilisk</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/net.cebix.basilisk</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/net.cebix.basilisk</entry>
|
||||
<entry>~/Applications/BasiliskII*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/BasiliskII*.AppImage</entry>
|
||||
<entry>~/.local/bin/BasiliskII*.AppImage</entry>
|
||||
<entry>~/bin/BasiliskII*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/net.cebix.basilisk</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/net.cebix.basilisk</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="BLASTEM">
|
||||
|
@ -106,9 +108,11 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/Cemu*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/Cemu*.AppImage</entry>
|
||||
<entry>~/.local/bin/Cemu*.AppImage</entry>
|
||||
<entry>~/bin/Cemu*.AppImage</entry>
|
||||
<entry>~/Applications/Cemu/Cemu</entry>
|
||||
<entry>~/.local/share/applications/Cemu/Cemu</entry>
|
||||
<entry>~/.local/bin/Cemu/Cemu</entry>
|
||||
<entry>~/bin/Cemu/Cemu</entry>
|
||||
</rule>
|
||||
|
@ -122,6 +126,10 @@
|
|||
<entry>org.citra_emu.citra</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/citra*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/citra*.AppImage</entry>
|
||||
<entry>~/.local/bin/citra*.AppImage</entry>
|
||||
<entry>~/bin/citra*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.citra_emu.citra</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.citra_emu.citra</entry>
|
||||
</rule>
|
||||
|
@ -133,6 +141,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/cpcemu/cpcemu</entry>
|
||||
<entry>~/.local/share/applications/cpcemu/cpcemu</entry>
|
||||
<entry>~/.local/bin/cpcemu/cpcemu</entry>
|
||||
<entry>~/bin/cpcemu/cpcemu</entry>
|
||||
</rule>
|
||||
|
@ -141,6 +150,7 @@
|
|||
<!-- Sinclair ZX Spectrum Next emulator #CSpect -->
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/CSpect/CSpect.exe</entry>
|
||||
<entry>~/.local/share/applications/CSpect/CSpect.exe</entry>
|
||||
<entry>~/.local/bin/CSpect/CSpect.exe</entry>
|
||||
<entry>~/bin/CSpect/CSpect.exe</entry>
|
||||
</rule>
|
||||
|
@ -163,11 +173,12 @@
|
|||
<entry>org.DolphinEmu.dolphin-emu</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.DolphinEmu.dolphin-emu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.DolphinEmu.dolphin-emu</entry>
|
||||
<entry>~/Applications/Dolphin_Emulator*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/Dolphin_Emulator*.AppImage</entry>
|
||||
<entry>~/.local/bin/Dolphin_Emulator*.AppImage</entry>
|
||||
<entry>~/bin/Dolphin_Emulator*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.DolphinEmu.dolphin-emu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.DolphinEmu.dolphin-emu</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="DOSBOX-STAGING">
|
||||
|
@ -200,14 +211,16 @@
|
|||
<entry>org.duckstation.DuckStation</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.duckstation.DuckStation</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.duckstation.DuckStation</entry>
|
||||
<entry>~/Applications/duckstation-nogui*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/duckstation-nogui*.AppImage</entry>
|
||||
<entry>~/.local/bin/duckstation-nogui*.AppImage</entry>
|
||||
<entry>~/bin/duckstation-nogui*.AppImage</entry>
|
||||
<entry>~/Applications/duckstation-qt*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/duckstation-qt*.AppImage</entry>
|
||||
<entry>~/.local/bin/duckstation-qt*.AppImage</entry>
|
||||
<entry>~/bin/duckstation-qt*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.duckstation.DuckStation</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.duckstation.DuckStation</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="EASYRPG">
|
||||
|
@ -217,6 +230,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/easyrpg/easyrpg-player</entry>
|
||||
<entry>~/.local/share/applications/easyrpg/easyrpg-player</entry>
|
||||
<entry>~/.local/bin/easyrpg/easyrpg-player</entry>
|
||||
<entry>~/bin/easyrpg/easyrpg-player</entry>
|
||||
</rule>
|
||||
|
@ -228,6 +242,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/fbneo/fbneo</entry>
|
||||
<entry>~/.local/share/applications/fbneo/fbneo</entry>
|
||||
<entry>~/.local/bin/fbneo/fbneo</entry>
|
||||
<entry>~/bin/fbneo/fbneo</entry>
|
||||
</rule>
|
||||
|
@ -239,11 +254,12 @@
|
|||
<entry>org.flycast.Flycast</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.flycast.Flycast</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.flycast.Flycast</entry>
|
||||
<entry>~/Applications/flycast*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/flycast*.AppImage</entry>
|
||||
<entry>~/.local/bin/flycast*.AppImage</entry>
|
||||
<entry>~/bin/flycast*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.flycast.Flycast</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.flycast.Flycast</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="FS-UAE">
|
||||
|
@ -275,11 +291,12 @@
|
|||
<entry>gargoyle</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/io.github.garglk.Gargoyle</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/io.github.garglk.Gargoyle</entry>
|
||||
<entry>~/Applications/Gargoyle*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/Gargoyle*.AppImage</entry>
|
||||
<entry>~/.local/bin/Gargoyle*.AppImage</entry>
|
||||
<entry>~/bin/Gargoyle*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/io.github.garglk.Gargoyle</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/io.github.garglk.Gargoyle</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="GEARBOY">
|
||||
|
@ -289,6 +306,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/gearboy/gearboy</entry>
|
||||
<entry>~/.local/share/applications/gearboy/gearboy</entry>
|
||||
<entry>~/.local/bin/gearboy/gearboy</entry>
|
||||
<entry>~/bin/gearboy/gearboy</entry>
|
||||
</rule>
|
||||
|
@ -297,6 +315,7 @@
|
|||
<!-- Atari 2600 emulator Gopher2600 -->
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/gopher2600/gopher2600_linux_amd64</entry>
|
||||
<entry>~/.local/share/applications/gopher2600/gopher2600_linux_amd64</entry>
|
||||
<entry>~/.local/bin/gopher2600/gopher2600_linux_amd64</entry>
|
||||
<entry>~/bin/gopher2600/gopher2600_linux_amd64</entry>
|
||||
</rule>
|
||||
|
@ -318,6 +337,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/hypseus-singe/hypseus.bin</entry>
|
||||
<entry>~/.local/share/applications/hypseus-singe/hypseus.bin</entry>
|
||||
<entry>~/.local/bin/hypseus-singe/hypseus.bin</entry>
|
||||
<entry>~/bin/hypseus-singe/hypseus.bin</entry>
|
||||
</rule>
|
||||
|
@ -329,6 +349,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/lightspark/lightspark</entry>
|
||||
<entry>~/.local/share/applications/lightspark/lightspark</entry>
|
||||
<entry>~/.local/bin/lightspark/lightspark</entry>
|
||||
<entry>~/bin/lightspark/lightspark</entry>
|
||||
</rule>
|
||||
|
@ -340,6 +361,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/linapple/linapple</entry>
|
||||
<entry>~/.local/share/applications/linapple/linapple</entry>
|
||||
<entry>~/.local/bin/linapple/linapple</entry>
|
||||
<entry>~/bin/linapple/linapple</entry>
|
||||
</rule>
|
||||
|
@ -385,11 +407,12 @@
|
|||
<entry>io.mgba.mGBA</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/io.mgba.mGBA</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/io.mgba.mGBA</entry>
|
||||
<entry>~/Applications/mGBA*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/mGBA*.AppImage</entry>
|
||||
<entry>~/.local/bin/mGBA*.AppImage</entry>
|
||||
<entry>~/bin/mGBA*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/io.mgba.mGBA</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/io.mgba.mGBA</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="MUPEN64PLUS">
|
||||
|
@ -430,6 +453,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/oricutron/Oricutron</entry>
|
||||
<entry>~/.local/share/applications/oricutron/Oricutron</entry>
|
||||
<entry>~/.local/bin/oricutron/Oricutron</entry>
|
||||
<entry>~/bin/oricutron/Oricutron</entry>
|
||||
</rule>
|
||||
|
@ -463,8 +487,8 @@
|
|||
<entry>pico8</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/retrodeck/bios/pico-8/pico8</entry>
|
||||
<entry>~/Applications/pico-8/pico8</entry>
|
||||
<entry>~/.local/share/applications/pico-8/pico8</entry>
|
||||
<entry>~/.local/bin/pico-8/pico8</entry>
|
||||
<entry>~/bin/pico-8/pico8</entry>
|
||||
</rule>
|
||||
|
@ -472,11 +496,12 @@
|
|||
<emulator name="PLAY!">
|
||||
<!-- Sony PlayStation 2 emulator Play! -->
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.purei.Play</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.purei.Play</entry>
|
||||
<entry>~/Applications/Play!*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/Play!*.AppImage</entry>
|
||||
<entry>~/.local/bin/Play!*.AppImage</entry>
|
||||
<entry>~/bin/Play!*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.purei.Play</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.purei.Play</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="PPSSPP">
|
||||
|
@ -516,6 +541,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/punes/punes</entry>
|
||||
<entry>~/.local/share/applications/punes/punes</entry>
|
||||
<entry>~/.local/bin/punes/punes</entry>
|
||||
<entry>~/bin/punes/punes</entry>
|
||||
</rule>
|
||||
|
@ -527,6 +553,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/redream/redream</entry>
|
||||
<entry>~/.local/share/applications/redream/redream</entry>
|
||||
<entry>~/.local/bin/redream/redream</entry>
|
||||
<entry>~/bin/redream/redream</entry>
|
||||
</rule>
|
||||
|
@ -538,11 +565,12 @@
|
|||
<entry>com.github.Rosalie241.RMG</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/com.github.Rosalie241.RMG</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/com.github.Rosalie241.RMG</entry>
|
||||
<entry>~/Applications/RMG*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/RMG*.AppImage</entry>
|
||||
<entry>~/.local/bin/RMG*.AppImage</entry>
|
||||
<entry>~/bin/RMG*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/com.github.Rosalie241.RMG</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/com.github.Rosalie241.RMG</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="RPCS3">
|
||||
|
@ -553,11 +581,12 @@
|
|||
<entry>net.rpcs3.RPCS3</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/net.rpcs3.RPCS3</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/net.rpcs3.RPCS3</entry>
|
||||
<entry>~/Applications/rpcs3*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/rpcs3*.AppImage</entry>
|
||||
<entry>~/.local/bin/rpcs3*.AppImage</entry>
|
||||
<entry>~/bin/rpcs3*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/net.rpcs3.RPCS3</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/net.rpcs3.RPCS3</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="RUFFLE">
|
||||
|
@ -567,6 +596,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/ruffle/ruffle</entry>
|
||||
<entry>~/.local/share/applications/ruffle/ruffle</entry>
|
||||
<entry>~/.local/bin/ruffle/ruffle</entry>
|
||||
<entry>~/bin/ruffle/ruffle</entry>
|
||||
</rule>
|
||||
|
@ -582,9 +612,11 @@
|
|||
<entry>/var/lib/flatpak/exports/bin/org.ryujinx.Ryujinx</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.ryujinx.Ryujinx</entry>
|
||||
<entry>~/Applications/publish/Ryujinx</entry>
|
||||
<entry>~/.local/share/applications/publish/Ryujinx</entry>
|
||||
<entry>~/.local/bin/publish/Ryujinx</entry>
|
||||
<entry>~/bin/publish/Ryujinx</entry>
|
||||
<entry>~/Applications/publish/Ryujinx.Ava</entry>
|
||||
<entry>~/.local/share/applications/publish/Ryujinx.Ava</entry>
|
||||
<entry>~/.local/bin/publish/Ryujinx.Ava</entry>
|
||||
<entry>~/bin/publish/Ryujinx.Ava</entry>
|
||||
</rule>
|
||||
|
@ -618,6 +650,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/sdl2trs/sdl2trs</entry>
|
||||
<entry>~/.local/share/applications/sdl2trs/sdl2trs</entry>
|
||||
<entry>~/.local/bin/sdl2trs/sdl2trs</entry>
|
||||
<entry>~/bin/sdl2trs/sdl2trs</entry>
|
||||
</rule>
|
||||
|
@ -629,6 +662,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/SheepShaver*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/SheepShaver*.AppImage</entry>
|
||||
<entry>~/.local/bin/SheepShaver*.AppImage</entry>
|
||||
<entry>~/bin/SheepShaver*.AppImage</entry>
|
||||
</rule>
|
||||
|
@ -640,6 +674,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/simcoupe/simcoupe</entry>
|
||||
<entry>~/.local/share/applications/simcoupe/simcoupe</entry>
|
||||
<entry>~/.local/bin/simcoupe/simcoupe</entry>
|
||||
<entry>~/bin/simcoupe/simcoupe</entry>
|
||||
</rule>
|
||||
|
@ -701,6 +736,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/Supermodel/supermodel</entry>
|
||||
<entry>~/.local/share/applications/Supermodel/supermodel</entry>
|
||||
<entry>~/.local/bin/Supermodel/supermodel</entry>
|
||||
<entry>~/bin/Supermodel/supermodel</entry>
|
||||
</rule>
|
||||
|
@ -712,6 +748,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/dolphin-emu-triforce*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/dolphin-emu-triforce*.AppImage</entry>
|
||||
<entry>~/.local/bin/dolphin-emu-triforce*.AppImage</entry>
|
||||
<entry>~/bin/dolphin-emu-triforce*.AppImage</entry>
|
||||
</rule>
|
||||
|
@ -720,6 +757,7 @@
|
|||
<!-- Fujitsu FM Towns emulator Tsugaru -->
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/tsugaru/Tsugaru_CUI</entry>
|
||||
<entry>~/.local/share/applications/tsugaru/Tsugaru_CUI</entry>
|
||||
<entry>~/.local/bin/tsugaru/Tsugaru_CUI</entry>
|
||||
<entry>~/bin/tsugaru/Tsugaru_CUI</entry>
|
||||
</rule>
|
||||
|
@ -761,6 +799,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/Vita3K/Vita3K</entry>
|
||||
<entry>~/.local/share/applications/Vita3K/Vita3K</entry>
|
||||
<entry>~/.local/bin/Vita3K/Vita3K</entry>
|
||||
<entry>~/bin/Vita3K/Vita3K</entry>
|
||||
</rule>
|
||||
|
@ -772,11 +811,12 @@
|
|||
<entry>app.xemu.xemu</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/app.xemu.xemu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/app.xemu.xemu</entry>
|
||||
<entry>~/Applications/xemu*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/xemu*.AppImage</entry>
|
||||
<entry>~/.local/bin/xemu*.AppImage</entry>
|
||||
<entry>~/bin/xemu*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/app.xemu.xemu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/app.xemu.xemu</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="XROAR">
|
||||
|
@ -786,6 +826,7 @@
|
|||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/xroar/xroar</entry>
|
||||
<entry>~/.local/share/applications/xroar/xroar</entry>
|
||||
<entry>~/.local/bin/xroar/xroar</entry>
|
||||
<entry>~/bin/xroar/xroar</entry>
|
||||
</rule>
|
||||
|
@ -797,11 +838,24 @@
|
|||
<entry>org.yuzu_emu.yuzu</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>/var/lib/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
|
||||
<entry>~/Applications/yuzu*.AppImage</entry>
|
||||
<entry>~/.local/share/applications/yuzu*.AppImage</entry>
|
||||
<entry>~/.local/bin/yuzu*.AppImage</entry>
|
||||
<entry>~/bin/yuzu*.AppImage</entry>
|
||||
<entry>/var/lib/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
|
||||
<entry>~/.local/share/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
<emulator name="ZESARUX">
|
||||
<!-- Sinclair ZX Spectrum emulator ZEsarUX -->
|
||||
<rule type="systempath">
|
||||
<entry>zesarux</entry>
|
||||
</rule>
|
||||
<rule type="staticpath">
|
||||
<entry>~/Applications/ZEsarUX/zesarux</entry>
|
||||
<entry>~/.local/share/applications/ZEsarUX/zesarux</entry>
|
||||
<entry>~/.local/bin/ZEsarUX/zesarux</entry>
|
||||
<entry>~/bin/ZEsarUX/zesarux</entry>
|
||||
</rule>
|
||||
</emulator>
|
||||
</ruleList>
|
|
@ -25,6 +25,7 @@
|
|||
<bool name="MAMENameStripExtraInfo" value="true" />
|
||||
<bool name="MediaViewerKeepVideoRunning" value="true" />
|
||||
<bool name="MediaViewerScreenshotScanlines" value="true" />
|
||||
<bool name="MediaViewerShowTypes" value="false" />
|
||||
<bool name="MediaViewerStretchVideos" value="false" />
|
||||
<bool name="MediaViewerVideoAudio" value="true" />
|
||||
<bool name="MediaViewerVideoBlur" value="false" />
|
||||
|
@ -51,6 +52,7 @@
|
|||
<bool name="ScrapeCovers" value="true" />
|
||||
<bool name="ScrapeFanArt" value="false" />
|
||||
<bool name="ScrapeGameNames" value="true" />
|
||||
<bool name="ScrapeManuals" value="true" />
|
||||
<bool name="ScrapeMarquees" value="true" />
|
||||
<bool name="ScrapeMetadata" value="true" />
|
||||
<bool name="ScrapePhysicalMedia" value="true" />
|
||||
|
@ -73,6 +75,7 @@
|
|||
<bool name="ScreensaverControls" value="true" />
|
||||
<bool name="ScreensaverSlideshowCustomImages" value="false" />
|
||||
<bool name="ScreensaverSlideshowGameInfo" value="true" />
|
||||
<bool name="ScreensaverSlideshowOnlyFavorites" value="false" />
|
||||
<bool name="ScreensaverSlideshowRecurse" value="false" />
|
||||
<bool name="ScreensaverSlideshowScanlines" value="true" />
|
||||
<bool name="ScreensaverStretchImages" value="false" />
|
||||
|
@ -80,6 +83,7 @@
|
|||
<bool name="ScreensaverVideoAudio" value="true" />
|
||||
<bool name="ScreensaverVideoBlur" value="false" />
|
||||
<bool name="ScreensaverVideoGameInfo" value="true" />
|
||||
<bool name="ScreensaverVideoOnlyFavorites" value="false" />
|
||||
<bool name="ScreensaverVideoScanlines" value="true" />
|
||||
<bool name="ShowHelpPrompts" value="true" />
|
||||
<bool name="ShowHiddenFiles" value="true" />
|
||||
|
@ -106,9 +110,8 @@
|
|||
<int name="SoundVolumeVideos" value="80" />
|
||||
<string name="ApplicationUpdaterFrequency" value="never" />
|
||||
<string name="ApplicationUpdaterLastCheck" value="20230331T153206" />
|
||||
<string name="ApplicationVersion" value="2.0.1" />
|
||||
<string name="CollectionCustomGrouping" value="unthemed" />
|
||||
<string name="CollectionSystemsAuto" value="" />
|
||||
<string name="CollectionSystemsAuto" value="recent" />
|
||||
<string name="CollectionSystemsCustom" value="" />
|
||||
<string name="DefaultSortOrder" value="filename, ascending" />
|
||||
<string name="GamelistViewStyle" value="automatic" />
|
||||
|
@ -117,14 +120,20 @@
|
|||
<string name="LaunchScreenDuration" value="normal" />
|
||||
<string name="LegacyThemeTransitions" value="builtin-instant" />
|
||||
<string name="MediaDirectory" value="" />
|
||||
<string name="MediaViewerHelpPrompts" value="top" />
|
||||
<string name="MenuColorScheme" value="dark" />
|
||||
<string name="MenuOpeningEffect" value="scale-up" />
|
||||
<string name="MiximageBoxSize" value="medium" />
|
||||
<string name="MiximagePhysicalMediaSize" value="medium" />
|
||||
<string name="MiximageResolution" value="1280x800" />
|
||||
<string name="MiximageScreenshotAspectThreshold" value="high" />
|
||||
<string name="MiximageScreenshotBlankAreasColor" value="black" />
|
||||
<string name="MiximageScreenshotHorizontalFit" value="crop" />
|
||||
<string name="MiximageScreenshotScaling" value="sharp" />
|
||||
<string name="MiximageScreenshotVerticalFit" value="contain" />
|
||||
<string name="OpenGLVersion" value="" />
|
||||
<string name="QuickSystemSelect" value="leftrightshoulders" />
|
||||
<string name="ROMDirectory" value="~/ROMs" />
|
||||
<string name="ROMDirectory" value="" />
|
||||
<string name="RandomEntryButton" value="games" />
|
||||
<string name="SaveGamelistsMode" value="always" />
|
||||
<string name="Scraper" value="screenscraper" />
|
||||
|
@ -135,11 +144,11 @@
|
|||
<string name="ScreensaverSlideshowImageDir" value="~/.emulationstation/slideshow/custom_images" />
|
||||
<string name="ScreensaverType" value="video" />
|
||||
<string name="StartupSystem" value="" />
|
||||
<string name="ThemeAspectRatio" value="" />
|
||||
<string name="ThemeColorScheme" value="" />
|
||||
<string name="ThemeAspectRatio" value="automatic" />
|
||||
<string name="ThemeColorScheme" value="art-book-next" />
|
||||
<string name="ThemeSet" value="art-book-next-es-de" />
|
||||
<string name="ThemeTransitions" value="automatic" />
|
||||
<string name="ThemeVariant" value="" />
|
||||
<string name="UIMode" value="full" />
|
||||
<string name="UIMode_passkey" value="uuddlrlrba" />
|
||||
<string name="UserThemeDirectory" value="/home/deck/retrodeck/themes" />
|
||||
<string name="UserThemeDirectory" value="" />
|
|
@ -506,6 +506,18 @@
|
|||
<platform>easyrpg</platform>
|
||||
<theme>easyrpg</theme>
|
||||
</system>
|
||||
<system>
|
||||
<name>emulators</name>
|
||||
<fullname>Emulators</fullname>
|
||||
<path>%ROMPATH%/emulators</path>
|
||||
<extension>.AppImage .desktop .sh</extension>
|
||||
<command label="Suspend ES-DE">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
|
||||
<command label="Keep ES-DE running">%RUNINBACKGROUND% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
|
||||
<command label="AppImage (Suspend ES-DE)">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
|
||||
<command label="AppImage (Keep ES-DE running)">%RUNINBACKGROUND% %EMULATOR_OS-SHELL% -c "%ROM%"</command>
|
||||
<platform>pcwindows</platform>
|
||||
<theme>emulators</theme>
|
||||
</system>
|
||||
<system>
|
||||
<name>famicom</name>
|
||||
<fullname>Nintendo Family Computer</fullname>
|
||||
|
@ -582,6 +594,17 @@
|
|||
<platform>fmtowns</platform>
|
||||
<theme>fmtowns</theme>
|
||||
</system>
|
||||
-->
|
||||
<!--
|
||||
<system>
|
||||
<name>fpinball</name>
|
||||
<fullname>Future Pinball</fullname>
|
||||
<path>%ROMPATH%/fpinball</path>
|
||||
<extension>.fpt .FPT</extension>
|
||||
<command label="Future Pinball (Standalone)">PLACEHOLDER %ROM%</command>
|
||||
<platform>fpinball</platform>
|
||||
<theme>fpinball</theme>
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>gameandwatch</name>
|
||||
|
@ -614,6 +637,7 @@
|
|||
<command label="Genesis Plus GX Wide">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/genesis_plus_gx_wide_libretro.so %ROM%</command>
|
||||
<command label="Gearsystem">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearsystem_libretro.so %ROM%</command>
|
||||
<command label="SMS Plus GX">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/smsplus_libretro.so %ROM%</command>
|
||||
<!-- <command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command> -->
|
||||
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module gg %ROM%</command> -->
|
||||
<platform>gamegear</platform>
|
||||
<theme>gamegear</theme>
|
||||
|
@ -699,6 +723,17 @@
|
|||
<platform>genesis</platform>
|
||||
<theme>genesis</theme>
|
||||
</system>
|
||||
<!--
|
||||
<system>
|
||||
<name>gmaster</name>
|
||||
<fullname>Hartung Game Master</fullname>
|
||||
<path>%ROMPATH%/gmaster</path>
|
||||
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
|
||||
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/gmaster gmaster -cart %ROM%</command>
|
||||
<platform>gmaster</platform>
|
||||
<theme>gmaster</theme>
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>gx4000</name>
|
||||
<fullname>Amstrad GX4000</fullname>
|
||||
|
@ -750,6 +785,17 @@
|
|||
<platform>lcdgames, gameandwatch</platform>
|
||||
<theme>lcdgames</theme>
|
||||
</system>
|
||||
<!--
|
||||
<system>
|
||||
<name>lowresnx</name>
|
||||
<fullname>LowRes NX Fantasy Console</fullname>
|
||||
<path>%ROMPATH%/lowresnx</path>
|
||||
<extension>.nx .NX</extension>
|
||||
<command label="LowRes NX">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/lowresnx_libretro.so %ROM%</command>
|
||||
<platform>lowresnx</platform>
|
||||
<theme>lowresnx</theme>
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>lutro</name>
|
||||
<fullname>Lutro Game Engine</fullname>
|
||||
|
@ -1242,8 +1288,9 @@
|
|||
<name>ports</name>
|
||||
<fullname>Ports</fullname>
|
||||
<path>%ROMPATH%/ports</path>
|
||||
<extension>.desktop .sh</extension>
|
||||
<command label="Various">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
|
||||
<extension>.AppImage .desktop .sh</extension>
|
||||
<command label="Shortcut or script">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
|
||||
<command label="AppImage">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
|
||||
<platform>pc, pcwindows</platform>
|
||||
<theme>ports</theme>
|
||||
</system>
|
||||
|
@ -1269,7 +1316,8 @@
|
|||
<platform>ps3</platform>
|
||||
<theme>ps3</theme>
|
||||
</system>
|
||||
<!-- <system>
|
||||
<!--
|
||||
<system>
|
||||
<name>ps4</name>
|
||||
<fullname>Sony PlayStation 4</fullname>
|
||||
<path>%ROMPATH%/ps4</path>
|
||||
|
@ -1277,7 +1325,8 @@
|
|||
<command>PLACEHOLDER %ROM%</command>
|
||||
<platform>ps4</platform>
|
||||
<theme>ps4</theme>
|
||||
</system> -->
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>psp</name>
|
||||
<fullname>Sony PlayStation Portable</fullname>
|
||||
|
@ -1402,6 +1451,17 @@
|
|||
<platform>scummvm</platform>
|
||||
<theme>scummvm</theme>
|
||||
</system>
|
||||
<!--
|
||||
<system>
|
||||
<name>scv</name>
|
||||
<fullname>Epoch Super Cassette Vision</fullname>
|
||||
<path>%ROMPATH%/scv</path>
|
||||
<extension>.0 .bin .BIN .7z .7Z .zip .ZIP</extension>
|
||||
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/scv scv -cart %ROM%</command>
|
||||
<platform>scv</platform>
|
||||
<theme>scv</theme>
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>sega32x</name>
|
||||
<fullname>Sega Mega Drive 32X</fullname>
|
||||
|
@ -1733,6 +1793,17 @@
|
|||
<platform>virtualboy</platform>
|
||||
<theme>virtualboy</theme>
|
||||
</system>
|
||||
<!--
|
||||
<system>
|
||||
<name>vpinball</name>
|
||||
<fullname>Visual Pinball</fullname>
|
||||
<path>%ROMPATH%/vpinball</path>
|
||||
<extension>.vpt .VPT .vpx .VPX</extension>
|
||||
<command label="Visual Pinball (Standalone)">PLACEHOLDER %ROM%</command>
|
||||
<platform>vpinball</platform>
|
||||
<theme>vpinball</theme>
|
||||
</system>
|
||||
-->
|
||||
<!--
|
||||
<system>
|
||||
<name>vsmile</name>
|
||||
|
@ -1810,6 +1881,7 @@
|
|||
<path>%ROMPATH%/x68000</path>
|
||||
<extension>.dim .DIM .img .IMG .d88 .D88 .88d .88D .hdm .HDM .dup .DUP .2hd .2HD .xdf .XDF .hdf .HDF .cmd .CMD .m3u .M3U .7z .7Z .zip .ZIP</extension>
|
||||
<command label="PX68k">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/px68k_libretro.so %ROM%</command>
|
||||
<!-- <command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/x68000 x68000 -flop1 %ROM%</command> -->
|
||||
<platform>x68000</platform>
|
||||
<theme>x68000</theme>
|
||||
</system>
|
||||
|
@ -1853,6 +1925,18 @@
|
|||
<platform>zx81</platform>
|
||||
<theme>zx81</theme>
|
||||
</system>
|
||||
<!--
|
||||
<system>
|
||||
<name>zxnext</name>
|
||||
<fullname>Sinclair ZX Spectrum Next</fullname>
|
||||
<path>%ROMPATH%/zxnext</path>
|
||||
<extension>.nex .NEX .sna .SNA</extension>
|
||||
<command label="#CSpect (Standalone)">%STARTDIR%=%GAMEDIR% MONO_IOMAP=all mono %EMULATOR_CSPECT% -fullscreen -s28 -vsync -60 -analytics -tv -zxnext -mmc=./ %ROM%</command>
|
||||
<command label="ZEsarUX (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_ZESARUX% ––machine tbblue ––realvideo ––enabletimexvideo ––tbblue-fast-boot-mode ––enable-esxdos-handler ––esxdos-root-dir %GAMEDIR% %ROM%</command>
|
||||
<platform>zxnext</platform>
|
||||
<theme>zxnext</theme>
|
||||
</system>
|
||||
-->
|
||||
<system>
|
||||
<name>zxspectrum</name>
|
||||
<fullname>Sinclair ZX Spectrum</fullname>
|
||||
|
@ -1863,13 +1947,4 @@
|
|||
<platform>zxspectrum</platform>
|
||||
<theme>zxspectrum</theme>
|
||||
</system>
|
||||
<!-- <system>
|
||||
<name>tools</name>
|
||||
<fullname>RetroDECK Tools</fullname>
|
||||
<path>/app/tools</path>
|
||||
<extension>.sh .SH</extension>
|
||||
<command>bash %ROM%</command>
|
||||
<platform>tools</platform>
|
||||
<theme>tools</theme>
|
||||
</system> -->
|
||||
</systemList>
|
||||
</systemList>
|
|
@ -1,3 +0,0 @@
|
|||
{
|
||||
"only-arches": ["x86_64"]
|
||||
}
|
41
flathub.yml
41
flathub.yml
|
@ -1,41 +0,0 @@
|
|||
app-id: net.retrodeck.retrodeck
|
||||
runtime: org.kde.Platform
|
||||
runtime-version: 5.15-22.08
|
||||
sdk: org.kde.Sdk
|
||||
sdk-extensions:
|
||||
- org.freedesktop.Sdk.Extension.llvm14 # Needed for rpcs3
|
||||
base: io.qt.qtwebengine.BaseApp # Needed for Yuzu
|
||||
base-version: 5.15-22.08 # Needed for Yuzu
|
||||
command: retrodeck.sh
|
||||
|
||||
finish-args:
|
||||
- --socket=fallback-x11
|
||||
- --socket=wayland
|
||||
- --socket=pulseaudio
|
||||
- --share=ipc
|
||||
- --share=network
|
||||
- --device=all
|
||||
- --filesystem=home # Needed to be able to relocate / remove / create symlink at ~/retrodeck
|
||||
- --filesystem=/run/media
|
||||
- --filesystem=/media
|
||||
- --allow=multiarch
|
||||
- --talk-name=org.freedesktop.ScreenSaver
|
||||
- --talk-name=org.freedesktop.PowerManagement.Inhibit
|
||||
- --talk-name=org.freedesktop.login1.Manager
|
||||
- --filesystem=xdg-run/app/com.discordapp.Discord:create
|
||||
# Dolphin
|
||||
- --allow=bluetooth
|
||||
# PPSSPP
|
||||
# It allows an SDL application to specify its window class, which can be useful for window managers and desktop environments to identify and group similar windows
|
||||
- --env=SDL_VIDEO_X11_WMCLASS=net.retrodeck.retrodeck
|
||||
- --env=SDL_VIDEO_WAYLAND_WMCLASS=net.retrodeck.retrodeck
|
||||
|
||||
modules:
|
||||
- name: retrodeck
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- cp -rn files/* /app
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://artifacts.retrodeck.net/artifacts/RetroDECK-Artifact.tar.gz
|
||||
sha256: __SHA__
|
|
@ -83,7 +83,8 @@ check_for_version_update() {
|
|||
local latest_cooker_download=$(curl --silent https://api.github.com/repos/XargonWan/$update_repo/releases/latest | grep '"browser_download_url":' | sed -E 's/.*"([^"]+)".*/\1/')
|
||||
mkdir -p "$rdhome/RetroDECK_Updates"
|
||||
wget -P "$rdhome/RetroDECK_Updates" $latest_cooker_download
|
||||
flatpak-spawn --host flatpak install --user --bundle --noninteractive -y "$rdhome/RetroDECK_Updates/RetroDECK.flatpak"
|
||||
flatpak-spawn --host flatpak remove --noninteractive -y net.retrodeck.retrodeck # Remove current version before installing new one, to avoid duplicates
|
||||
flatpak-spawn --host flatpak install --user --bundle --noninteractive -y "$rdhome/RetroDECK_Updates/RetroDECK-cooker.flatpak"
|
||||
rm -rf "$rdhome/RetroDECK_Updates" # Cleanup old bundles to save space
|
||||
) |
|
||||
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
||||
|
|
|
@ -170,7 +170,7 @@ changelog_dialog() {
|
|||
local version_changelog=$(xml sel -t -m "//release[@version='$1']/description" -v . -n $rd_appdata | tr -s '\n' | sed 's/^\s*//')
|
||||
|
||||
echo -e "In RetroDECK version $1, the following changes were made:\n$version_changelog" > "/var/config/retrodeck/changelog-partial.txt"
|
||||
$version_changelog >> "/var/config/retrodeck/changelog-partial.txt"
|
||||
"$version_changelog" >> "/var/config/retrodeck/changelog-partial.txt"
|
||||
|
||||
zenity --icon-name=net.retrodeck.retrodeck --text-info --width=1200 --height=720 \
|
||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||
|
|
|
@ -422,6 +422,7 @@ finit() {
|
|||
(
|
||||
prepare_emulator "reset" "all"
|
||||
build_retrodeck_current_presets
|
||||
deploy_helper_files
|
||||
|
||||
# Optional actions based on user choices
|
||||
if [[ "$finit_options_choices" =~ (rpcs3_firmware|Enable All) ]]; then
|
||||
|
|
|
@ -244,6 +244,7 @@ post_update() {
|
|||
fi
|
||||
|
||||
update_splashscreens
|
||||
deploy_helper_files
|
||||
build_retrodeck_current_presets
|
||||
) |
|
||||
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
||||
|
|
|
@ -15,14 +15,14 @@ prepare_emulator() {
|
|||
|
||||
if [[ "$emulator" == "retrodeck" ]]; then
|
||||
if [[ "$action" == "reset" ]]; then # Update the paths of all folders in retrodeck.cfg and create them
|
||||
while read -r config_line; do
|
||||
local current_setting_name=$(get_setting_name "$config_line" "retrodeck")
|
||||
if [[ ! $current_setting_name =~ (rdhome|sdcard) ]]; then # Ignore these locations
|
||||
local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths")
|
||||
eval "$current_setting_name=$rdhome/$(basename $current_setting_value)"
|
||||
mkdir -p "$rdhome/$(basename $current_setting_value)"
|
||||
fi
|
||||
done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f')
|
||||
while read -r config_line; do
|
||||
local current_setting_name=$(get_setting_name "$config_line" "retrodeck")
|
||||
if [[ ! $current_setting_name =~ (rdhome|sdcard) ]]; then # Ignore these locations
|
||||
local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths")
|
||||
eval "$current_setting_name=$rdhome/$(basename $current_setting_value)"
|
||||
mkdir -p "$rdhome/$(basename $current_setting_value)"
|
||||
fi
|
||||
done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f')
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Update the paths of any folders that came with the retrodeck folder during a move
|
||||
while read -r config_line; do
|
||||
|
@ -116,6 +116,29 @@ prepare_emulator() {
|
|||
dir_prep "$texture_packs_folder/RetroArch-Mesen" "/var/config/retroarch/system/HdPacks"
|
||||
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/cache" "/var/config/retroarch/system/Mupen64plus/cache"
|
||||
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
||||
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
||||
set_setting_value "$rd_conf" "gb" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "gba" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "gbc" "$(get_setting_value "$rd_defaults" "gbc" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "genesis" "$(get_setting_value "$rd_defaults" "genesis" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "gg" "$(get_setting_value "$rd_defaults" "gg" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "n64" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "psx_ra" "$(get_setting_value "$rd_defaults" "psx_ra" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "snes" "retrodeck" "borders")" "retrodeck" "borders"
|
||||
set_setting_value "$rd_conf" "genesis" "$(get_setting_value "$rd_defaults" "genesis" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
||||
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "n64" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
||||
set_setting_value "$rd_conf" "psx_ra" "$(get_setting_value "$rd_defaults" "psx_ra" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
||||
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "snes" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
||||
set_setting_value "$rd_conf" "gb" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "gba" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "gbc" "$(get_setting_value "$rd_defaults" "gbc" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "savestate_auto_load")" "retrodeck" "savestate_auto_load"
|
||||
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
dir_prep "$bios_folder" "/var/config/retroarch/system"
|
||||
|
@ -190,6 +213,10 @@ prepare_emulator() {
|
|||
dir_prep "$logs_folder/citra" "/var/data/citra-emu/log"
|
||||
dir_prep "$mods_folder/Citra" "/var/data/citra-emu/load/mods"
|
||||
dir_prep "$texture_packs_folder/Citra" "/var/data/citra-emu/load/textures"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
dir_prep "$rdhome/bios/citra/sysdata" "/var/data/citra-emu/sysdata"
|
||||
|
@ -237,6 +264,9 @@ prepare_emulator() {
|
|||
dir_prep "$saves_folder/wii/dolphin" "/var/data/dolphin-emu/Wii"
|
||||
dir_prep "$mods_folder/Dolphin" "/var/data/dolphin-emu/Load/GraphicMods"
|
||||
dir_prep "$texture_packs_folder/Dolphin" "/var/data/dolphin-emu/Load/Textures"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "dolphin" "$(get_setting_value "$rd_defaults" "dolphin" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
dir_prep "$saves_folder/gc/dolphin/EU" "/var/data/dolphin-emu/GC/EUR"
|
||||
|
@ -283,6 +313,12 @@ prepare_emulator() {
|
|||
# Shared actions
|
||||
dir_prep "$states_folder/psx/duckstation" "/var/config/duckstation/savestates" # This is hard-coded in Duckstation, always needed
|
||||
dir_prep "$texture_packs_folder/Duckstation" "/var/config/duckstation/textures"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
||||
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
||||
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
||||
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
set_setting_value "$duckstationconf" "SearchDirectory" "$bios_folder" "duckstation" "BIOS"
|
||||
|
@ -364,6 +400,12 @@ prepare_emulator() {
|
|||
mkdir -pv "$saves_folder/ps2/pcsx2/memcards"
|
||||
mkdir -pv "$states_folder/ps2/pcsx2"
|
||||
dir_prep "$texture_packs_folder/PCSX2" "/var/config/PCSX2/textures"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
||||
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
||||
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
||||
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
set_setting_value "$pcsx2conf" "Bios" "$bios_folder" "pcsx2" "Folders"
|
||||
|
@ -442,6 +484,9 @@ prepare_emulator() {
|
|||
dir_prep "$saves_folder/wii/primehack" "/var/data/primehack/Wii"
|
||||
dir_prep "$mods_folder/Primehack" "/var/data/primehack/Load/GraphicMods"
|
||||
dir_prep "$texture_packs_folder/Primehack" "/var/data/primehack/Load/Textures"
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "primehack" "$(get_setting_value "$rd_defaults" "primehack" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
dir_prep "$saves_folder/gc/primehack/EU" "/var/data/primehack/GC/EUR"
|
||||
|
@ -601,6 +646,10 @@ prepare_emulator() {
|
|||
if [ -d $bios_folder/switch ]; then
|
||||
find $bios_folder/switch -xtype l -exec rm {} \;
|
||||
fi
|
||||
|
||||
# Reset default preset settings
|
||||
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "nintendo_button_layout")" "retrodeck" "nintendo_button_layout"
|
||||
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
||||
fi
|
||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||
dir_prep "$bios_folder/switch/keys" "/var/data/yuzu/keys"
|
||||
|
@ -616,4 +665,9 @@ prepare_emulator() {
|
|||
set_setting_value "$yuzuconf" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Update presets for all emulators after any reset or move
|
||||
if [[ ! "$emulator" == "retrodeck" ]]; then
|
||||
build_retrodeck_current_presets
|
||||
fi
|
||||
}
|
||||
|
|
|
@ -65,15 +65,63 @@
|
|||
<project_license>GPL-3.0</project_license>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<releases>
|
||||
<release version="0.7.1b" date="2023-06-16">
|
||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.7.1b</url>
|
||||
<release version="0.7.2b" date="2023-08-16">
|
||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.7.2b</url>
|
||||
<description>
|
||||
<p>Bug fixes:</p>
|
||||
<ul>
|
||||
<li>PLACEHOLDER</li>
|
||||
<li>Updated ES-DE to 2.1.1</li>
|
||||
<li>Redone the patches for ES-DE</li>
|
||||
<li>Updated theme</li>
|
||||
<li>Changelog is now scrollable</li>
|
||||
<li>Added helper files in the mods folders to instruct the users on the procedures to follow</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.7.1b" date="2023-08-16">
|
||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.7.1b</url>
|
||||
<description>
|
||||
<p>Information:</p>
|
||||
<ul>
|
||||
<li>Steam Deck users update RetroDECK from <i>Discover</i> in Desktop Mode.</li>
|
||||
<li>Don't forget to reapply the latest controller layout: Go into the <i>Templates</i> tab and reapply the new profile ending with 0.7.1b (there is no need to reinstall the entire layout from the Configurator).</li>
|
||||
</ul>
|
||||
<p>Bug fixes and other changes:</p>
|
||||
<ul>
|
||||
<li>Fixed an issue to make sure the RD controller layout file at update with each RD update.</li>
|
||||
<li>Fixed an issue with PPSSPP that made <i>L</i> and <i>R</i> incorrectly bound.</li>
|
||||
<li>Fixed an issue in the Configurator that prevented the Yuzu preset for swapping A/B X/Y from working.</li>
|
||||
<li>Fixed a notification issue on the latest SteamOS Beta releases.</li>
|
||||
<li>Fixed an rsync permissions issue in the RetroDECK Framework.</li>
|
||||
<li>Updated Yuzu presets to handle new config syntax in the RetroDECK Framework.</li>
|
||||
<li>Changed auto-update to notification only, until permissions error can be worked out.</li>
|
||||
<li>Added some new pixelart icons by ItzSelenux (pixelitos-icon-theme)</li>
|
||||
</ul>
|
||||
<p>Updates:</p>
|
||||
<p>All Emulators and ES-DE have been updated</p>
|
||||
<p>Steam Deck - Global Controller Layout:</p>
|
||||
<p>We have done some changes based on community feedback</p>
|
||||
<ul>
|
||||
<li><i>Select</i> is now a hotkey trigger while pressing it down, <i>L4</i> and <i>R4</i> are still triggers as well.</li>
|
||||
<li>The RetroArch combo of <i>Select</i> + <i>Start</i> = <i>Quit</i> now works on many SA-Emulators.</li>
|
||||
<li><i>Open Menu</i> is removed from <i>Select</i>.</li>
|
||||
<li><i>R5</i> = <i>A</i> button (this allows for great Wii controls on the right touchpad and pressing down the <i>R5</i> for A).</li>
|
||||
<li><i>L5</i> = <i>B</i> button.</li>
|
||||
</ul>
|
||||
<p>Global hotkey changes:</p>
|
||||
<ul>
|
||||
<li><i>Open Menu</i> is on <i>Y</i>.</li>
|
||||
<li><i>Increase Emulation Speed</i> is on <i>Dpad-UP</i>.</li>
|
||||
<li><i>Decrease Emulation Speed</i> is on <i>Dpad-Down</i>.</li>
|
||||
<li><i>Fullscreen OFF</i> command is removed (as emulators have migrated to toggle).</li>
|
||||
</ul>
|
||||
<p>Known issues:</p>
|
||||
<ul>
|
||||
<li>The built-in auto-updater is not working (we are working on it). Discover is ok.</li>
|
||||
<li>Some emulators don't have hotkey support or have bugs affecting their hotkeys.</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.7.0b" date="2023-06-15">
|
||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.7.0b</url>
|
||||
<description>
|
||||
|
|
|
@ -15,7 +15,7 @@ finish-args:
|
|||
- --share=ipc
|
||||
- --share=network
|
||||
- --device=all
|
||||
- --filesystem=home # Needed to be able to relocate / remove / create symlink at ~/retrodeck
|
||||
- --filesystem=home
|
||||
- --filesystem=/run/media
|
||||
- --filesystem=/media
|
||||
- --allow=multiarch
|
||||
|
@ -66,18 +66,16 @@ modules:
|
|||
# The version number is hardcoded in /app/retrodeck/version
|
||||
#
|
||||
# UPDATE STEPS FOR MAIN:
|
||||
# [ ] Update the VERSION variable
|
||||
# [ ] Update the VERSION variable on line containing "VERSION=THISBRANCH"
|
||||
# [ ] Update the appdata.xml with the version number and notes
|
||||
# [ ] change branch into main in version-initialization (first one)
|
||||
# [ ] change branch into main in retrodeck module (last one)
|
||||
# [ ] if header (before modules) was edited, edit it even in flathub.yml
|
||||
#
|
||||
- name: version-initialization
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- |
|
||||
|
||||
VERSION=$(git rev-parse --abbrev-ref HEAD)
|
||||
# on main please update this with the version variable, eg: VERSION='0.7.0b'
|
||||
VERSION=THISBRANCH
|
||||
|
||||
git checkout ${GITHUB_REF_NAME}
|
||||
mkdir -p ${FLATPAK_DEST}/retrodeck/
|
||||
|
@ -91,7 +89,7 @@ modules:
|
|||
sources:
|
||||
- type: git
|
||||
url: https://github.com/XargonWan/RetroDECK.git
|
||||
branch: cooker-0.7.1b
|
||||
branch: THISBRANCH
|
||||
|
||||
- name: xmlstarlet
|
||||
config-opts:
|
||||
|
@ -1264,7 +1262,6 @@ modules:
|
|||
- mkdir -p /app/tools
|
||||
- cp tools/configurator.sh /app/tools/configurator.sh
|
||||
- chmod +x /app/tools/configurator.sh
|
||||
#- cp es-configs/tools-gamelist.xml /app/retrodeck/tools-gamelist.xml
|
||||
- cp tools/retrodeck_function_wrapper.sh /app/tools/retrodeck_function_wrapper.sh
|
||||
- chmod +x /app/tools/retrodeck_function_wrapper.sh
|
||||
|
||||
|
@ -1276,8 +1273,6 @@ modules:
|
|||
- cp net.retrodeck.retrodeck.desktop /app/share/applications/net.retrodeck.retrodeck.desktop
|
||||
- cp net.retrodeck.retrodeck.Configurator.desktop /app/share/applications/net.retrodeck.retrodeck.Configurator.desktop
|
||||
|
||||
# TODO: group the configs per-emu and optimize the following cps, like already done with Dolphin. Please not that some files may be renamed, check retrodeck.sh to know how (and fix it after the edit)
|
||||
|
||||
# Initializing default emulator configs
|
||||
- cp -r emu-configs ${FLATPAK_DEST}/retrodeck/emu-configs/
|
||||
|
||||
|
@ -1295,4 +1290,4 @@ modules:
|
|||
sources:
|
||||
- type: git
|
||||
url: https://github.com/XargonWan/RetroDECK.git
|
||||
branch: cooker-0.7.1b
|
||||
branch: THISBRANCH
|
||||
|
|
|
@ -1,22 +1,9 @@
|
|||
diff -au1r emulationstation-de/es-core/src/Window.cpp emulationstation-de/es-core/src/Window.cpp
|
||||
--- emulationstation-de/es-core/src/Window.cpp 2023-08-23 13:12:15.625292630 +0200
|
||||
+++ emulationstation-de/es-core/src/Window.cpp 2023-08-23 14:04:13.393435463 +0200
|
||||
@@ -140,7 +140,7 @@
|
||||
mSplashTextScanning = std::unique_ptr<TextCache>(
|
||||
- mDefaultFonts.at(1)->buildTextCache("Searching for games...", 0.0f, 0.0f, 0x777777FF));
|
||||
+ mDefaultFonts.at(1)->buildTextCache("Searching for games...", 0.0f, 0.0f, 0xC858E6FF));
|
||||
mSplashTextPopulating = std::unique_ptr<TextCache>(
|
||||
- mDefaultFonts.at(1)->buildTextCache("Loading systems...", 0.0f, 0.0f, 0x777777FF));
|
||||
+ mDefaultFonts.at(1)->buildTextCache("Loading systems...", 0.0f, 0.0f, 0xC858E6FF));
|
||||
mSplashTextReloading = std::unique_ptr<TextCache>(
|
||||
- mDefaultFonts.at(1)->buildTextCache("Reloading...", 0.0f, 0.0f, 0x777777FF));
|
||||
+ mDefaultFonts.at(1)->buildTextCache("Reloading...", 0.0f, 0.0f, 0xC858E6FF));
|
||||
|
||||
@@ -165,3 +165,3 @@
|
||||
progressBarRect.barPosY = mSplashTextPositions.y + (progressBarRect.barHeight * 2.0f);
|
||||
- progressBarRect.color = 0x777777FF;
|
||||
--- emulationstation-de/es-core/src/Window.cpp 2023-08-29 14:14:17.208301836 +0200
|
||||
+++ emulationstation-de/es-core/src/Window.cpp 2023-08-29 14:12:37.307334069 +0200
|
||||
|
||||
@@ -181,3 +181,3 @@
|
||||
progressBarRect.barPosY += borderThickness;
|
||||
- progressBarRect.color = 0x79010FFF;
|
||||
+ progressBarRect.color = 0xC858E6FF;
|
||||
mProgressBarRectangles.emplace_back(progressBarRect);
|
||||
@@ -978 +978,2 @@
|
||||
}
|
||||
+
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit fbfdda61b3da092a71cc53999dd3e7b909f244e2
|
||||
Subproject commit 0b1cfb79e591e10488a3262d6b38db843c39a409
|
|
@ -1 +1 @@
|
|||
Subproject commit 50314360ded6fa3b9f0b602513b1164b7a6636ed
|
||||
Subproject commit a2441b964afefd8cd1cebcdf562c7878670daf42
|
Loading…
Reference in a new issue