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

Adding support for updating plugins too #15

Open
mkandalaf opened this issue Sep 27, 2023 · 1 comment
Open

Adding support for updating plugins too #15

mkandalaf opened this issue Sep 27, 2023 · 1 comment

Comments

@mkandalaf
Copy link

Hi! would you consider adding a functionality to apply the same concept you have for paper.jar but for plugins?
It's usually a pain to update plugins manually as well and I think it would be a great addition to the script.

Thanks for doing this!

@OwenCochell
Copy link
Owner

Hello!

You know, I was thinking of doing something like that, but also for mods as well as plugins. The idea was to have a CLI application that would allow you to add/remove plugins, download updates, solve dependency requirements, etc. The focus was to be on server administration, as end users have a billion other solutions to choose from. The core of this work was done in a library called cursepy, which provided entry points into curseforge, and would allow for the features listed above to be implemented.

cursepy does work, but the design is kinda complicated and difficult to maintain, as interacting with curseforge at the time I was writing the library was unreliable and complicated. The entry points I was using also had the risk of being deprecated at any time, so I wanted a solution that made it easy to add functionality without having to go through a huge rewrite. cursepy does not necessarily have to communicate with curseforge, it can talk with any service if configured correctly. The idea was to use cursepy as an interface for describing how minecraft plugins can be queried and retrieved, independent of the platform providing them. Thus, the details of each plugin provider could be abstracted away behind this standard interface.

Unfortunately, I have moved on to other projects. The biggest reason why I have stopped is the lack of good modding platforms. I really do not like curseforge, and it's parent company overwolf. I think they have poor products and I disagree with many business decisions they make. They also have very aggressive policies against API usage, making it very difficult to develop tools that can reliably interact with them. The Spigot plugin service does not have a reliable API, and the Bukkit plugin system is operated by curseforge. A platform that has a lot of promise is Modrinth, but unfortunately they do not have a very good selection of plugins/mods at this time. Maybe these issues have gotten better, it was 2021 when I last did my research, but at the time these were the issues. The lack of a suitable platform is the biggest reason why I have stopped working on this idea.

I would like to continue the idea at some point! If a good platform becomes available (hopefully Modrinth), and if a solution has not already been made that solves this problem, then I will be creating a tool that does what you are describing. This would not be apart of this project, and would instead be a standalone solution.

tl;dr: Maybe someday! But if so, it will be it's own thing, and will probably not be handled by this project.

Thanks!

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

No branches or pull requests

2 participants