Skip to content

A cross platform, customizable graphical frontend for launching emulators and managing your game collection.

License

Notifications You must be signed in to change notification settings

ellinge/pegasus-frontend

 
 

Repository files navigation

screenshot

Pegasus Frontend

Pegasus is a graphical frontend for browsing your game library and launching all kinds of emulators from the same place. It's focusing on customizability, cross platform support (including embedded) and high performance.

Travis CI status AppVeyor status CircleCI status Coverity Scan status Codacy status GPLv3 license

Features

Open source and cross platform: runs on Windows, Linux, Mac, Android, all Raspberries, Odroids and possibly on other devices too. Hardware accelerated and works with or without X11.

Full control over the UI: themes can completely change everything that is on the screen. Add or remove UI elements, menu screens, animations, whatever. Want to make it look like Kodi? Steam? Any other launcher? No problem. You can even run your custom shader code.

ES2 backward compatibility: Pegasus can use EmulationStation's gamelist files, no need to invent a new set of tools.

Features you'd expect: Gamepad support and config. Multiple aspect ratio support. Portable mode support. Live theme reload. A clock in the corner.

Installation and setup

You can find downloads and platform-specific notes on the project's website, under Downloads. Documentation and configuration guides can be found HERE, in particular you might want to take a look on the Getting started page.

Building from source

Build dependencies

  • C++11 compatible compiler
  • Qt 5.12 or later, with the following modules:
    • QML and QtQuick2
    • Multimedia
    • SVG
    • SQL (SQLite v3)
  • Either SDL (2.0.4 or later) or Qt Gamepad

For more information, please see the detailed build guide.

Downloading the source

The project uses Git submodules. If you've cloned the repository recursively, they are automatically cloned as well. In case you forgot to do that, you can do it manually, like this:

# call this after every repo update
git submodule update --init

Building

You can use any Qt-compatible IDEs, eg. Qt Creator to build the project, or you can manually invoke:

mkdir build && cd build
qmake ..  # qmake [params] [project path], see below
make
make install  # optional

For more details, including possible build parameters, see the build documentation.

License

Pegasus Frontend is available under GPLv3 license. Some included assets, such as product logos and symbols may not be available for commercial usage and/or may require additional permissions from their respective owners for certain legal uses. Furthermore, trademark usage may be limited as per §7 of the GPLv3 license. You can find the details in the LICENSE file.

All trademarks, service marks, trade names, trade dress, product names and logos are property of their respective owners. All company, product and service names used in this product are for identification purposes only. Use of these names, logos, and brands does not imply endorsement.

Donate

Pegasus is a free and open source project, and will remain as one. If you would like to provide financial support, you can use the following links. This is completely optional, but every contribution is much appreciated!

PayPal Liberapay Patreon Buy Me a Coffee

About

A cross platform, customizable graphical frontend for launching emulators and managing your game collection.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 72.8%
  • QML 22.4%
  • QMake 2.5%
  • Shell 1.0%
  • Java 0.8%
  • C 0.4%
  • JavaScript 0.1%