Pegasus

Pegasus Front-end #

Moonlight | Wolf
Pegasus screenshot

Pegasus is a powerful and flexible frontend for launching games, similar to EmulationStation. It provides a unified interface for interacting with various emulators, eliminating the need to manage multiple emulator interfaces separately.

Getting Started #

ROM Directory Structure #

By default, Pegasus is configured to look for ROMs in the /ROMs directory, with subdirectories for each platform. You can either create the ROM directories in the format below or edit Pegasus to use your preferred location.

Full ROM Directory Structure
/ROMs/3do
/ROMs/amiga
/ROMs/amigacd32
/ROMs/arcade
/ROMs/atari2600
/ROMs/atari5200
/ROMs/atari7800
/ROMs/atarijaguar
/ROMs/atarijaguarcd
/ROMs/atarilynx
/ROMs/atarist
/ROMs/gb
/ROMs/gba
/ROMs/gbc
/ROMs/gc
/ROMs/genesis
/ROMs/megacd
/ROMs/model2
/ROMs/model3
/ROMs/n64
/ROMs/naomi
/ROMs/neogeo
/ROMs/nes
/ROMs/ngp
/ROMs/ngpc
/ROMs/ps2
/ROMs/ps3
/ROMs/psp
/ROMs/psx
/ROMs/saturn
/ROMs/sega32x
/ROMs/segacd
/ROMs/snes
/ROMs/snes_widescreen
/ROMs/switch
/ROMs/virtualboy
/ROMs/wii
/ROMs/wiiu
/ROMs/wonderswan
/ROMs/wonderswancolor
/ROMs/xbox

Setting Up ROM Directories #

To make your roms accessible to Pegasus within the container, you need to create a bind mount that maps your host ROM folder to the /ROMs directory in the container. This is done by editing the config.toml file; ex:

mounts = [
    "/mnt/PATH_TO_ROMS_IN_YOUR_HOST/:/ROMs/:rw" # <-- EDIT HERE
]

Customization #

Theming #

Pegasus supports extensive customization through themes. You can change the look and feel of your frontend to suit your preferences.

To install a theme, you need to launch the Pegasus app at least once, then download the theme and place in:

<hostapps_folder>/Pegasus/.config/pegasus-frontend/themes

On the next Pegasus launch, you will be able to select the theme from within the settings.

Troubleshooting and Additional Resources #

If you encounter any issues or need more information, consider the following resources:

For specific issues related to this container or its configuration, please refer to the project’s issue tracker or community support channels.

Default config

This is the default configuration block that will be used in Wolf, you can override it by editing the config.toml.

Click to expand
[[apps]]
title = 'Pegasus'
icon_png_path = "https://games-on-whales.github.io/wildlife/apps/pegasus/assets/icon.png"

[apps.runner]
type = 'docker'
name = 'WolfPegasus'
image = 'ghcr.io/games-on-whales/pegasus:edge'
env = ['RUN_SWAY=true', 'GOW_REQUIRED_DEVICES=/dev/input/* /dev/dri/* /dev/nvidia*']
devices = []
mounts = []
ports = []
base_create_json = """
{
  "HostConfig": {
    "IpcMode": "host",
    "Privileged": false,
    "CapAdd": ["NET_RAW", "MKNOD", "NET_ADMIN"],
    "DeviceCgroupRules": ["c 13:* rmw", "c 244:* rmw"]
  }
}
\
"""