RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Announcing Pegasus Frontend

    Scheduled Pinned Locked Moved Ideas and Development
    frontendpegasusc++developmentqml
    1.7k Posts 145 Posters 5.2m Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • fluffypillowF
      fluffypillow @TempTest
      last edited by

      @TempTest

      Kodi

      Hmm so something like this?

      img

      Unfortunately that'd require merging Pegasus and Kodi on the source code level, I think doing that in a plugin is not technically possible :(

      First: in default theme the screenshot in main view shows and disappears immediately, re appears on moving to another game and back to it. no screenshot at all in info panel/view (im gonna switch themes eventually anyway)

      This DirectShow error usually means "the video file needs a codec that is not currently installed" (yeah, Microsoft likes cryptic error messages). The common solution is to use a codec pack like K-Lite that plays them all, or one specific to the particular video format (eg. Steam needs Xiph codecs).

      Second i can only imagine is my own incompetence I cant get it to launch the emulator log says path doesn't exist (it does) ive use the following as suggested, and a few variations not shown and a personalized version of the real life examples

      Have you tried

      launch: "Q:\Media\- Games\Programs\Retroarch\retroarch.exe" "{file.path}"
      

      ? Spaces and relative paths tend to be problematic, but should work with quotes. If not, please post the log and the metadata file, I'll try to reproduce the error then. I guess launching may also fail if Q: is not a regular drive, eg. it's a network share or some online service.

      are dualshock 4's not supported, i cant get mine working, xbox one is fine though

      Should work, but I can't test it at the moment. Anyone else have this issue?

      lilbudL T 2 Replies Last reply Reply Quote 0
      • lilbudL
        lilbud @fluffypillow
        last edited by

        @fluffypillow If you were to create a way to have both Kodi and Pegasus. Kodi would launch pegasus, not run over top of it. You'd select the shortcut and pegasus would open as a completely seperate program.

        Creator of the Radiocade: https://retropie.org.uk/forum/topic/6077/radiocade

        Backlog: http://backloggery.com/lilbud

        fluffypillowF 1 Reply Last reply Reply Quote 0
        • fluffypillowF
          fluffypillow @lilbud
          last edited by

          @lilbud yes that can be done, it's just the Pegasus-inside-Kodi approach that would be troublesome.

          herb_fargusH 1 Reply Last reply Reply Quote 0
          • herb_fargusH
            herb_fargus administrators @fluffypillow
            last edited by herb_fargus

            @fluffypillow said in Announcing Pegasus Frontend:

            the Pegasus-inside-Kodi

            Last I checked there were add ons for Kodi that let you launch external programs from within Kodi, so it wouldn't be too difficult to just have the add on launch Pegasus. Wouldn't require anything on your part as far as I know.

            I don't see any point of running Pegasus within Kodi.

            If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

            Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

            1 Reply Last reply Reply Quote 0
            • T
              TempTest @fluffypillow
              last edited by TempTest

              @fluffypillow

              Hmm so something like this?

              Yeah Basically. ill try to form a better description later.

              This DirectShow error usually means "the video file needs a codec that is not currently installed" (yeah, Microsoft likes cryptic error messages). The common solution is to use a codec pack like K-Lite that plays them all, or one specific to the particular video format (eg. Steam needs Xiph codecs).

              I didnt even think to google it i assumed it was something you made for debugging, another oof for me. odd i have alot of codecs installed. this drive is moved a lot, always on a windows machine id like to avoid any possible need for installs while portable will switching formats or to a container still be readable, or could a portable vlc in the pegasus root directory be made to run videos

              Have you tried

              launch: "Q:\Media\- Games\Programs\Retroarch\retroarch.exe" "{file.path}"
              

              Yes i did, since my last message i discovered i had a service that got stuck in a loop so problem has been solved, though should i be adding a command to the meta txt to instruct which core should be used, i noticed in the android real world example in docs there are a few added.

                         launch: am start
                           --user 0
                           -n com.retroarch/.browser.retroactivity.RetroActivityFuture
                           -e ROM "{file.path}"
                           -e LIBRETRO /data/data/com.retroarch/cores/fceumm_libretro_android.so
                           -e CONFIGFILE /storage/emulated/0/Android/data/com.retroarch/files/retroarch.cfg
                           -e IME com.android.inputmethod.latin/.LatinIME
                           -e DATADIR /data/data/com.retroarch
                           -e APK /data/app/com.retroarch-1/base.apk
                           -e SDCARD /storage/emulated/0
                           -e DOWNLOADS /storage/emulated/0/Download
                           -e SCREENSHOTS /storage/emulated/0/Pictures
                           -e EXTERNAL /storage/emulated/0/Android/data/com.retroarch/files
                           --activity-clear-top
              

              Are those android specific? if not are they specific variables you've established or is it a standard with documentation you can point me to. (not the paths, the -n, -e, etc.)

              Should work, but I can't test it at the moment. Anyone else have this issue?

              I figured it was supported i could see the button logos. just wanted to make sure. it could be my hardware, i think ive been having issues with the onboard USB root hub.

              fluffypillowF 1 Reply Last reply Reply Quote 0
              • fluffypillowF
                fluffypillow @TempTest
                last edited by

                @TempTest said in Announcing Pegasus Frontend:

                I didnt even think to google it i assumed it was something you made for debugging, another oof for me. odd i have alot of codecs installed. this drive is moved a lot, always on a windows machine id like to avoid any possible need for installs while portable will switching formats or to a container still be readable, or could a portable vlc in the pegasus root directory be made to run videos

                Pegasus currently uses the system's built-in media playback features, which is why installing codecs is necessary. Though, if the codec DLLs are placed next to the EXE, in theory that might also work. Haven't experimented with that before.

                There are also plans to add standalone video playback support, but since that won't be a small task it's a long term goal for now.

                Are those android specific? if not are they specific variables you've established or is it a standard with documentation you can point me to. (not the paths, the -n, -e, etc.)

                Yes, those are Android-specific, on Windows and Linux it looks like this:

                launch: path/to/retroarch.exe -L path/to/somecore.dll "{file.path}"
                

                example: C:\retroarch\retroarch.exe -L C:\retroarch\cores\fceumm_libretro.dll "{file.path}"

                M 1 Reply Last reply Reply Quote 0
                • M
                  Moukrea
                  last edited by

                  This is definitely the best frontend brought to Android hands down! And a pretty neat too for other platforms, you did an awesome job!

                  Although I feel like it definitely could be even better. As a matter of fact, the only downside (to me) is that Pegasus lacks of an home screen... I mean, it automatically select the first (alphabetically) platform available and focus it. It would be awesome to have a Home section with :

                  • "Recently Played" games (20 to 60 entries).
                  • "Recommended Games" based on our gaming history (Genre, Year, Developper, Platform, Number of player... all together in a Netflix style algorithm).
                  • "Because you played [Game name]" recommending games based on the most played game.

                  Making the frontend more custom tailored to each players and making it easy to find a game the user might like when they have a massive game library (full romsets and so on).

                  Just throwing some ideas here, but that'd be awesome!

                  fluffypillowF 1 Reply Last reply Reply Quote 0
                  • fluffypillowF
                    fluffypillow @Moukrea
                    last edited by

                    @Moukrea sure, ideas are welcome! In fact the "recently played" list is already possible, if I remember correctly the gameOS theme will have something like that.

                    As for recommendation systems, they require lots of data to be accurate, but unfortunately I haven't seen a database yet that'd have enough information for that. Things like people who worked on the game, whether it's part of a series or whether it received any awards, these would have an impact on the result, but no site provides them as far as I know. Without proper data, it would be like recommending TV series based on the air date, number of actors and the channel it aired on... But, with enough information, this would be an interesting feature.

                    M 1 Reply Last reply Reply Quote 2
                    • M
                      Moukrea @fluffypillow
                      last edited by

                      @fluffypillow That's actually all I can do, throw some ideas! So far Pegasus became my main Frontend on my Android TV box (Shield) and I'd love to see it becoming the go-to solution for it... For the recommendation, I don't think it could be as accurate as Netflix algorithm that's for sure! What I meant was maybe it could confront informations from previously played games, for exemple:
                      I played Mario Kart 64 (6 times), Mario Kart Double Dash!! (20 times) and Crash Team Racing (2 times). The three of them are Racing games (Played this genre 28 times in total), two are developped by Nintendo, the three are 4 players games... The recommendation system would then know that I play multiplayer games, moslty racing ones with a preference for Nintendo as a developper! The recommendation after this data could be Mario Kart Wii etc etc... It's all after data scraped in my collection data, so there's no need for more data. Very much like it's done in Kodi for movies... If for exemple I watch mostly Action movies made by... let's say Marvel Studios, it will suggest more of them in its recommendations. All it has to do (which is actually a lot) is to process the watched history data (Genre, Studio, Year, Actors) and blend them together regarding to how many times it has been watched.

                      Much like my exemple with Racing games, I played this genre like 28 times while I played Platform (for exemple) 10 times and Adventure 4 times in total, then the recommendation system would know that Racing would be more recommended than Platform, which is going to be more recommended than Adventure. To be perfect, as you said it would require hell of a lot of data such as people involved, awards and so on... But I think having this system with just Genre, Developper, Year, Platform and Number of Players would be already to off the line.

                      That would require to build a (custom) secondary database tracking gaming history, after the data contained in collections database. I'm pretty sure it's doable, however as you said, it's hell of a work to put in place!

                      As for the recently played thing, one other thing that could be cool would be to be able to set the Recently played section as an Android TV Channel to have it on the Android TV main menu, but now I'm daydreaming!

                      1 Reply Last reply Reply Quote 0
                      • PlayingKarrdeP
                        PlayingKarrde
                        last edited by

                        I'm in the process of adding a home screen to gameOS but other things have been taking up my time lately. Recently played, recommendations per genre (random genres filtered by rating unfortunately since I don't think it would be a good idea implementing a deeper PLEX like system at the theme level for this) as well as a few other things.

                        Unfortunately it's a pretty big task though and I haven't had a big chunk of time to dedicate to this in the last couple of months.

                        M 1 Reply Last reply Reply Quote 1
                        • M
                          Moukrea @PlayingKarrde
                          last edited by

                          @PlayingKarrde that's awesome! I didn't think stuff like this could be achieved at the theme level actually, but if briging recommendations based on ratings is possible, wow that's good news! Not as rich as I stated before but it's a good idea to highlight most popular games, and therefore the potentially most interesting ones! Looking forward to this, keep up the good work

                          PlayingKarrdeP 1 Reply Last reply Reply Quote 0
                          • PlayingKarrdeP
                            PlayingKarrde @Moukrea
                            last edited by

                            @Moukrea I would keep expectations in check a little though. There's not a whole lot of granularity in the ratings pulled from screenscraper (and I am not even really sure where those ratings come from tbh). I think if the launchbox support does come that might give better results but we'll see. All in all the best endgame solution I feel would be some kind of PLEX like database service, but that would be both time consuming and expensive so I'm not sure we'll ever see something like it.

                            1 Reply Last reply Reply Quote 0
                            • DarksaviorD
                              Darksavior @fluffypillow
                              last edited by Darksavior

                              @fluffypillow I don't notice the differences with the pi3 version, but just be aware the retropie-setup script points to the pi2 build. Anyone wanting to use the pi3 build will need to edit the pegasus-fe script and change rpi2 to rpi3.

                              fluffypillowF 1 Reply Last reply Reply Quote 0
                              • DarksaviorD
                                Darksavior
                                last edited by Darksavior

                                @fluffypillow A problem. I've been having issues loading the steam link app. Permission problems. After days of troubleshooting, I ended up reinstalling retropie and it was still causing it. I finally found out it's Pegasus. ES loads it just fine.

                                Error when loading Steam Link.sh:
                                (EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)

                                Steam Link.shcontains:
                                #!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "steamlink" ""
                                Here's the full xorg log:
                                https://pastebin.com/P2nZd9q0

                                1 Reply Last reply Reply Quote 0
                                • fluffypillowF
                                  fluffypillow @Darksavior
                                  last edited by fluffypillow

                                  @Darksavior

                                  the retropie-setup script points to the pi2 build

                                  Ah, forgot about that, thanks. I've just sent the fix to the RetroPie repo.

                                  (EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)

                                  Will check it out. Should I just install Steam Link from the setup script to reproduce the error?

                                  DarksaviorD 1 Reply Last reply Reply Quote 0
                                  • DarksaviorD
                                    Darksavior @fluffypillow
                                    last edited by

                                    @fluffypillow Yes, it's in the experimental section.

                                    fluffypillowF 1 Reply Last reply Reply Quote 0
                                    • fluffypillowF
                                      fluffypillow @Darksavior
                                      last edited by

                                      @Darksavior The error happens to me outside of Pegasus too, seems to be an X11 permission issue:

                                      • First, I tried launching Steam Link.sh from the terminal, but got the same Cannot open /dev/tty0 (Permission denied) error.
                                      • /dev/tty0 is owned by the tty group, so I added myself to it. Restarting and trying again, I've got a xf86OpenConsole: Cannot open virtual console 2 (Permission denied) error.
                                      • This seems to be due to a change in recent X11 releases on Stretch. Allowing regular users to launch an X11 session can be done by installing xserver-xorg-legacy. Then I've got an Only console users are allowed to run the X server error (ie. cannot be started by scripts).
                                      • On Jessie this could have been fixed by dpkg-reconfigure x11-common, but unfortunately that seems to be broken on Stretch. After installing xserver-xorg-legacy, there should be a /etc/X11/Xwrapper.config file, where the allowed_users should be changed to anybody. Trying again, I've got a black screen with a mouse cursor. After loading a while (seems like it downloads itself on the first run), the "Welcome to Steam Link" screen appeared and seemed to work fine.
                                      • After all this fixing, I've tried again with Pegasus, and launching worked fine from there too. Turns out being in the tty group was no longer necessary, so I've removed myself from there and restarted. Steam Link continued to work.
                                      DarksaviorD 1 Reply Last reply Reply Quote 0
                                      • fluffypillowF
                                        fluffypillow
                                        last edited by

                                        Also a weekly update! Haven't had too much time unfortunately, but finally there is a game file selector for multifile games. There have been some bugfixes too: A bug where multifile games appeared multiple times got fixed, and there was a missing translation on the game directory screen too. With that done, I think I'll finally have some time to update the documentations this week.

                                        Also there have been several issue reports piling up recently -- don't worry, they weren't forgotten, I'll start reducing them after these changes have been handled.

                                        1 Reply Last reply Reply Quote 1
                                        • PlayingKarrdeP
                                          PlayingKarrde
                                          last edited by

                                          Nice! I think I'll update my collections files now. Thanks!

                                          1 Reply Last reply Reply Quote 0
                                          • DarksaviorD
                                            Darksavior @fluffypillow
                                            last edited by Darksavior

                                            @fluffypillow Yeah, you went with the same steps I went through, but here's some things:
                                            Steam link.sh installs the dependencies it needs and that's all it should be required. ES can load it fine. Doesn't work at the command line or Pegasus.
                                            Going with the legacy route is a temporary solution because retropie-setup automatically uninstalls it if you go back in it. There is something ES is doing to load it with no problems as-is.

                                            fluffypillowF 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.