https://github.com/diced/dvm
discord version manager for linux
https://github.com/diced/dvm
Last synced: about 2 months ago
JSON representation
discord version manager for linux
- Host: GitHub
- URL: https://github.com/diced/dvm
- Owner: diced
- License: gpl-3.0
- Created: 2021-05-22T21:29:21.000Z (about 5 years ago)
- Default Branch: trunk
- Last Pushed: 2023-12-10T04:43:11.000Z (over 2 years ago)
- Last Synced: 2026-04-27T11:33:57.329Z (about 2 months ago)
- Language: Rust
- Homepage:
- Size: 127 KB
- Stars: 60
- Watchers: 1
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dvm (Discord Version Manager)
Allowing you to manage all of your discord versions. This was made as I was impatient to waiting for AUR maintainers (no offense 😂 we have lives) to update discord packages. This solves that problem: since you can update your version by just doing `dvm update `. This utility is heavily inspired by the [`rustup` command line tool](https://rustup.rs)
# Installing
Grab the latest release, and extract the tar ball.
### Compiling from Source
If you prefer compiling from source you can do the following
#### Prequisites
* Rust Nightly ([rustup](https://rustup.rs) or your distro might provide a `rustup` package, then `rustup install nightly`)
```sh
git clone https://github.com/diced/dvm
cd dvm
cargo +nightly build # make sure you have rust nightly installed like stated above
```
### Using prebuilt binary
If you don't want to bother compiling from source then you may use the precompiled binary that I provide on the [releases page](https://github.com/diced/dvm/releases)
*Note: The precompiled binary is not a statically compiled binary, so if it happens to error, run `ldd dvm-x86_64-unknown-linux-gnu` and it will show the libraries it needs, then install them.*
```sh
wget https://github.com/diced/dvm/releases/download//dvm
chmod +x dvm
./dvm # you can move it into /usr/bin or move it into somewhere then add it to $PATH
```
# Usage
```
discord version manager for linux
Usage: dvm
Commands:
install Install the latest of discord
install-open-asar Install openasar for of discord
update Update to the latest of discord
remove Remove the installed of discord
list Show all installed versions
completions Get shell completions
run Run discord with specific options
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
-V, --version Print version
```
# Installing Discord
To install a specific version just type in
```sh
dvm install stable
```
This will do the following:
1. Download the latest stable tarball from discord
2. Extract it into $HOME/.dvm
3. Create a bin file that executes the executable
4. Copy desktop and icons to their folders
## Install Open Asar
If you forget to add the flag `-o` when installing discord, you can install open asar by doing
```sh
dvm install-open-asar stable
```
...or do it when installing discord
```sh
dvm install stable -o
```
## Installing multiple versions at once
You can install multiple versions at once, they will be executed one after the other.
```sh
dvm install stable ptb canary development
```
# Removing
Removing installations is as easy as installing them
```sh
dvm remove stable
```
This will do the following:
1. Remove the $HOME/.dvm/
2. Remove desktop entries and icons
3. Remove the bin file
# Update
Updating installations is as easy as installing them
```sh
dvm update stable
```
This will do the following:
1. Check if discord actually needs to be updated
2. Download the latest tarball
3. Remove the $HOME/.dvm/
4. Do everything the installation does.
# Show
This will show all installations that are currently installed, the `--verbose, -v` flag will show the path it's installed to, and the `--check, -c` flag will check if your installations are up-to-date (red = outdated, green = up to date)
```sh
dvm list
dvm list -v
dvm list -c
dvm list -vc
```
```sh
# no flag
canary:0.0.133
development:0.0.198
stable:0.0.17
# -v
canary:0.0.133 -> /home/diced/.dvm/DiscordCanary
development:0.0.198 -> /home/diced/.dvm/DiscordDevelopment
stable:0.0.17 -> /home/diced/.dvm/Discord
```
# Run
You can run discord via command line with extra flags
```sh
dvm run canary
# for example
dvm run canary --idk-some-chromium-flag-or-something
```
# Completions
Get shell completions for your shell of choice
```sh
dvm completions zsh
```
# Maintaining
I don't really focus on this anymore, but I'll try my best lol. If you want to reach out to help feel free to send a message request or friend request on discord (`@dicedtomato`), or contact through github issues, etc.