Hear me out.
We fork Mumble server. We change the chat to be IRC. We use Obsidian IRC (web irc clone of discord) as the client. IRCv3 SASL EXTERNAL will let us auth the user using the same key identity mumble uses. Convert the Obsidian web to Tauri for cross platform desktop app.
That's it. Self-hosted Discord, now just improve the UI and invite people to rewrite in Rust and add storage backends for the chat history and nobody needs Discord ever again.
https://github.com/ObsidianIRC/ObsidianIRC
edit: ok we can't use Tauri because it won't work right on Linux, so we have to keep using Electron until some day we have a webview engine on Linux that has all required functionality (voice/video, good performance)