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

Modpack installer more like a pkg manager #2136

Open
jwrober opened this issue Jan 4, 2024 · 2 comments
Open

Modpack installer more like a pkg manager #2136

jwrober opened this issue Jan 4, 2024 · 2 comments
Labels
enhancement New feature or request gui This issue requires changes to the user interface tools Issues related to mp, ruledit, etc along with CI and build tools.

Comments

@jwrober
Copy link
Collaborator

jwrober commented Jan 4, 2024

Is your feature request related to a problem? Please describe.
Right now, the modpack installer is kind of dumb. It simply grabs a list of files to download and does it. The problem is it doesn't handle:

  • Complex dependency mapping between packs
  • File versioning
  • File management (e.g. if one version of a pack has a file and a second version doesn't, the old file isn't removed)
  • Control and reporting of what is installed
  • Better integration into the game interface
  • It's ugly and utilitarian
  • Easy way for new submissions

Describe the solution you'd like
We already have an open issue for the last bullet (better integration) in #1366. We could add a menu option for it as well in game. Would need to ensure that if a pack is installed in game (and probably off start menu) that a game restart isn't required for the game to see the change.

We have basic dep handling, but you can get cross-wise with circular mapping issues. Not sure we need to handle that per se, but better error messaging/handling would be good. Could be a CI/CD action check at PR open.

We don't do any kind of file list management. Easiest solution is to wipe all files on a re-download and start from scratch. Might be a better scalpel method though. e.g. delete old files and only download changed ones.

We fixed basic reporting in #2133. However might need more SQL changes to handle file level reporting.

Lastly, let's add theme support to the fcmp. Take existing theme the game is set to and display. Creates a more integrated experience. Then we don't have to provide .desktop and metainfo files for the utility.

Right now you need to know the json format and git/github to make submissions. As a nice to have, figure out a way to allow for easier submissions of new content. Maybe follow what flathub does with a repo per package? I'm sure there are other options as well.

Describe alternatives you've considered
Discussions have also occurred around using an established package manager. The challenge there is:

  • Must be super cross-platform like fc21 already is
  • Integrate into the game interface
  • Not command line, provide a nice UI/UX
  • Others I haven't thought of yet.

Additional context
Discord conversation starts here: https://discord.com/channels/378908274113904641/912500712833974322/1192480967407968287

@jwrober jwrober added enhancement New feature or request gui This issue requires changes to the user interface tools Issues related to mp, ruledit, etc along with CI and build tools. labels Jan 4, 2024
@jwrober
Copy link
Collaborator Author

jwrober commented Jan 5, 2024

In reviewing what Battle for Wesnoth has for their modpack installer:

  • Global Search
  • Filter by State, Type, Tags, List Order
  • Pack details
    • Icon associated with the pack (sexy!)
    • version
    • Author
    • Install/download Size
    • number of installs (showing popularity)
    • Type
    • Inline button for install/remove
  • Detailed description when selected
  • Ability to install prior/older versions - not sure if this is something we really need

Not that we have to copy them or anything, but some ideas

@lmoureaux
Copy link
Contributor

Ability to install prior/older versions - not sure if this is something we really need

This would be great to have for the LTT/LTX rulesets (one version per game...)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request gui This issue requires changes to the user interface tools Issues related to mp, ruledit, etc along with CI and build tools.
Projects
None yet
Development

No branches or pull requests

2 participants