Installing RetroArch on Linux¶
This page contains descriptions of several officially-supported methods of installing RetroArch on systems running the GNU/Linux kernel.
AppImage (suitable for most GNU/Linux distributions)¶
AM¶
AM is a powerful command-line package manager for managing AppImage software. It allows users to install, update, and remove AppImages either system-wide or locally without manual setup.
- Installation
There are no system packages available for AM in common repositories, so it must be installed manually.
Follow the official installation instructions provided at: https://github.com/ivan-hc/AM
During setup, you’ll be prompted to choose one of two installation modes:
- Option 1: AM – for system-wide AppImage management (requires root privileges).
- Option 2: appman – for local, user-level AppImage management (no root access required).
Choose the option that best suits your environment and permissions.
- Searching for AppImages
Once installation is complete, verify that AM or AppMan is working by performing a search. Use the appropriate command depending on your installation:
This query searches for available AppImages matching “retroarch” and displays a list of results. Example output:
$ appman -q retroarch
SEARCH RESULTS FOR "RETROARCH":
◆ retroarch-nightly : RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications.
◆ retroarch-qt-nightly : RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications.
◆ retroarch-qt : RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications.
◆ retroarch : RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications.
- Installing an AppImage
To install your chosen AppImage, use the -i flag followed by the specific package name. For example, you can install either the stable release (for everyday use) or the Nightly build (ideal for testing):
# For system-wide installation (Stable)
am -i retroarch
# For system-wide installation (Nightly)
am -i retroarch-nightly
# For user-level installation (Stable)
appman -i retroarch
# For user-level installation (Nightly)
appman -i retroarch-nightly
- Updates
To update RetroArch, use the -u (or --update) flag. Running the update command without specifying a package name will update all installed AppImages managed by the tool:
Alternatively, you can target a specific package to update only that application. This is especially useful if you have multiple Continuous Integration (CI) AppImages of other software installed that you rarely use. Since the official bug report template encourages using the latest AppImage, updating just retroarch-nightly to test your issue on the latest build before reporting is recommended:
# For system-wide installation
am -u retroarch-nightly
# For user-level installation
appman -u retroarch-nightly
Note: Make sure to use the exact package name that you originally installed (e.g.,
retroarch,retroarch-nightly,retroarch-qt, orretroarch-qt-nightly).
-
Notes and Recommendations
-
Nightly builds are recommended when submitting bug reports or testing new features.
- Stable releases are better suited for everyday use.
- Use the same tool (am or appman) for all lifecycle tasks—installation, updates, and removal.
Flatpak (suitable for most GNU/Linux distributions)¶
Flatpak is a distribution-agnostic packaging format with broad support throughout the Linux ecosystem. An official RetroArch flatpak is published in the Flathub repository, and can be installed in just three easy steps:
Installation¶
-
Ensure that Flatpak is enabled on your system by opening the terminal and confirming that the following command exits with no errors:
-
Confirm that the Flathub repository is configured as a flatpak remote, so that packages from it may be installed. You can examine the flatpak remotes currently enabled on your system with this terminal command (shown with default output):
ra@libretro:~$ flatpak remotes --columns=name,url,homepage Name URL Homepage flathub https://dl.flathub.org/repo/ https://flathub.org/If Flathub is not among the remotes shown, this command will add it to your system:
-
Finally, install the RetroArch Flatpak. You have the option of making it available to only the current user, with this command:
flatpak install -y --user --from https://dl.flathub.org/repo/appstream/org.libretro.RetroArch.flatpakrefOr for all users with this command:
Launching the Flatpak¶
RetroArch should now be listed in your app launcher and can also be executed from the terminal with the command:
Updates¶
You should keep RetroArch updated by running this command periodically from the terminal:
Ubuntu(-based)¶
Ubuntu provides RetroArch as a Debian package in their official "universe" archive, which is maintained by the community with no promise of support or regular update schedule. Nevertheless, for the casual user of Ubuntu or a derivative distribution, it represents the simplest method for installing RetroArch. All that is required is to open a terminal and issue this single command:
Personal Package Archives (PPAs)¶
In an effort to improve the experience of RetroArch users on Ubuntu, official Ubuntu flavors, and all of the many Linux distributions based on Ubuntu (such as Linux Mint, Zorin OS, Pop! OS, elementary OS, etc.), the Libretro Team has long been committed to producing its own Debian packages as an alternative to the ones supplied by Ubuntu in the "universe" package archive. These packages are updated much faster to keep pace with each new RetroArch version, and compiled with a greater range of features than the Ubuntu package. In addition, Debian packages are created for the vast majority of popular Libretro cores, simplifying their installation and allowing them to be updated by the system package manager on the same schedule as all other package updates.
These packages are built and distributed using the Launchpad platform operated by Canonical itself (the company which distributes Ubuntu), and split into two channels called "Personal Package Archives" (PPAs) that each cater to a specific type of user. By simply enabling one (or both) the PPAs listed below, users can seamlessly replace the Ubuntu RetroArch package on their system with those provided by the Libretro team.
-
Stable (recommended) — includes only official releases (as announced on libretro.com / retroarch.com)
-
Testing — builds of RetroArch and most Libretro cores from the latest source code, for test new fixes and features as soon as they're added
Installation¶
Follow these steps to enable the Libretro PPAs on your Ubuntu(-based) system.
-
In order to add PPAs to your system's package sources, some tools from the official package repositories are needed. Open the terminal and run this command to ensure they are installed:
-
Just a single command is needed to add a PPA to your system's package sources.
-
To add the Stable PPA, run this command in your terminal:
-
Or to add the Testing PPA, run:
-
-
You can now install the RetroArch package from the PPAs with this command:
Verifying PPA package installation¶
You can verify that the PPA package is installed (rather than the one from the
official distribution repositories) with the apt show retroarch command (shown
with expected output for the Testing PPA package):
ra@libretro:~$ apt show retroarch
Package: retroarch
Version: 1.22.2+r202408170734~bf25bd9149-179~ubuntu24.04.1
Priority: optional
Section: games
Maintainer: Libretro Team <libretro@gmail.com>
Original-Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Installed-Size: 25.2 MB
Provides: retroarch-dbg
Depends: fonts-dejavu-core, libretro-core-info, libegl1, libgl1, […]
Recommends: libgamemode0, retroarch-assets
Suggests: xdg-utils
Download-Size: 6,349 kB
APT-Sources: https://ppa.launchpadcontent.net/libretro/testing/ubuntu […]
Description: Simple frontend for the libretro library
RetroArch is an open source, multi-platform frontend for the libretro API. It
can be used as a modular multi-emulator system, game engine, media player and
3-D technical demonstration. These features are available through libretro
cores.
.
It provides four built-in graphical user interface flavors: RGUI, XMB, Ozone
and GLUI.
Notice: There is 1 additional record. Please use the '-a' switch to see it
What to look for
Look at the APT-Sources: line in the output. If one of the PPA
packages is installed, its value will begin with
https://ppa.launchpadcontent.net/libretro/.
Updates¶
With this installation method, RetroArch updates will automatically be included with your system's regular package upgrades. However, you are always able to trigger an update specifically for RetroArch (if one is available) with the command:
Arch Linux(-based)¶
Installation¶
Official package¶
Arch Linux provides a retroarch package for x86_64 systems
in their official Extra repository. You can install it by
searching for RetroArch by name in a graphical package manager like
Octopi, or from the terminal with the command:
Arch User Repository (AUR) package¶
A "git" package named retroarch-git which offers
prerelease builds (similar to the Testing PPA described above) is also available
in the AUR. As above, it can be installed from a package manager GUI
or in the terminal using an "AUR helper" like yay,
as in:
Installing an AUR helper
If you wish to install the AUR package but don't yet have an AUR helper
installed on your system, the following shell "one-liner" will download,
compile and install yay for you:
Updates¶
With this installation method, RetroArch updates will automatically be included with your system's regular package upgrades. However, you are always able to trigger an update specifically for RetroArch (if one is available) with the following commands.