th-ch / youtube-music

YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
https://th-ch.github.io/youtube-music/
MIT License
8.02k stars 478 forks source link

[Feature Request]: Allow third party plugins #2390

Open PedroZamecki opened 1 week ago

PedroZamecki commented 1 week ago

Preflight Checklist

Problem Description

I would like to download and run third party plugins.

Proposed Solution

Have a folder with the said plugins, with dynamic loading, something like 'datapacks' in minecraft.

Alternatives Considered

Have a different way to have those apps, something similar with what 'vencord' does with their plugins. I think this solution would be usefull for creating and aproving apps more easily.

Additional Information

No response

JellyBrick commented 1 week ago

We already allow third-party plugin same way as Vencord.

ArjixWasTaken commented 1 week ago

We do?

Darn

PedroZamecki commented 1 week ago

Well, I may have misunderstood how vencord manages its plugins, but the way I was thinking was more like: "what is the easiest way to create and use a plugin that I coded myself and making sure I have the latest build?" (That may imply not needing to build the app myself with the plugin hardcoded)

PedroZamecki commented 1 week ago

How can I do this? Is this possible now?

ArjixWasTaken commented 1 week ago

Ok, I haven't used a third party plugin on vencord, so I didn't know how they did it.

Looks like you need to use a developer build to have custom plugins.

Only difference with vencord is that, uhh, vencord supports a folder named userplugins which is not in the git history, so it won't have conflicts when vencord updates.

We don't support a secondary folder like that, plugins have to be part of the actual source code.

Which is not that bad, but it may be a pain someday.

ArjixWasTaken commented 1 week ago

So basically, you make a plugin like normal. No special instructions as it doesn't differ from the official plugins.

ArjixWasTaken commented 1 week ago

@JellyBrick maybe we should allow a separate folder for unofficial plugins.

That way there is a clear distinction between them.