Discord is not automatically updated

This is one of the latest “solution” to use to fix this Discord issue, as it doesn’t fix the issue, you still need to wait for the package to be created, last time it took two days, it already happened it took more.

The two best options are to use a local Discord client instead of installing it system wide (just extract Discord archive provided by Discord, where you want it, execute Discord, the end, forever, no need to wait for someone to package it for Arch, get the update instantly when it is available), or to use the config file trick (change the Discord version in one of its config file, to trick the Discord servers into thinking you are up to date).

To be honest I would instantly fast track without testing the Discord package as soon as it reaches Unstable branch, as the outdated client is of no use without user intervention anyway, so you risk pretty much nothing fast tracking it.

1 Like

Maybe this is due to how long I keep my system up without rebooting but I have never had an issue with updating to the Arch version.

I agree with you on that but was asking about what testing was needed in case that wasn’t an option.

I guess confirm everything is OK on Unstable branch with this package, it will probably be pushed to Testing branch, where it should be confirmed OK, then it will probably be pushed to Stable branch.

I got too sick of waiting for it to be updated today and just did it manually.
Opened Krusader in root mode, navigated to “/opt/discord/” in one side and my extracted “discord-0.0.20.tar.gz” on the other side. Copied the files from the tar to the opt. Shortcut said it couldn’t run so I had to go into properties on discord.desktop in the opt folder and make sure to check the executable box. Now it is able to open and run.
If this happens again I’ll probably just try out the flatpak.

Discord works fine without the update. I know it is annoying to wait for the new version, but it is more annoying form Discord devs to force “update or quit”.
You can simply bypass this by disabling the update check. Edit the following file:

~/.config/discord/settings.json

Add as last entry:

“SKIP_HOST_UPDATE”: true

Save it, and then Discord runs perfectly.

6 Likes

Thanks, This worked immediately and solved the issue :saluting_face:

Discord is an electron app and therefore independent from other packages. it seems discord also “forces” the user to have the latest version, otherwise it won’t work. You can always check the state of which version is on which branch to see if it is outdated via our packages service. I’ve pushed it now also to our stable branch. Else you can also update it via any mirror from the sync folder:

sudo pacman -U https://mirror.moson.org/manjaro/pool/sync/discord-0.0.20-1-x86_64.pkg.tar.zst

If a newer version of discord is available you will find it for sure in the sync folder. If it works and you have tested it on your branch you can request an update for that branch by pinging one of our Manjaro team members.

4 Likes

I have written a python script that can do that for me.

import os

try:
    import requests
except ImportError as E:
    print("Missing Library : "+E)
    os.system("pip install requests")


def download(url):
    get_response = requests.get(url, stream=True)
    file_name = "discord.tar.gz"
    with open(file_name, 'wb') as f:
        for chunk in get_response.iter_content(chunk_size=1024):
            if chunk:
                f.write(chunk)


def getDiscordDirPath():
    rzlt = []
    getDiscordPath = str(os.popen("ls -la $(which discord)").read())
    rzlt.append(getDiscordPath)
    for i in rzlt:
        getOnlyThePath = i.strip("\n").split("->")[1].strip().split("/")
        del getOnlyThePath[-1]
        return '/'.join(getOnlyThePath)+"/"


def downloadAndInstallUpdate(path):
    LinuxDiscordPath = "https://discord.com/api/download?platform=linux&format=tar.gz"
    download(LinuxDiscordPath)
    print("Download Is done.")
    print("Trying to Update discord...")
    print("Unziping All files..")
    os.popen("tar -xf {}".format("discord.tar.gz"))
    print("Extracted Done.")
    os.popen("sudo cp -r Discord/ {}".format(path))
    print("Discord Update Done...")


if __name__ == "__main__":
    downloadAndInstallUpdate(getDiscordDirPath())
    print("Finished.")

this script will do everything for u from downloading to install

Or you can download the archive from their website, extract it in a folder in your Home, and be done with it, just run Discord it will auto update itself this way.

1 Like