Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

File Manager for ROM Downloading #1129

Open
teod67 opened this issue Aug 18, 2024 · 3 comments
Open

File Manager for ROM Downloading #1129

teod67 opened this issue Aug 18, 2024 · 3 comments
Labels

Comments

@teod67
Copy link

teod67 commented Aug 18, 2024

Hi,
I am a user of Pegasus Frontend and greatly appreciate the work you've done on this game management interface. I would like to suggest a feature that, in my opinion, could significantly enhance the user experience.

Would it be possible to add a file manager that allows users to download ROMs available on a remote server directly from the Pegasus Frontend interface? This could function like an online catalog where users can browse, select, and download ROMs directly to their devices.

This feature could include:

  • Remote Server Connection: An option in the settings to connect to a remote server containing the ROMs.
    
  • Integrated Catalog: A section in the interface where the available ROMs are displayed with information such as title, platform, and possibly a description.
    
  • Direct Download: The ability to download selected ROMs directly into the local Pegasus directory.
    

I believe this enhancement would provide great convenience for users and make Pegasus Frontend even more powerful and flexible.

@teod67 teod67 added the feature label Aug 18, 2024
@mmatyas
Copy link
Owner

mmatyas commented Aug 18, 2024

Hi! I appreciate the well-written feature request, but this is both out of scope (because Pegasus is only the interface, not the scraper/game or emulator downloader/database/etc. part of a setup), and legally questionable (depending on the regional laws, what you describe might be illegal).

@teod67
Copy link
Author

teod67 commented Aug 18, 2024

Thank you for your prompt response.
I completely understand the concerns you've raised regarding both scope and legality. I’d like to address these points to clarify my intention and to explore whether there might be a way to approach this feature in a way that aligns with Pegasus’s goals and remains within legal boundaries.

  • Modularity and Flexibility:
    While Pegasus is indeed designed as a frontend interface, adding modular support for optional plugins or extensions could allow users to enhance their experience without compromising the core mission of Pegasus. The feature I suggested could be implemented as an optional, user-configurable plugin, rather than a built-in component, allowing users to choose whether or not to use it. This way, the base system remains clean and focused, while those who need additional functionality can add it themselves.

  • Legality and Compliance:
    I understand the legal concerns, and I want to stress that the feature would not inherently violate any laws. Instead, it could be designed to connect to any server the user specifies, similar to how torrent clients operate. This means that Pegasus itself wouldn't host or distribute ROMs, but simply provide a user-friendly interface for managing files that the user already has legal access to. Users would be responsible for ensuring they are complying with their local laws, much like with emulators themselves.

  • User Empowerment and Transparency:
    By empowering users to configure their own sources and downloads, Pegasus would remain transparent and would not endorse or facilitate illegal activities. The documentation could explicitly state that users must adhere to the law and that Pegasus is merely providing a flexible interface.

  • Educational and Homebrew Uses:
    This feature could also be very beneficial for legal and educational uses. For example, users could download homebrew games or other legal content from trusted sources. This would not only enrich the community but also encourage the use of Pegasus for a wider range of legitimate purposes.

I hope this clarifies my suggestion and addresses your concerns. I believe that such a feature, if implemented with care and flexibility, could greatly enhance the usability of Pegasus for a broad audience while staying within the intended scope and legal framework.

Thank you again for considering this, and I am open to discussing it further if you think there might be a way to incorporate some aspect of this idea in a manner that aligns with Pegasus’s vision.

@mmatyas
Copy link
Owner

mmatyas commented Aug 18, 2024

Oh I see, yes, a plugin system would be a good solution. There have been ideas about such system (eg. scraper plugin, achievements plugin, save game plugin), but there's no consensus about how should such plugins work in a cross-platform, generic way (eg. how should such API look like or what kind of format should they be in).

As this is a quite big topic, involving large modifications in the core code, I can't promise to work on it in the near future. However, if you are a developer, and have architectural plans, or would like to work on it, feel free to share your ideas! We should carefully plan this feature, but otherwise I'm open to the idea.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants