this post was submitted on 24 Dec 2023
16 points (94.4% liked)
Arch Linux
7755 readers
2 users here now
The beloved lightweight distro
founded 4 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I don't think XDG is really useful here, I've honestly haven't met much use online of "discord:" protocol – I see more of regular "https:" links instead. As a dev around Discord clients, I know it rather uses a WebSocket server or maybe even Unix sockets as well for the 3rd party applications to communicate and share any info, including the invite code.
So what does that mean for trying to open links from browser in discord desktop app? Its a trivial thing, but it would be nice to have it.
Do you mean in the context of discord? Like you haven't encountered many sites using discord for links that lead to discord, or in general. Do most sites use https for their invite links?
Sorry if these are dumb questions.
Nah it's fine, for me these might occur dump for a reason I've been into development around the Discord for a while and actually partially reimplemented their WS/IPC handling a bit for my own use within Node.js (I mean it's FOSS so anyone could technically use it as well).
That, as long as Discord or any site running within the browser can connect to the local ports on your computer (I believe Discord should use ports within the range 6463-6472), via the WebSocket API in JS, the one could send an invite link request directly to the Discord or even for other stuff like RPC or page redirection – this works by Discord in the browser doing a check for any Discord client opened and just communicating with it directly if found via locally-executed JS. So there should be no XDG involved in the process and there's no need to configure Discord in order to handle links, at least if you open links like https://discord.gg/[code] in the browser.
I just haven't seen any of the use for their own protocol and honestly I couldn't find the docs either for that once I was dealing with the implementation of the URL handling. However, if you've noticed like some people or pages using that instead, I would love to be proven wrong – I guess I could consider then working on that within my own client if it is worth it to implement it and their protocol is not something like the legacy implementation.
So this is the link I found through my search engine. Accepting the invite then leads to the link I posted above.
Huh, on my Arch PC there's no even a request to accept the invite link within the browser, as long as I have any (mine, official) Discord client opened (i.e. browser does just redirect me to the opened client in order to proceed), with the closed client though there's a request to log in and with that I can accept the invite link within the browser. So again, no XDG or custom protocols are involved for me. So really I have no clue how you're doing this.
I should be saying that I use Firefox and X11 for testing, but I'm more than sure that whenever I would use Wayland or X11 it won't matter, webpage shouldn't have a way to detect this and behave differently. So I have no clue how to even trigger Discord to use their protocol over WS without setting up anything extra. I've been also using the
discord
package as of the client.Also from what I see with the
steam
, you can register the protocol with MIME and .desktop butdiscord
does configure neither of these. So it doesn't seem like this would be a thing anymore, but again I might be mistaken or maybe Arch packagers don't want from Discord to register their protocol, I dunno.While I agree it should be irrelevant, I am using bspwm and X11. Anyway, its such a minor issue that its unimportant. Thanks for all your input either way :)