Vendicated / Vencord

The cutest Discord client mod
https://vencord.dev
GNU General Public License v3.0
8.77k stars 1.24k forks source link

[Feature Request] Scriptable Settings Import #764

Closed ToasterUwU closed 1 year ago

ToasterUwU commented 1 year ago

Discord Account

Aki ToasterUwU#0001

What is it that you'd like to see?

So I'm using Armcord on Linux; it's a Client with Vencord out of the box. And the way I have my whole stuff set up is that I have a script I can run on a freshly installed instance of PikaOS, and everything I need and want, gets installed and configured automatically.

The only thing keeping me away from the full automatic setup is that I cannot (as far as I know) import the Vencord Settings in any other way than manually opening the settings, manually clicking the button, manually selecting the file, and manually confirming.

I want to get a scriptable way of importing settings. Here are a few ideas for how:

I think the second one is the sanest and easy to do. It would be fantastic if this would be possible.

Request Agreement

lewisakura commented 1 year ago

This seems like a very niche use case. Would #505 also work? It's not scriptable but it would be a two button import process.

Vendicated commented 1 year ago

cloud settings sync soon

ToasterUwU commented 1 year ago

This seems like a very niche use case. Would #505 also work? It's not scriptable but it would be a two button import process.

I agree its niche, but i think all programs should always have a way to do settings stuff in a scriptable way. Its just important in my eyes.

And no, it would not really solve my problem. I mean, cloud settings are a nice idea, but it will still require me to remember to do the manual stuff, just would cut the manual clicks in half.

lewisakura commented 1 year ago

cloud settings sync soon

Cloud settings sync NOW!!

And no, it would not really solve my problem. I mean, cloud settings are a nice idea, but it will still require me to remember to do the manual stuff, just would cut the manual clicks in half.

Maintaining a separate tool to do it for you or adding switches to Discord has a high effort for not a lot of reward. Regardless though, you could script it with jq to read the different parts of the export file and write it to the correct places.

Vendicated commented 1 year ago

btw u can just cp settings.json ~/.config/Vencord/settings/settings.js or even symlink it

ToasterUwU commented 1 year ago

btw u can just cp settings.json ~/.config/Vencord/settings/settings.js or even symlink it

Does this do what i want it to do? Meaning taking the whole settings from my file and using them for Vencord? If so, thats exactly what i wanted, and i just didnt know this works.

lewisakura commented 1 year ago

You'd have to use the actual settings.json and quickcss.css files rather than the export, but it would work for your use case.

ToasterUwU commented 1 year ago

btw u can just cp settings.json ~/.config/Vencord/settings/settings.js or even symlink it

Are you sure thats the right path? At least with Armcord there is no such directory.. Could be just a armcord thing tho

Vendicated commented 1 year ago

ah! With ArmCord, settings are actually in localStorage so this is sadly not possible

ToasterUwU commented 1 year ago

ah! With ArmCord, settings are actually in localStorage so this is sadly not possible

Explains why i couldnt find it anywhere. Thats sad... Actually thinking about it, are there any other ways to get Vencord than using ArmCord or installing it manually? Meaning are there other Clients that come with Vencord out of the box? At least i have never seen any.

But thanks for the clarification, i guess i will have to settle for manual setup and later cloud sync.

Vendicated commented 1 year ago

Meaning are there other Clients that come with Vencord out of the box? At least i have never seen any.

No for now! But I'm currently working on our own standalone Desktop app (https://github.com/Vencord/Electron) and it might be usable soon

ToasterUwU commented 1 year ago

@Vendicated So any hope for the "Import file name x, in folder y" option of auto importing?

I dont know how complicated this would be, since this is after all a mod for a close source program, not a fully autonomous program, but i would love to have either a terminal command for importing or a file location to put it for auto import. Without it installing vencord properly and fully in an automated way will be impossible.

I know its niche, i know its a thing that like maybe a 100 people care about even remotly. But it would allow me and others like me to use vencord without extra hassles. It would also make it possible to use it on like a giant lan party for example. Somewhere where hundreds of PCs need to be setup, which requires automation. I know thats a even more niche thing than a user like me, but it would be awesome if it would be possible.

If there is no chance for this existing, just let me know, and close the issue.

Vendicated commented 1 year ago

Like I said, this is not possible with ArmCord unfortunately because its settings are inside the LocalStorage and Vencord has no system access in ArmCord, so if you want this for ArmCord you'd need to bug the ArmCord devs. For the same reason it's also not possible in the Browser version

However, if you're using Discord Desktop you can simply symlink / copy your settings from one place to another as mentioned above and it should just work

Aand like I said we're also working on our own Desktop App (almost done!! Expect it the following few days/weeks) similar to ArmCord which will give us full control so this will also be possible with our Desktop App. If you join our Discord you can see the progress or even test it early if you're interested in that

Vendicated commented 1 year ago

I just made an initial release if you're interested, you can grab it over at https://github.com/Vencord/Desktop/releases . It reads its settings from ~/.config/vencorddesktop/VencordDesktop/settings/settings.json

It works but isn't very polished yet! Will work on it further in the coming few days

ToasterUwU commented 1 year ago

I just made an initial release if you're interested, you can grab it over at https://github.com/Vencord/Desktop/releases . It reads its settings from ~/.config/vencorddesktop/VencordDesktop/settings/settings.json

It works but isn't very polished yet! Will work on it further in the coming few days

Thanks, i will keep an eye on it. If this ever becomes a finished thing, i will most likely switch to it from Armcord, since the only reason i use armcord is the focus on Linux support and Vencord out of the box.

And since you care about linux, i assume you will make sure it will work really well on Linux, if not even fix some issues that stock Discord has.