RetroPie-Setup: An initialization script for RetroArch on the Raspberry Pi

If you want to install and setup RetroArch on the Raspberry Pi (TM) together with various emulator cores, all needed libraries for the SNESDev controller interface, and a graphical front end you can now go to There you will find an easy-to-use script that installs all essential packages for retro gaming on the Raspberry. I call it RetroPie script.

I prepared a Github repository with a shell script that automatically installs all needed packages. It has a console-based GUI and makes the installation of everything you need for retro gaming very easy. The script was tested on the Raspbian distribution. The following instructions can also be found directly on the Github site.


To obtain the installation script you first need to install two packages with

Then you can download the latest RetroPie setup script with


The script is executed with

You are welcomed with the following screen

Here, you have the choice between two different ways of installation:

UPDATE: Github disabled the ability to upload project related files. Because of that the possibility to install pre-compiled binaries was removed from the RetroPie Setup script.

  1. Binaries-based installation: This way of installation will download per-compiled versions of RetroArch, various cores, Emulation Station, and SNESDev. In comparison to the second way of installation this is much faster. Even though the binaries will be updated from time to time, a disadvantage is that you probably will not have the most recent versions of the programs.
  2. Source-code based installation: This way of installation will download and compile the most recentsources of all programs and cores. Compiling everything takes some hours, but you will have the most up-to-date releases of the programs. When you choose this option in the menu a screen will appear that lets you select (with the space and arrow keys) the individual tasks to be done by the setup script:

    The default selection will install the complete set of packages.


With it’s default configuration the RetroPie setup configures the graphical front end EmulationStation such that a set of emulators can directly be used by the front end. You can start the front end with

Before that, however, you need to copy your ROM files into the according RetroPie/roms/ folders. Every emulator has its own subfolder here. Due to the early stage of the ALSA implementation on the Raspberry you can expect some creaking when using the analog output. I made quite good experiences with the HDMI output. For now, another solution for that seems to be the use of an external USB soundcard until the problems with the ALSA implementation are solved.

I really would like to see this script be further developed by you and me!! I think that Github is the right place for that.


This entry was posted in Linux fun, microelectronics fun and tagged , , , , . Bookmark the permalink.

154 Responses to RetroPie-Setup: An initialization script for RetroArch on the Raspberry Pi

  1. Pingback: Tutorial: Power retro gaming with a Raspberry Pi | Butingtech Technology Buzz

  2. Pingback: Tutorial: Power retro gaming with a Raspberry Pi - Need2review | Need2review

  3. Pingback: Latest Technology News » Tutorial: Power retro gaming with a Raspberry Pi

  4. Pingback: Tutorial: Power retro gaming with a Raspberry Pi | Latuji Jnr.

  5. Pingback: Raspberry Pi, 25 fun things to do with a Raspberry Pi | Özgür Aytekin's Personal Blog

  6. SeattleSinner says:

    How do you set up emulation station to boot on start up after you’ve installed everything (and exited out of the setup)?

  7. I tried 3 times to run the script, and after 5 hours of compiling, installing and configuring through the script, I get a message which says: “Could not successfully compile and install RetroArch. Could not successfully compile Amiga emulator. Could not compile Atari 2600 core. Could not successfully install ScummVM. Could not successfully compile Emulation Station. See debug.log for more details.” I have the latest Raspbian installed, via BerryBoot. Do I need anything else, like dependencies etc.? Also, where is debug.log located? Thank you.

    • Florian says:

      I did not test the script with the latest Raspbian yet. There might be dependency issues. Unfortunately, I do not have access to an RPi for the next three weeks so that I will need this time to fix the script. But, maybe, someone else takes care for that sooner than me and creates a pull request via Github. I could merge the fix then.

      • Chad Adams says:

        I saw your post on and I am eagerly waiting for the update!!

    • dragonkhanrider says:

      I copy-paste:

      I finally managed to run the script successfully, but I had to install an older image of Raspbian. I don’t know if this is important, but I skipped the apt-upgrade part, just in case. Everything is working now except for the gamepad, which it seems to work in EmulationStation but not in the games. Also, gba is slow and laggy as hell.

  8. smandrel says:


    I have had the same problem for 1,5 weeks, compiling fails for some reason. Earlier it worked perfectly. The code lines imply that some files are missing.

    You Installed via BerryBoot, do you have the overclocking option in raspi-config? I installed raspbian also with BerryBoot and it had some weird repository address (mirror to somewhere). I changed it to the official one found in here

    The debug.log is in RetroPie folder.

  9. Andre says:

    Hey I’m having a bit of an issue with my emulation station. I believe everything downloaded and installed correctly. I can run emulation station, doom will work no problem, however other rooms seem to not work. I put the rooms in the correct folder, with correct extensions through x. When I select and try to open a rom, it makes a noise goes blank shows the white dot and goes back to emulation station.

  10. Micha says:

    i’ve got an error at the installation. NES Core is not successfully install

  11. Poutine says:

    This is Awesome! Have everything up and running except MAME the roms show but selecting them takes it back to selection screen. Also i see psx roms folder.. do i need to install something else for this to work or just drop iso in the folder.. Cheers to you my children and I are enjoying this very much

  12. ghostwheel says:

    This script is very cool! Thank you!
    I managed to get psx working by putting cd images in the psx folder. I had to edit the emulationstation es_system config file and add the .pbp type, because that is the type of image I have, but it worked.
    However – it seems that the emulator is based on pcsx_rearmed, which I have also installed independently. But my pcsx_rearmed seems to work much better and faster than the one in retro arch. I tried ff 7, and psx_rearmed is playable, whereas retroarch gets stuck at the stars right at the beginning, and is much slower. On the positive side, retroarch rescales to fill the screen, which just pcsx_rearmed doesn’t.

    Oh, and another question: can one upgrade? Can I just rerun the script to get a new version? Will anything get overwritten? Is there a new version?

  13. Pingback: 10 practical Raspberry Pi projects anybody can do - Gorilla News

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s