# Installation Guide Welcome to Megu's Installation Guide! In this file, you will learn about how to download, install, and uninstall Vencord! ## Sections - [Dependencies](#dependencies) - [Installing Vencord](#installing-vencord) - [Updating Vencord](#updating-vencord) - [Uninstalling Vencord](#uninstalling-vencord) - [Manually Installing Vencord](#manually-installing-vencord) - [Manually Uninstalling Vencord](#manually-uninstalling-vencord) ## Dependencies - Install Git from https://git-scm.com/download - Install Node.JS LTS from here: https://nodejs.dev/en/ ## Installing Vencord > :exclamation: If this doesn't work, see [Manually Installing Vencord](#manually-installing-vencord) Install `pnpm`: > :exclamation: this may need to be run as admin depending on your system, and you may need to close and reopen your terminal. ```shell npm i -g pnpm ``` Clone Vencord: ```shell git clone https://github.com/Vendicated/Vencord cd Vencord ``` Install dependencies: ```shell pnpm install ``` Build Vencord: ```shell pnpm build ``` Inject vencord into your client: ```shell pnpm inject ``` Then fully close Discord from your taskbar or task manager, and restart it. Vencord should be injected - you can check this by looking for the Vencord section in Discord settings. ## Updating Vencord If you're using Discord already, go into the `Updater` tab in settings. Sometimes it may be neccessary to manually update if the GUI updater fails. To pull latest changes: ```shell git pull ``` If this fails, you likely need to reset your local changes to vencord to resolve merge errors: > :exclamation: This command will remove any local changes you've made to vencord. Make sure you back up if you made any code changes you don't want to lose! ```shell git reset --hard git pull ``` and then to build the changes: ```shell pnpm build ``` Then just refresh your client ## Uninstalling Vencord Simply run: ```shell pnpm uninject ``` The above command may ask you to also run: ```shell pnpm install pnpm uninject ``` ## Manually Installing Vencord - [Windows](#on-windows) - [Linux](#on-linux) - [MacOS](#on-macos) ### On Windows Press Win+R and enter: `%LocalAppData%` and hit enter. In this page, find the page (Discord, DiscordPTB, DiscordCanary, etc) that you want to patch. Now follow the instructions at [Manual Patching](#manual-patching) ### On Linux The Discord folder is usually in one of the following paths: - /usr/share - /usr/lib64 - /opt - /home/$USER/.local/share If you use flatpak, it will usually be in one of the following paths: - /var/lib/flatpak/app/com.discordapp.Discord/current/active/files - /home/$USER/.local/share/flatpak/app/com.discordapp.Discord/current/active/files You will need to give flatpak access to vencord with one of the following commands: > :exclamation: If not on stable, replace `com.discordapp.Discord` with your branch name, e.g., `com.discordapp.DiscordCanary` > :exclamation: Replace `/path/to/vencord/` with the path to your vencord folder (NOT the dist folder) If Discord flatpak install is in /home/: ```shell flatpak override --user com.discordapp.Discord --filesystem="/path/to/vencord/" ``` If Discord flatpak install not in /home/: ```shell sudo flatpak override com.discordapp.Discord --filesystem="/path/to/vencord" ``` Now follow the instructions at [Manual Patching](#manual-patching) ### On MacOS Open finder and go to your Applications folder. Right-Click on the Discord application you want to patch, and view contents. Go to the `Contents/Resources` folder. Now follow the instructions at [Manual Patching](#manual-patching) ### Manual Patching > :exclamation: If using Flatpak on linux, go to the folder that contains the `app.asar` file, and skip to where we create the `app` folder below. > :exclamation: On Linux/MacOS, there's a chance there won't be an `app-` folder, but there probably is a `resources` folder, so keep reading :) Inside there, look for the `app-` folders. If you have multiple, use the highest number. If that doesn't work, do it for the rest of the `app-` folders. Inside there, go to the `resources` folder. There should be a file called `app.asar`. If there isn't, look at a different `app-` folder instead. Make a new folder in `resources` called `app`. In here, we will make two files: `package.json` and `index.js` In `index.js`: > :exclamation: Replace the path in the first line with the path to `patcher.js` in your vencord dist folder. > On Windows, you can get this by shift-rightclicking the patcher.js file and selecting "copy as path" ```js require("C:/Users//path/to/vencord/dist/patcher.js"); require("../app.asar"); ``` And in `package.json`: ```json { "name": "discord", "main": "index.js" } ``` Finally, fully close & reopen your Discord client and check to see that `Vencord` appears in settings! ### Manually Uninstalling Vencord > :exclamation: Do not delete `app.asar` - Only delete the `app` folder we created. Use the instructions above to find the `app` folder, and delete it. Then Close & Reopen Discord. If you need more help, ask in the support channel in our [Discord Server](https://discord.gg/D9uwnFnqmd).