mirror of
https://github.com/libretro/docs.git
synced 2024-11-27 02:30:23 +00:00
Correct layout issues discovered post-libretro#973
The enhancements to the Content Security Policy and sandboxing
introduced in commit a746567c
ultimately prevented the embedded
YouTube video from launching. This commit makes the allow lists
more explicit about safe domains and adds 'allow-same-origin'
and 'allow-scripts' to the sandbox permissions. Also the nested
sublist blocks needed to be indented by multiples of 4 spaces
and not aligned with the first line as needed by other popular
Markdown parsers.
Signed-off-by: Peter J. Mello <admin@petermello.net>
This commit is contained in:
parent
b91e882cfe
commit
71f289afe9
@ -1,136 +1,176 @@
|
|||||||
# Downloading, Installing and Updating RetroArch
|
---
|
||||||
|
title: Downloading, Installing and Updating RetroArch on GNU/Linux
|
||||||
|
description: Instructions for setting up RetroArch on GNU/Linux systems.
|
||||||
|
icon: fontawesome/brands/linux
|
||||||
|
status: stable
|
||||||
|
---
|
||||||
|
|
||||||
<iframe allow="accelerometer; ambient-light-sensor; autoplay; clipboard-write;
|
# Installing RetroArch on Linux
|
||||||
display-capture; encrypted-media; execution-while-out-of-viewport; fullscreen;
|
|
||||||
geolocation; gyroscope; hid; magnetometer; picture-in-picture;
|
|
||||||
screen-wake-lock; speaker-selection; web-share;" aria-label="YouTube video"
|
|
||||||
height="315" loading="lazy" name="YouTube embedded player"
|
|
||||||
referrerpolicy="strict-origin-when-cross-origin" role="application"
|
|
||||||
sandbox="allow-orientation-lock; allow-presentation;"
|
|
||||||
src="https://www.youtube-nocookie.com/embed/kCyTlMjvzWA"
|
|
||||||
style="border-collapse: collapse; border-style: hidden; margin: 1rem auto;"
|
|
||||||
title="RetroArch - How to Install : Sega Genesis Mini" width="560"></iframe>
|
|
||||||
|
|
||||||
## GNU/Linux
|
This page contains descriptions of several officially-supported methods of
|
||||||
|
installing RetroArch on systems running the GNU/Linux kernel.
|
||||||
|
|
||||||
### Flatpak
|
<iframe allow="accelerometer 'self'; clipboard-write *; display-capture 'self'; encrypted-media 'src';
|
||||||
|
fullscreen *; geolocation 'src'; gyroscope 'self'; hid 'self'; picture-in-picture *; screen-wake-lock *;
|
||||||
|
web-share *;" aria-label="YouTube video" height="315" width="560" loading="lazy" role="application"
|
||||||
|
name="YouTube embedded player" title="RetroArch - How to Install: Linux" referrerpolicy="strict-origin-when-cross-origin"
|
||||||
|
sandbox="allow-orientation-lock allow-popups allow-presentation allow-same-origin allow-scripts"
|
||||||
|
src="https://www.youtube-nocookie.com/embed/7ZSPR2eYULU?origin=docs.libretro.com&playsinline=1"
|
||||||
|
style="border-collapse: collapse; border-style: hidden; display: block; margin: 1.5rem auto 2rem; position: relative;"></iframe>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Flatpak (suitable for most Linux distributions)
|
||||||
|
|
||||||
Flatpak is a distribution-agnostic packaging format with broad support
|
Flatpak is a distribution-agnostic packaging format with broad support
|
||||||
throughout the Linux ecosystem. An official
|
throughout the Linux ecosystem. An official [RetroArch
|
||||||
[RetroArch flatpak][retroarch-flatpak] is published in the Flathub repository,
|
flatpak][retroarch-flatpak] is published in the Flathub repository, and can be
|
||||||
and can be installed in just three easy steps:
|
installed in just three easy steps:
|
||||||
|
|
||||||
#### Installation
|
### Installation
|
||||||
|
|
||||||
1. Ensure that Flatpak is [enabled on your system][flatpak-setup] by opening the
|
1. Ensure that Flatpak is [enabled on your system][flatpak-setup] by opening the
|
||||||
terminal and confirming that the following command exits with no errors:
|
terminal and confirming that the following command exits with no errors:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
flatpak --installations
|
flatpak --installations
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Confirm that the Flathub repository is configured as a
|
1. Confirm that the Flathub repository is configured as a [flatpak
|
||||||
[flatpak remote][flatpak-remote], so that packages may be installed from it.
|
remote][flatpak-remote], so that packages from it may be installed. You can
|
||||||
You can examine the flatpak remotes currently enabled on your system with
|
examine the flatpak remotes currently enabled on your system with this
|
||||||
this terminal command (shown with default output):
|
terminal command (shown with default output):
|
||||||
|
|
||||||
```console
|
``` shell-session hl_lines="4"
|
||||||
$ flatpak remotes --columns=name,url,homepage
|
ra@libretro:~$ flatpak remotes --columns=name,url,homepage
|
||||||
|
|
||||||
Name URL Homepage
|
Name URL Homepage
|
||||||
flathub https://dl.flathub.org/repo/ https://flathub.org/
|
flathub https://dl.flathub.org/repo/ https://flathub.org/
|
||||||
```
|
```
|
||||||
|
|
||||||
If Flathub is not among the remotes shown, this command will add it to your
|
If Flathub is not among the remotes shown, this command will add it to your
|
||||||
system:
|
system:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Finally, install the RetroArch Flatpak. You have the option of making it
|
1. Finally, install the RetroArch Flatpak. You have the option of making it
|
||||||
available to only the current user, with this command:
|
available to only the current user, with this command:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
flatpak install -y --user --from https://dl.flathub.org/repo/appstream/org.libretro.RetroArch.flatpakref
|
flatpak install -y --user --from https://dl.flathub.org/repo/appstream/org.libretro.RetroArch.flatpakref
|
||||||
```
|
```
|
||||||
|
|
||||||
Or for all users with this command:
|
Or for all users with this command:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
sudo flatpak install -y --from https://dl.flathub.org/repo/appstream/org.libretro.RetroArch.flatpakref
|
sudo flatpak install -y --from https://dl.flathub.org/repo/appstream/org.libretro.RetroArch.flatpakref
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Launching the Flatpak
|
### Launching the Flatpak
|
||||||
|
|
||||||
RetroArch should now be listed in your app launcher and can also be executed
|
RetroArch should now be listed in your app launcher and can also be executed
|
||||||
from the terminal with the command:
|
from the terminal with the command:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
flatpak run org.libretro.RetroArch
|
flatpak run org.libretro.RetroArch
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Updates
|
### Updates
|
||||||
|
|
||||||
You should keep RetroArch updated by running this command periodically from the
|
You should keep RetroArch updated by running this command periodically from the
|
||||||
terminal:
|
terminal:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
flatpak update -y --app org.libretro.RetroArch
|
flatpak update -y --app org.libretro.RetroArch
|
||||||
```
|
```
|
||||||
|
|
||||||
### Ubuntu-based
|
## Ubuntu(-based)
|
||||||
|
|
||||||
If you're using Ubuntu, an official [Ubuntu flavor][ubuntu-flavors], or one of
|
Ubuntu provides RetroArch as a Debian [package in their official "universe"
|
||||||
the many Linux distributions based on Ubuntu (such as Linux Mint, Zorin OS, Pop!
|
archive][ubuntu-package], which is maintained by the community with no promise
|
||||||
OS, elementary OS, etc.), you can install RetroArch and many of the most popular
|
of support or regular update schedule. Nevertheless, for the casual user of
|
||||||
Libretro cores as native APT packages by simply enabling one (or both) of the
|
Ubuntu or a derivative distribution, it represents the simplest method for
|
||||||
two official Libretro [Personal Package Archives (PPAs)][help-ppas] hosted on
|
installing RetroArch. All that is required is to open a terminal and issue this
|
||||||
[Launchpad](https://launchpad.net/~libretro), namely:
|
single command:
|
||||||
|
|
||||||
- [**Stable**][ppa-stable] (recommended), which includes only official releases
|
``` shell
|
||||||
(as announced on libretro.com / retroarch.com), and
|
sudo apt --upgrade --yes install retroarch
|
||||||
- [**Testing**][ppa-testing], which provides nightly builds of RetroArch and
|
|
||||||
most Libretro cores that allow you to test new features as soon as they're
|
|
||||||
added.
|
|
||||||
|
|
||||||
#### Installation
|
|
||||||
|
|
||||||
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:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
sudo apt -y install software-properties-common
|
|
||||||
```
|
```
|
||||||
|
|
||||||
One command is needed to add a PPA to your system's package sources. To add the
|
### Personal Package Archives (PPAs)
|
||||||
[**Stable PPA**][ppa-stable], use:
|
|
||||||
|
|
||||||
```sh
|
In an effort to improve the experience of RetroArch users on Ubuntu, official
|
||||||
sudo add-apt-repository -ysnP libretro/stable
|
[Ubuntu flavors][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.
|
||||||
|
|
||||||
Or to add the [**Testing PPA**][ppa-testing], use:
|
These packages are built and distributed using the [Launchpad
|
||||||
|
platform][launchpad-team] 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][help-ppas] listed below, users can seamlessly replace
|
||||||
|
the Ubuntu RetroArch package on their system with those provided by the Libretro
|
||||||
|
team.
|
||||||
|
|
||||||
```sh
|
- [**Stable**][ppa-stable] (recommended) — includes only official releases
|
||||||
sudo add-apt-repository -ysnP libretro/testing
|
(as announced on libretro.com / retroarch.com)
|
||||||
```
|
|
||||||
|
|
||||||
You can now install the RetroArch package from the PPAs with this command:
|
- [**Testing**][ppa-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
|
||||||
|
|
||||||
```sh
|
### Installation
|
||||||
sudo apt -Uy install retroarch
|
|
||||||
```
|
|
||||||
|
|
||||||
You can verify that the PPA package was installed rather than the one from the
|
Follow these steps to enable the Libretro PPAs on your Ubuntu(-based) system.
|
||||||
official distribution repositories with the `apt show` command (shown with
|
|
||||||
expected output for the Testing PPA package):
|
|
||||||
|
|
||||||
```console
|
1. In order to add PPAs to your system's package sources, some tools from the
|
||||||
$ apt show retroarch
|
official package repositories are needed. Open the terminal and run this
|
||||||
|
command to ensure they are installed:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
sudo apt --update --yes install software-properties-common
|
||||||
|
```
|
||||||
|
|
||||||
|
1. Just a single command is needed to add a PPA to your system's package
|
||||||
|
sources.
|
||||||
|
|
||||||
|
- To add the [**Stable PPA**][ppa-stable], run this command in your
|
||||||
|
terminal:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
sudo add-apt-repository --yes --no-update --ppa libretro/stable
|
||||||
|
```
|
||||||
|
|
||||||
|
- Or to add the [**Testing PPA**][ppa-testing], run:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
sudo add-apt-repository --yes --no-update --ppa libretro/testing
|
||||||
|
```
|
||||||
|
|
||||||
|
1. You can now install the RetroArch package from the PPAs with this command:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
sudo apt --update --yes install retroarch
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 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):
|
||||||
|
|
||||||
|
``` shell-session hl_lines="14"
|
||||||
|
ra@libretro:~$ apt show retroarch
|
||||||
Package: retroarch
|
Package: retroarch
|
||||||
Version: 1.19.1+r202408170734~bf25bd9149-179~ubuntu24.04.1
|
Version: {{ unit.stable }}+r202408170734~bf25bd9149-179~ubuntu24.04.1
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: games
|
Section: games
|
||||||
Maintainer: Libretro Team <libretro@gmail.com>
|
Maintainer: Libretro Team <libretro@gmail.com>
|
||||||
@ -154,51 +194,91 @@ Description: Simple frontend for the libretro library
|
|||||||
Notice: There is 1 additional record. Please use the '-a' switch to see it
|
Notice: There is 1 additional record. Please use the '-a' switch to see it
|
||||||
```
|
```
|
||||||
|
|
||||||
Look at the **`APT-Sources:`** line in the output. If one of the PPA packages is
|
!!! tip "What to look for"
|
||||||
installed, its value will begin with
|
Look at the **`APT-Sources:`** line in the output. If one of the PPA
|
||||||
`https://ppa.launchpadcontent.net/libretro/`.
|
packages is installed, its value will begin with
|
||||||
|
`https://ppa.launchpadcontent.net/libretro/`.
|
||||||
|
|
||||||
#### Updates
|
### Updates
|
||||||
|
|
||||||
With this installation method, RetroArch updates will automatically be included
|
With this installation method, RetroArch updates will automatically be included
|
||||||
with your systems regular package upgrades. However, you are always able to
|
with your system's regular package upgrades. However, you are always able to
|
||||||
trigger an update specifically for RetroArch with the terminal command:
|
trigger an update specifically for RetroArch (if one is available) with the
|
||||||
|
command:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
sudo apt -y upgrade retroarch
|
sudo apt --update --yes upgrade retroarch
|
||||||
```
|
```
|
||||||
|
|
||||||
### Arch Linux-based
|
## Arch Linux(-based)
|
||||||
|
|
||||||
Arch Linux provides a [`retroarch`][arch-package] package for x86_64 systems in
|
### Installation
|
||||||
their official [Extra repository][arch-extra-repo]. You can install it by
|
|
||||||
|
#### Official package
|
||||||
|
|
||||||
|
Arch Linux provides a [**`retroarch`**][arch-package] package for x86_64 systems
|
||||||
|
in their official [Extra repository][arch-extra-repo]. You can install it by
|
||||||
searching for RetroArch by name in a graphical package manager like
|
searching for RetroArch by name in a graphical package manager like
|
||||||
[Octopi][octopi], or from the terminal with the command:
|
[Octopi][octopi], or from the terminal with the command:
|
||||||
|
|
||||||
```sh
|
``` shell
|
||||||
sudo pacman -S retroarch
|
sudo pacman -S retroarch
|
||||||
```
|
```
|
||||||
|
|
||||||
A "git" package named [`retroarch-git`][aur-git-package] which offers prerelease
|
#### Arch User Repository (AUR) package
|
||||||
builds (similar to the Testing PPA described above) is also available on the
|
|
||||||
[AUR][arch-aur]. As above, it can be installed from a package manager GUI or in
|
|
||||||
the terminal using an "[AUR helper][aur-helpers]" like [`yay`][aur-yay], as in:
|
|
||||||
|
|
||||||
```sh
|
A "git" package named [**`retroarch-git`**][aur-git-package] which offers
|
||||||
|
prerelease builds (similar to the Testing PPA described above) is also available
|
||||||
|
in the [AUR][arch-aur]. As above, it can be installed from a package manager GUI
|
||||||
|
or in the terminal using an "[AUR helper][aur-helpers]" like [`yay`][aur-yay],
|
||||||
|
as in:
|
||||||
|
|
||||||
|
``` shell
|
||||||
yay retroarch-git
|
yay retroarch-git
|
||||||
```
|
```
|
||||||
|
|
||||||
|
!!! tip "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:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
pacman -S --needed git base-devel && git clone https://aur.archlinux.org/yay-bin.git &&
|
||||||
|
cd yay-bin && makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
### 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.
|
||||||
|
|
||||||
|
#### Official package
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
pacman -Syyuu retroarch
|
||||||
|
```
|
||||||
|
|
||||||
|
#### AUR package
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
yay -Syyuu retroarch-git
|
||||||
|
```
|
||||||
|
|
||||||
[arch-aur]: https://aur.archlinux.org/ "Arch User Repository (AUR)"
|
[arch-aur]: https://aur.archlinux.org/ "Arch User Repository (AUR)"
|
||||||
[arch-extra-repo]: https://wiki.archlinux.org/title/Official_repositories#extra
|
[arch-extra-repo]: https://wiki.archlinux.org/title/Official_repositories#extra "Official repositories - ArchWiki"
|
||||||
[arch-package]: https://archlinux.org/packages/extra/x86_64/retroarch/
|
[arch-package]: https://archlinux.org/packages/extra/x86_64/retroarch/ "Arch Linux - retroarch {{ unit.stable }}-1 (x86_64)"
|
||||||
[aur-git-package]: https://aur.archlinux.org/packages/retroarch-git
|
[aur-git-package]: https://aur.archlinux.org/packages/retroarch-git "AUR (en) - retroarch-git"
|
||||||
[aur-helpers]: https://wiki.archlinux.org/title/AUR_helpers
|
[aur-helpers]: https://wiki.archlinux.org/title/AUR_helpers "AUR helpers - ArchWiki"
|
||||||
[aur-yay]: https://github.com/Jguer/yay
|
[aur-yay]: https://github.com/Jguer/yay "Jguer/yay: Yet another Yogurt - An AUR Helper written in Go (GitHub)"
|
||||||
[flatpak-remote]: https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak-remotes
|
[flatpak-remote]: https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak-remotes "Flatpak Command Reference - Flatpak documentation"
|
||||||
[flatpak-setup]: https://flatpak.org/setup/
|
[flatpak-setup]: https://flatpak.org/setup/ "Flatpak—the future of application distribution"
|
||||||
[help-ppas]: https://help.launchpad.net/Packaging/PPA/InstallingSoftware
|
[help-ppas]: https://help.launchpad.net/Packaging/PPA/InstallingSoftware "Packaging/PPA/Installing Software - Launchpad Help"
|
||||||
[octopi]: https://tintaescura.com/projects/octopi/
|
[launchpad-team]: https://launchpad.net/~libretro "Libretro in Launchpad"
|
||||||
[ppa-stable]: https://launchpad.net/~libretro/+archive/ubuntu/stable
|
[octopi]: https://tintaescura.com/projects/octopi/ "Octopi - Tinta escura"
|
||||||
[ppa-testing]: https://launchpad.net/~libretro/+archive/ubuntu/testing
|
[ppa-stable]: https://launchpad.net/~libretro/+archive/ubuntu/stable "Libretro Stable : “Libretro” team"
|
||||||
[retroarch-flatpak]: https://flathub.org/apps/org.libretro.RetroArch
|
[ppa-testing]: https://launchpad.net/~libretro/+archive/ubuntu/testing "Libretro Testing/Nightly : “Libretro” team"
|
||||||
[ubuntu-flavors]: https://ubuntu.com/desktop/flavours
|
[retroarch-flatpak]: https://flathub.org/apps/org.libretro.RetroArch "Install RetroArch on Linux | Flathub"
|
||||||
|
[ubuntu-flavors]: https://ubuntu.com/desktop/flavours "Ubuntu flavours | Ubuntu"
|
||||||
|
[ubuntu-package]: https://packages.ubuntu.com/search?keywords=retroarch&searchon=names "Ubuntu – Package Search Results -- retroarch"
|
||||||
|
Loading…
Reference in New Issue
Block a user