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.7m 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.
    • M
      msheehan79
      last edited by

      @fluffypillow @PlayingKarrde Ah ok, thanks for the insight. I was thinking more around building a data model (i.e. my dynamic games collection) than for visual components, so this helps clarify.

      The challenge I believe with ExpressionFilters is it evaluates every row in the collection. My setup is definitely an extreme example, with something like 20k items, as I just haven't gotten round to actually whittling it down to stuff I'd actually play yet :) I am also doing a lot of custom collections, I am not sure if this is double counting games when they are in multiple collections.
      But this provides a good barometer of performance. It takes about 15 seconds to iterate the full collection, so its noticeable. By comparison, a simple filter against say Favorites using ValueFilter took about 7-8 seconds, so about half the time.

      I only evaluate the collection once on load or when the dynamic collection is added/removed, so its really only noticed when you leave a game and return to the frontend, or when you click the "Add to collection" button, but if you are surfing through games I can see the slow return to the frontend being a bit of a drag, so I'm probably going to try another approach.

      This is on an older but still pretty decent x86 PC, Intel i5-2400 with 8GB RAM. I wouldn't dare try this sized collection on my RPi!

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

        (Bi-)Weekly update! (2020-05-18)

        A large number of internal changes have landed, related to the memory management of how games are stored. There should be no visible changes, but if you run into any odd behaviour, feel free to report it! Other than that:

        • Theme API: All asset fields can now store multiple files (previously only videos and screenshots could do this). See also the documentation. screenshots and videos are now deprecated in favor of screenshotList and videoList -- they are still there for a while though, so no theme should break.
        • Metadata files: Added support for custom sorting order for Collections -- similarly to the sort_title of Games, Collections now have a sort_by field. sort_by is also available for Games as an alias for sort title, if you wish to make the two entry types look the same.
        • Theme API: Added a sortBy field to Collections and Games. sortTitle of Games is now deprecated (but not yet removed) in favor of this field.
        • LaunchBox: Fixed sort title not being set in some cases
        • LaunchBox: Fixed command line parameters not getting passed in certain cases
        • LaunchBox: Added support for images without numeric suffix (ie. other than SomeGame-01.jpg, SomeGame.jpg that older versions used also works)
        • Updated the documentation to follow last weeks' maintenance changes
        • Minor performance and memory usage improvements
        N 1 Reply Last reply Reply Quote 1
        • M
          mandrew
          last edited by mandrew

          @fluffypillow Pegasus is really awesome. I'm just getting into it now, but wanted to let you know that from a framework point of view, what you've built is much better and more capable than other systems I've seen, especially for Retropie. Thank you.

          @PlayingKarrde Not sure if this is something that has been asked before, but I've downloaded your Switch theme (awesome, btw) and noticed that the UI should have sounds. I can't hear them. Is there something silly I'm missing? How do I turn the UI sounds on? I'm using Retropie, maybe that's why?

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

            @mandrew I've noticed there's some issues with the sounds. I'll look into it for the next update. I haven't tested at all on RPi so I'll make sure to do that too.

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

              @PlayingKarrde Got it, thank you!

              1 Reply Last reply Reply Quote 0
              • N
                NeoBi @fluffypillow
                last edited by

                @fluffypillow Hi Fluffy ! I just build your project in release mode, unfortunately when I saw the size of my executable, It is only 4704 KB, while yours is 27704 KB. Do I miss something ? Thank you.

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

                  @NeoBi Hi, when building C++ code you can either build statically, which places the dependencies directly into the executable, or dynamically, which loads them from the system at launch, resulting in smaller file size. It seems you've build dynamically, which is perfectly fine when you're building for yourself. On the other hand, the official releases are built statically, to not depend on system libraries as they may or may not be available on all OSes easily.

                  N 1 Reply Last reply Reply Quote 0
                  • S
                    SQWK_7500
                    last edited by

                    @fluffypillow Is there any way I could contact you privately?

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

                      @SQWK_7500 Hi, you can also find me on Discord, see https://pegasus-frontend.org/ for an invite.

                      N 1 Reply Last reply Reply Quote 0
                      • N
                        NeoBi @fluffypillow
                        last edited by

                        @fluffypillow Oh ! Ok, thank you for your fast answer !

                        1 Reply Last reply Reply Quote 0
                        • N
                          NeoBi @fluffypillow
                          last edited by

                          @fluffypillow I just saw with the build that the sort order of steam games is mess and is not in alphabetical order. is It normal ?

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

                            @NeoBi said in Announcing Pegasus Frontend:

                            @fluffypillow I just saw with the build that the sort order of steam games is mess and is not in alphabetical order. is It normal ?

                            Are you running latest? That was fixed pretty recently.

                            N 1 Reply Last reply Reply Quote 0
                            • LexxL
                              Lexx
                              last edited by

                              Hello. Amazing piece of software. I really like it.
                              I'm currently using it on a PC with extracted Media from Launchbox.

                              There's one thing that I'm missing though.
                              A way to check Retroachievements for a selected game.
                              Is there anything planed to integrate Retroachievements into Pegasus?

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

                                @Lexx Yup, there are plans for that, just haven't got around to it yet.

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

                                  Irregularly-timed update!

                                  Well development's a bit slow due to work, covid and lack of time, but here are some recent changes that you might be interested in:

                                  • Added support for disabling the shutdown/reboot/quit menu options from the command line. Here are the newly introduced parameters:
                                    • --disable-menu-reboot: Hides the system reboot entry in the main menu
                                    • --disable-menu-shutdown: Hides the system shutdown entry in the main menu
                                    • --disable-menu-appclose: Hides the closing Pegasus entry in the main menu
                                    • --kiosk: Alias for --disable-menu-reboot --disable-menu-shutdown --disable-menu-appclose
                                  • Fixed input not working in terminal-based apps
                                  • Steam: Fixed games not ordered by title
                                  • Skraper: Box3D pictures are now also accepted as box frontal images
                                  • Slightly optimized memory usage during loading

                                  Also important changes related to Patreon:

                                  As I was told, Patreon will be required to start charging sales tax/VAT starting July 1st. due to new laws passing in several countries, in particular the following ones: Australia, Belarus, Iceland, New Zealand, Norway, Canada (Quebec only), Russia, Saudi Arabia, Singapore, South Africa, South Korea, Switzerland, Taiwan, Turkey, United Arab Emirates, United States of America.

                                  As far as I know, the regular donation there is free from the taxes in most countries (you receive no "tangible goods"), but just in case here's a notice. You should also receive a mail from Patreon about this during the next week.

                                  In case this turns out to be a problem, I've also launched a Buy Me a Coffee page here: https://www.buymeacoffee.com/mmatyas (and because I'm interested in drinking some coffee).

                                  DarksaviorD DTEAMD 2 Replies Last reply Reply Quote 1
                                  • N
                                    NeoBi @PlayingKarrde
                                    last edited by

                                    @PlayingKarrde No, I didn't. I will do that right now, thank you for your answer ! And Thank you Fluffy for the Update.

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

                                      @fluffypillow I tried this bluetooth 8bitdo sfc30 for the first time with pegasus, and it freaks out. Auto scrolls all over the place as soon as I connect it wirelessly. This is on a clean boot to pegasus. I need to exit and restart pegasus (while the pad is still connected to bt) for it to act normal. The pad acts normal in ES, though I haven't direct booted with ES.
                                      Untitled-1.jpg

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        Brunnis
                                        last edited by

                                        @fluffypillow I've been dabbling with RetroPie for many years now, but just yesterday decided to try Pegasus. Scraped for media via Skraper.net and messed around with both the default and the gameOS themes. I've got to say that it's a very slick experience. Big thumbs up for this massive and high quality work!

                                        I've personally contributed to RetroArch by developing the concept and code for kiosk mode (and various settings for hiding certain sensitive settings individually) for the XMB menu driver. This is something I value quite highly in a 10 foot interface, since it's natural to want to leave the kids with it and not come back to a total mess. With that said, I saw you recently added support for hiding the choices under the "Quit" button. From what I can see, it's mainly the "Settings" button that would now need to also be protected or hidden to keep the kids from messing things up. Are you looking into adding something like that as well?

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

                                          @fluffypillow
                                          Quick question :
                                          For Frontend chooser tool, which version is good for Pi4 ?
                                          https://github.com/mmatyas/retropie-frontendchooser/blob/master/README.md

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            valsou
                                            last edited by

                                            Hi,
                                            I created a python script (+ 1 .conf file) to generate metadata.txt, for those who might be interested.

                                            I play on a Shield TV ( Android), all games on my USB thumb drive.
                                            Fluffypillow (mmatyas) offers a converter (gamelist.xml > metadata.txt) here. Very useful in the beginning but as my library is still in development i needed to generate very often metadata.txt and keep my settings.
                                            Also the script can backup in folders unused media assets so i can delete them later.
                                            And generate a "master" metadata.txt at the root that merges all others metadata.txt files. Very useful if you have a large number of collections. Juste one metadata.txt to load in Pegasus.
                                            The configuration file allows to override launch commands/shortname/collection name and maybe more later, for each collection.

                                            The thing is the script relies heavily on the gamelist.xml files, so you have to scrape your games, output a gamelist.xml (i can develop a parser for other kind of data files if necessary), then generate metadata.txt. Generate whenever you want as the gamelist.xml are still there.

                                            I am sure in the future, as Pegasus will grow, scrapers will offer a direct conversion to metadata.txt. I saw that the creator of Skyscraper is doing something like that.

                                            Anyway, sorry for the "advertisement". At least i can give big kudos to Pegasus-frontend and his creator, and the same for all themes creators/pull requesters that keep alive this project. :D

                                            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.