ES devs and testers, this tool is for you!
Screen shots in the next post below.
The idea isn't to fragment ES even more, but exactly the opposite! I envision this tool being used to test branches whose developer wants to submit to the official RetroPie ES branch.
Facilitating the tester's life, they should be able to focus on tests/feedback rather than performing several commands to build and install ES.
If the branch you want to build has any new dependency (besides those already known for the official ES), you have to install it before running the script.
You can make a list of repositories/branches you want to test.
Keeps the ES branch source code (the script doesn't download all source files from the branch's repository on every execution, only the updates).
A menu to select which ES build you want to set as the default
emulationstationcommand (really useful to use after updating the official RetroPie ES).
Before compilation starts you have the option to ommit the
make cleanbefore the
make, then only those files that were changed and their dependents are compiled again (this is a massive reduction in compile time).
Now a word of warning:
- This tool lets you install a non-official emulationstation mod in RetroPie. It is for those who want to test and help devs with feedback. Bear in mind that many of those mods are still in development, and YOU NEED TO KNOW HOW TO FIX THINGS IF SOMETHING BREAK!
Get the script
The script is here: https://github.com/meleu/rp-testers/blob/master/es-tests.sh
Download it on your RetroPie:
And then make it executable:
chmod a+x es-tests.sh
- BuZz: my script takes advantage of some parts of RetroPie-Setup code. Your talent and rigour with the RetroPie-Setup code makes it very flexible and modular. Very well done!
- @Zigurana : for having the idea to make this tool.
- @TMNTturtlguy : I've made this tool based on your suggestions here.
- @Hex : for the
make cleanomission tip, and many other improvements.
- @Zigurana , @pjft , @jdrassa , @fieldofcows and other ES hackers: for improving EmulationStation.
Tagging more people that might be interested in this tool (devs, testers, theme-makers, whatever):
@AlexMurphy @lilbud @mattrixk @herb_fargus @cafarellidigital @Nismo @ruckage @alphatoanant @KazanTheMan @Syhles @EctoOne @SuperSirLink @Syhles
Repo/branch to build menu
Edit repo/branch list
add repo/branch to the list form
set the default emulationstation
remove installed unofficial emulationstation branch
lilbud last edited by
If only @jacobfk20's gridview mod was still being worked on.
@meleu thank you very much for putting this together!
This will certainly come in handy :)
Thanks for this and the tag, but TBH It's getting to warm for me to spend a lot of time tinkering with my Pi also I noticed that I either need a fan for my case or put a normal fan beside it. I'm getting temperature warnings when I just copy files over my LAN and when I was building the carousel mod back then it wasn't even that warm and I was afraid I would shut down because of the heat.
I wish I could test the z-index build (although I wish it also had the instant transition that was created some days ago) but for now I have to pass until I figure out how to get rid of the heat problem.
@EctoOne what case are you using?
@EctoOne I see. It does look slick, though there's not much room to take some parts off to let some air in.
I use the official one, which is also fully enclosed but is quite modular, so I usually take the sides off to let some air to circulate.
Maybe opening it and leaving it with the two pieces not exactly fixed in place would let some air to flow through it?
Hex last edited by Hex
@meleu I would suggest you also mention the version of the script and if an update is available. This will allow testers to stay updated on its features
Edit: Would it be possible to remove Retropie-Setup dependency?
@pjft yeah i guess i will take off the top part and see if it makes some difference until i find another solution. I was thinking about getting a multi bay hdd case with enough space and build a NAS. Because i mostly use Kodi anyways and i'm running out of disc space and i don't just want to plug another drive on.
@meleu I would suggest you also mention the version of the script and if an update is available.
Will do it.
Would it be possible to remove Retropie-Setup dependency?
No, it wouldn't.
OK. I mean "Maybe yes, but I wouldn't like to." :-)
What does the script use from RetroPie-Setup?:
helpers.sh(easy to implement in the script itself).
retropie_packages.shscript to install and remove the unofficial ES branches (this would be a pain to code in the script, I don't have time/interest to work on this).
Thanks again for your suggestions, mate! ;-)
Hex last edited by
@meleu I usually do my testing on Linux rather than Retropie. I can just comment out the Install and Remove scripts.
Gitpullorclonewould be great
@Hex Why don't you at least put RetroPie-Setup scripts at your home dir? There's no need to install all emulators/etc, but it would make you able to use the script...
Zigurana last edited by
Aww man, you are the best! You've certainly risen to my challenge, superb!
I can think of only one improvement : to show the latest commit-date of the dev-branch, as well as the latest commit-date of the installed version of that branch, so users can see if they are up-to-date or not.
LiveFastCyYoung last edited by
Submitted a pull request cleaning up some of the display text.
- added the
Update "es-tests.sh" scriptoption in the main menu.
- added script version to the backtitle (it'll be named with Greek letters' name).
Please, get the script via
wgetagain and then you'll be able to update using the update feature from now on.
- added the
spruce_m00se last edited by
@EctoOne do you have a heatsink on the pi?
I have mine in a 3d printed mini nes case, and it only overheated on me twice, once when I was using the ds4drv driver, that just caused a constant overheat, and once when playing with overclocking and the votlage setting, I reduced it to 4.5v i think and now it runs cool "ish"
that being said I live in DUBAI! where it is mega mega hot. I run the pi in an ambient of 27 - 28 C at night when the AC is off, playing psx games and it hasnt ever overheated.
maybe you have something running in the background causing it to over heat?
I also have a KODI box which is used almost all day, again in say 25 - 27C and it never has problems overheating either, it has a small alu heatsink on it. no fan because I found the fan noise to annoying.
show the latest commit-date of the dev-branch, as well as the latest commit-date of the installed version of that branch, so users can see if they are up-to-date or not.
I started to think about ways to implement such feature, but then I realized that it would solve an already solved problem. As far as I understood you want to prevent the user spending time downloading/compiling unnecessarily. Am I right?
I made this tool acting this way: if the tester tries to build/install an up-to-date repo/branch, it won't be very time consuming.
- The script downloads the source files using the
gitPullOrClonefunction from RetroPie-Setup
helpers.sh, and it won't download everything again if the local repo is already up-to-date. Thanks to the RetroPie-Setup modularity I could use that function and not "reinvent the wheel".
- The script gives the option to omit the
make, then only those files that were changed and their dependents are compiled again (actually the script gives the option to not omit
make clean, then I think we can consider this omition the default option). Thanks @Hex for this simple but wonderfully useful tip.
- The script downloads the source files using the
Hey testers! There was a bug in the script when you were trying to set the official RetroPie ES as the default one (the C option in the main menu). I've just fixed it. So, please, update your scripts.
If you used that feature to set the official ES as the default one, probably your
~/RetroPie-Setup/scriptmodules/supplementary/emulationstation.shis non-existent/invalid. Here is how to fix it:
cd ~/RetroPie-Setup/scriptmodules/supplementary rm emulationstation.sh wget https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/scriptmodules/supplementary/emulationstation.sh
Thanks and sorry for the inconvenience.