Install Clash Verge Rev on Linux with deb and rpm Packages
On this page
Clash Verge Rev runs just as comfortably on a Linux desktop as it does on Windows or macOS: the same open-source client, the same bundled mihomo core, packaged as a .deb for the Debian/Ubuntu family and an .rpm for the Fedora/RHEL family. Installation is a single package-manager command.
This guide covers picking the right package, installing it on both package families, the desktop-environment quirks worth knowing about, and the first-run flow from subscription import to a working system proxy.
deb or rpm: which package do you need?
The rule is short: Debian, Ubuntu, Linux Mint and their relatives use .deb; Fedora, RHEL, AlmaLinux, Rocky and their relatives use .rpm. This site provides Clash Verge Rev 2.5.2 as x86_64 builds of both in the download center's Linux section.
| Distribution family | Package | Install command |
|---|---|---|
| Debian, Ubuntu, Mint, Pop!_OS | .deb | sudo apt install ./file.deb |
| Fedora, RHEL, AlmaLinux, Rocky | .rpm | sudo dnf install ./file.rpm |
| openSUSE | .rpm | sudo zypper install ./file.rpm |
| Arch and derivatives | Neither | Look for a community package instead |
Note the architecture: these are x86_64 builds. On an arm64 Linux desktop or a single-board computer, neither package will install, and your options are a community build or the project's own releases.
Install the deb (Debian, Ubuntu and friends)
Let apt install the local file so dependencies are resolved automatically:
cd ~/Downloads
sudo apt install ./clash-verge-rev_2.5.2_amd64.deb
Use the actual name of the file you downloaded, and keep the ./ in front of it. Without that prefix, apt reads the argument as a package name to look up in your repositories and reports that it cannot find it — the single most common stumble in this whole procedure.
If you prefer the classic two-step with dpkg, follow it with a dependency fix-up:
sudo dpkg -i clash-verge-rev_2.5.2_amd64.deb
sudo apt -f install
Install the rpm (Fedora, RHEL and friends)
cd ~/Downloads
sudo dnf install ./clash-verge-rev-2.5.2.x86_64.rpm
Again, match the filename to your download. dnf pulls any missing dependencies from your configured repositories in the same transaction, which is exactly why it beats rpm -i here: the low-level tool installs the package but refuses to resolve what it depends on, leaving you to chase libraries by hand. openSUSE users can install the same file with sudo zypper install ./file.rpm.
Either way, the app registers a desktop entry, so it shows up in your application menu without further work.
Desktop environment notes
Clash Verge Rev draws its interface with WebKitGTK components. Mainstream desktops generally have them already; if the package manager reports missing libraries during installation, install the packages it names — the exact package names differ per distribution, and the error message is the authoritative source.
Tray icons are the other classic quirk: on some desktops, vanilla GNOME in particular, appindicator-style tray icons need an extension before they show up. If the app runs but you see no tray icon, that is usually why — the app itself is fine, and you can keep controlling it from its main window.
When clicking the menu entry appears to do nothing at all, launch the same binary from a terminal instead. A window that refuses to open silently from the desktop will happily print the reason — a missing library, a rendering problem — to standard error. If you are not sure what the executable is called on your system, list the package contents and look for the file under a bin directory:
dpkg -L clash-verge | grep bin/
# on Fedora/RHEL:
rpm -ql clash-verge | grep bin/
First run: subscription, system proxy and TUN
- Launch Clash Verge Rev from your application menu.
- Open Profiles, paste your subscription URL and import it — the per-client details are in the subscription import guide.
- Pick a node on the Proxies page after a latency test.
- Enable System Proxy. Most desktop apps and browsers follow it; note that how faithfully the setting propagates varies between desktop environments.
- For TUN mode — which captures traffic from programs that ignore the system proxy — follow the in-app prompts, as it needs elevated privileges granted once. If anything misbehaves along the way, the common errors guide covers the usual suspects.
Tip: keep the system proxy for everyday browsing and switch on TUN only when a specific program insists on ignoring it. Fewer privileges involved, and far less to unravel when something breaks.
The system proxy on Linux is less universal than on Windows or macOS. Desktop settings reach graphical applications, but terminal tools generally read the classic environment variables instead, so a shell session needs them set explicitly:
export http_proxy=http://127.0.0.1:7897
export https_proxy=$http_proxy
Substitute the mixed port your client actually uses — it is shown in the settings, commonly 7890 or 7897. This is also the quickest way to prove the core is working before you start blaming an application: if curl succeeds with those variables exported, the proxy is up and the problem lies in how the other program discovers it.
Note: running a graphical client makes sense on a desktop. For a headless box — a VPS or home server — skip the GUI entirely and run the core directly; see mihomo on a Linux server with systemd.
Uninstalling
Turn off the system proxy first, then remove the package:
sudo apt remove clash-verge
# or on Fedora/RHEL:
sudo dnf remove clash-verge
If the package name differs on your system, look it up with dpkg -l | grep -i clash or dnf list installed | grep -i clash and remove the name you find. Swapping remove for purge on Debian-family systems also drops the package's system-level configuration. Either way, the profiles and settings under your home directory are left behind — which is convenient for a reinstall, and something to clean up by hand if you want a genuinely blank slate.