Integrate Daphne Emulator back into the Retropie Script for Ubuntu
-
I have put in a pull request for 'RetroPie-Setup' to install Hypseus Singe vi RetroPie configuration script.
I labelled it in experimental section currently, but should be stable.
https://github.com/RetroPie/RetroPie-Setup/pull/3387
If anyone would like to endorse, if that helps, it would be nice :)
Works fine, You would then only need to setup in
/etc/emulationstation/es_systems.cfg<system> <name>daphne</name> <fullname>Daphne</fullname> <path>/home/pi/RetroPie/roms/daphne</path> <extension>.daphne .DAPHNE</extension> <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ hypseus %ROM%</command> <platform>daphne</platform> <theme>daphne</theme> </system>
Changing only this line in an existing Daphne installation:
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 SYS hypseus %ROM%</command>If someone knows how to automate switching emulators in Emulation Station, and where to request changes, please let me know.
-
@dirtbagxon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
If someone knows how to automate switching emulators in Emulation Station, and where to request changes, please let me know.
Switching emulators (via
runcommand
's menu) can be done by modifying theemulators.cfg
for a system (i.e.daphne
) and add the new emulator command.
In a scriptmodule, this is handled by theaddEmulator
function.Is Hypseus meant to be an alternative emulator working for the
daphne
rom folder or an independent system ? (looking at your PR) You've modified theplatforms.cfg
to add a new system, but your scriptmodule still tries to create adaphne
rom folder. -
@mitu said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@dirtbagxon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
If someone knows how to automate switching emulators in Emulation Station, and where to request changes, please let me know.
Switching emulators (via
runcommand
's menu) can be done by modifying theemulators.cfg
for a system (i.e.daphne
) and add the new emulator command.
In a scriptmodule, this is handled by theaddEmulator
function.Is Hypseus meant to be an alternative emulator working for the
daphne
rom folder or an independent system ? (looking at your PR) You've modified theplatforms.cfg
to add a new system, but your scriptmodule still tries to create adaphne
rom folder.It makes most sense to use the Daphne folder for the existing plugin to me.
So should I remove the platforms.cfg changes ?
Sorry first pull request with you guys.
-
Sorry first pull request with you guys
No problems, we'll get this sorted out. I'll take a look at the PR and add some comments by tomorrow. But yes, the
platforms.cfg
additions are not necessary if you wish to use the existingdaphne
system and rom folder. -
@mitu said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
platforms.cfg
Thanks @mitu - I've pulled back the
platforms.cfg
changes now. -
I just tested the script (commit a928ebb) on my Ubuntu 21.04 Server (Wayland/Sway) and I can at least report successful launches of Dragon's Lair and Space Ace. Unfortunately, my test box is hooked up only to a monitor at this point so I can't comment on audio.
Looking good!
John
-
@DirtBagXon I'm seeing this error in the log file when Hypesus is updated (2nd code box below)...
= = = = = = = = = = = = = = = = = = = = = Checking for updates for hypseus = = = = = = = = = = = = = = = = = = = = = Update is available - updating ... = = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = /home/pi/RetroPie-Setup/tmp/build/hypseus /home/pi = = = = = = = = = = = = = = = = = = = = = Getting sources for 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = git clone --recursive --depth 1 --branch RetroPie "https://github.com/DirtBagXon/hypseus-singe.git" "/home/pi/RetroPie-Setup/tmp/build/hypseus" Cloning into '/home/pi/RetroPie-Setup/tmp/build/hypseus'... HEAD is now in branch 'RetroPie' at commit '7c8c27556814d1abcc2f4c882dee55c704b0cac4' /home/pi /home/pi/RetroPie-Setup/tmp/build/hypseus /home/pi
= = = = = = = = = = = = = = = = = = = = = Configuring 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = Copying default configuration to /opt/retropie/configs/daphne/hypinput.ini cp: cannot stat '/home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus/hypinput.ini': No such file or directory chown: cannot access '/opt/retropie/configs/daphne/hypinput.ini': No such file or directory /home/pi
-
@johnodon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@DirtBagXon I'm seeing this error in the log file when Hypesus is updated (2nd code box below)...
= = = = = = = = = = = = = = = = = = = = = Checking for updates for hypseus = = = = = = = = = = = = = = = = = = = = = Update is available - updating ... = = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = /home/pi/RetroPie-Setup/tmp/build/hypseus /home/pi = = = = = = = = = = = = = = = = = = = = = Getting sources for 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = git clone --recursive --depth 1 --branch RetroPie "https://github.com/DirtBagXon/hypseus-singe.git" "/home/pi/RetroPie-Setup/tmp/build/hypseus" Cloning into '/home/pi/RetroPie-Setup/tmp/build/hypseus'... HEAD is now in branch 'RetroPie' at commit '7c8c27556814d1abcc2f4c882dee55c704b0cac4' /home/pi /home/pi/RetroPie-Setup/tmp/build/hypseus /home/pi
= = = = = = = = = = = = = = = = = = = = = Configuring 'hypseus' : Hypseus Singe - Laserdisc Emulator = = = = = = = = = = = = = = = = = = = = = Copying default configuration to /opt/retropie/configs/daphne/hypinput.ini cp: cannot stat '/home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus/hypinput.ini': No such file or directory chown: cannot access '/opt/retropie/configs/daphne/hypinput.ini': No such file or directory /home/pi
It has not been accepted into official master branch yet, so depending on how you updated
RetroPie-Setup
it possibly got cleaned out by the git pull.The file is certainly there in the branch of the pull request:
https://github.com/DirtBagXon/RetroPie-Setup/tree/hypseus/scriptmodules/emulators/hypseus
I think you may have to manually add
hypseus.sh
andhypinput.ini
back intoRetroPie-Setup
for testing. -
@dirtbagxon OK...no worries. Ijust wanted to make sure it wasn't a code issue on the repo side.
John
-
@johnodon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@dirtbagxon OK...no worries. Ijust wanted to make sure it wasn't a code issue on the repo side.
John
Thanks for the testing :)
Adding this for anyone else who may want to test the current pull request:
Download the Scriptmodule:
mkdir -p /home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus wget https://raw.githubusercontent.com/DirtBagXon/RetroPie-Setup/hypseus/scriptmodules/emulators/hypseus/hypinput.ini -O /home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus/hypinput.ini wget https://raw.githubusercontent.com/DirtBagXon/RetroPie-Setup/hypseus/scriptmodules/emulators/hypseus.sh -O /home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus.sh
- Go to ES and select Configuration, select RetroPie Setup, or just type
sudo ~/RetroPie-Setup/retropie_setup.sh
- Navigate to Manage packages
- Select exp experimental packages
- Run down the list, there select 'hypseus'
- Select Install from source
- Go to ES and select Configuration, select RetroPie Setup, or just type
-
@dirtbagxon Not sure if this will pose any issues, but the
~/.hypseus
folder is owned by root however the contents within are owned by pi.drwxr-x--- 11 pi pi 4096 Sep 9 21:53 . drwxr-xr-x 3 root root 4096 Sep 8 22:27 .. -rw------- 1 pi pi 4684 Sep 12 11:54 .bash_history -rw-r--r-- 1 pi pi 220 Mar 19 16:02 .bash_logout -rw-r--r-- 1 pi pi 72 Sep 8 22:50 .bash_profile -rw-r--r-- 1 pi pi 3771 Mar 19 16:02 .bashrc drwx------ 5 pi pi 4096 Sep 12 11:53 .cache drwxr-xr-x 7 pi pi 4096 Sep 12 11:53 .config lrwxrwxrwx 1 pi pi 42 Sep 8 22:36 .emulationstation -> /opt/retropie/configs/all/emulationstation -rw-r--r-- 1 pi pi 0 Sep 8 22:50 .hushlogin drwxr-xr-x 5 root root 4096 Sep 9 16:07 .hypseus drwxr-xr-x 3 pi pi 4096 Sep 8 22:33 .local lrwxrwxrwx 1 pi pi 26 Sep 9 19:16 .mame -> /opt/retropie/configs/mame -rw-r--r-- 1 pi pi 807 Mar 19 16:02 .profile -rw-r--r-- 1 pi pi 0 Sep 8 22:30 .sudo_as_admin_successful -rw-rw-r-- 1 pi pi 180 Sep 9 14:59 .wget-hsts drwxrwxr-x 2 pi pi 4096 Sep 9 18:01 Downloads drwxr-xr-x 6 pi pi 4096 Sep 8 23:01 RetroPie drwxr-xr-x 8 pi pi 4096 Sep 8 22:54 RetroPie-Setup drwxrwxr-x 4 pi pi 4096 Sep 8 22:31 RetroPie-Setup-Ubuntu drwxrwxr-x 2 pi pi 4096 Sep 9 20:22 history -rw-rw-r-- 1 pi pi 8811 Sep 9 21:53 outputs.txt
drwxr-xr-x 5 root root 4096 Sep 9 16:07 . drwxr-x--- 11 pi pi 4096 Sep 9 21:53 .. drwxr-xr-x 2 pi pi 4096 Sep 10 15:32 logs drwxr-xr-x 2 pi pi 4096 Sep 9 16:07 ram drwxr-xr-x 2 pi pi 4096 Sep 9 16:07 screenshots
-
@johnodon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@dirtbagxon Not sure if this will pose any issues, but the
~/.hypseus
folder is owned by root however the contents within are owned by pi.drwxr-xr-x 5 root root 4096 Sep 9 16:07 . drwxr-x--- 11 pi pi 4096 Sep 9 21:53 .. drwxr-xr-x 2 pi pi 4096 Sep 10 15:32 logs drwxr-xr-x 2 pi pi 4096 Sep 9 16:07 ram drwxr-xr-x 2 pi pi 4096 Sep 9 16:07 screenshots
These directories are actually created by the RetroPie helper function mkUserDir()
mkUserDir "$home/.$md_id/ram" mkUserDir "$home/.$md_id/logs" mkUserDir "$home/.$md_id/screenshots"
So it appears this function doesn't set ownership on the parent directories correctly within $home: "Creates a directory owned by the current user."
It shouldn't affect the the installation as data will only be written to the correctly owned child directories. However, it is not as it should be, so I will add a
chown -R
to the end of the install script to ensure it's all owned bypi
.You can either grab the latest scripts from the repo (as above) or fix with :
sudo chown -R pi:pi ~pi/.hypseus
Many thanks for the great feedback.
-
Is anyone familiar with the reason that the package, even when up-to-date, still show this in
RetroPie-Setup
:'
Update is available
'The installed package version has the correct git tag.
Is this something I have control over?
-
@dirtbagxon said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
Is this something I have control over?
Not really, since the setup script automatically determines if there's an update based on the source location and the locally stored package info (
retropie.pkg
in the install folder). I can't seem to reproduce the situation though, if I install from source then it shows correctly as up-to-date -
@dirtbagxon is your retropie-setup script up to date? you may want to rebase it to master - quite a few changes have been made to the surrounding functionality that may affect things.
-
@dankcushions said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@dirtbagxon is your retropie-setup script up to date? you may want to rebase it to master - quite a few changes have been made to the surrounding functionality that may affect things.
Thanks for the quick reply guys. I am on the following merge of RetroPie-Setup now:
commit 202fabd1bf0e0638ca71d09cc6af7e233dc0e059 (HEAD -> master, origin/master, origin/HEAD) Author: Jools Wills <buzz@exotica.org.uk> Date: Tue Sep 14 06:38:12 2021 +0100 dolphin - license.txt was renamed to COPYING
I was one commit behind, but testing now still shows as out of date...
I have had this reported from a couple of other users testing the scripts in the field, so not just me seeing it.retropie.pkg
shows:pkg_origin="source" pkg_date="2021-09-14T17:58:55+01:00" pkg_repo_type="git" pkg_repo_url="https://github.com/DirtBagXon/hypseus-singe.git" pkg_repo_branch="RetroPie" pkg_repo_commit="327cbd674986b3c93d87beec3da9cec63c05ec57" pkg_repo_date="2021-09-11T16:01:00+01:00" pkg_repo_extra=""
Which all looks correct.... Hmmm...
I'll try another reinstall on the new commit.
-
Ok, doing all this via terminal:
sudo RetroPie-Setup/retropie_setup.sh
Reinstalled:
retropie.pkg
pkg_origin="source" pkg_date="2021-09-14T20:01:46+01:00" pkg_repo_type="git" pkg_repo_url="https://github.com/DirtBagXon/hypseus-singe.git" pkg_repo_branch="RetroPie" pkg_repo_commit="327cbd674986b3c93d87beec3da9cec63c05ec57" pkg_repo_date="2021-09-11T16:01:00+01:00" pkg_repo_extra=""
Still saying there was an update, as per first screen.
Then
Removed
, verified the was no/opt/retropie/emulators/hypsesus
directory - all gone:Went for reinstall:
Immediately after install completed successfully:
pkg_origin="source" pkg_date="2021-09-14T20:20:38+01:00" pkg_repo_type="git" pkg_repo_url="https://github.com/DirtBagXon/hypseus-singe.git" pkg_repo_branch="RetroPie" pkg_repo_commit="327cbd674986b3c93d87beec3da9cec63c05ec57" pkg_repo_date="2021-09-11T16:01:00+01:00" pkg_repo_extra=""
Any ideas ?
-
@dirtbagxon Still can't reproduce this. You can debug the script by running
sudo __debug=1 ./retropie_setup.sh
This will produce a lot of data, but the interesting part (checking for an updated version) will be printed after you select the package from the list, right before the package dialog is shown. Copy the debug info from that part and post it on pastebin.com.
-
@mitu said in Integrate Daphne Emulator back into the Retropie Script for Ubuntu:
@dirtbagxon Still can't reproduce this. You can debug the script by running
sudo __debug=1 ./retropie_setup.sh
This will produce a lot of data, but the interesting part (checking for an updated version) will be printed after you select the package from the list, right before the package dialog is shown. Copy the debug info from that part and post it on pastebin.com.
Just so I don't miss something, pastebin has size restrictions, so:
https://raw.githubusercontent.com/DirtBagXon/debug/main/debug.txt
-
Looks like the update check fails somewhere along those lines:
... ++ git -C /home/pi/RetroPie-Setup log -1 --format=%cI -- /home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus.sh + local module_date= + rp_dateIsNewer 2021-09-14T20:46:00+01:00 '' + local date_a=2021-09-14T20:46:00+01:00 + local date_b= + [[ -z 2021-09-14T20:46:00+01:00 ]] + [[ -z '' ]] + return 0 ...
What's the output of the next command in your installation ?
git -C /home/pi/RetroPie-Setup log -1 --format=%cI -- /home/pi/RetroPie-Setup/scriptmodules/emulators/hypseus.sh
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.