On this page
On Ubuntu, the DEB package must match your system architecture. Once the window opens, check that you can get online with the imported configuration. Browser access, command-line access and launching the app at login each have their own settings. Keep what you have already verified and investigate the failing step; a terminal timeout does not mean you need to reinstall.
Installing DEB on Ubuntu: how to choose amd64, arm64 or armhf
Use the table below to match your processor architecture to the Ubuntu DEB package; do not force-install a mismatched package. After installing Clash Verge Rev, test the system proxy and set up launch at login only once it works. Consider the TUN service only if an app needs a proxy but does not use the system proxy. Change one setting at a time, and undo the most recent change if a problem appears.
As of 2026-07-23, the latest stable Clash Verge Rev release, v2.5.2, provided DEB packages for amd64, arm64, and armhf. Ubuntu and Debian can install and remove this version through the package manager; its Release has no AppImage.
For newer versions, check the assets on the relevant release page rather than looking for missing formats on third-party sites.
Architecture mapping
| uname -m | DEB package |
|---|---|
| x86_64 | *_amd64.deb |
| aarch64 / arm64 | *_arm64.deb |
| armv7l | *_armhf.deb; first confirm that the system itself uses 32-bit ARM |
The architecture shown by uname and dpkg must match the DEB
DEB='./Clash.Verge_2.5.2_amd64.deb'
uname -m
dpkg --print-architecture
dpkg-deb -I "$DEB" | sed -n '1,25p'The version number is only a current example; use the filename from the Release you downloaded. dpkg-deb can read the package's Architecture and Depends fields. If they already do not match your system, do not force the installation with --force-architecture.
Install the local DEB with apt so dependencies are resolved at the same time
After confirming that the architectures match, let apt install the local file. Missing dependencies will then be reported by exact package name, and future removal remains within the same package-management system.
DEB='./Clash.Verge_2.5.2_amd64.deb'
sudo apt install "$DEB"
# 查看安装状态
dpkg -l | grep -i clash-verge
# 需要卸载时先记下上一步显示的真实包名
# sudo apt remove clash-vergeThe filename and package name in the command must match the results on your machine. If apt reports unsatisfied dependencies, save the complete error and Ubuntu version; do not download individual .so files from random sites to overwrite system libraries. After installation, launch the app once from the application menu. This reveals WebKit, tray, or core startup errors more clearly than enabling TUN immediately.
For the first test, verify only the Profile and system proxy
Import a configuration and check the system proxy
Import a remote subscription or local configuration
Clash Verge Rev 2.x supports URL, local-file, and drag-and-drop imports; update it manually first.
Set it as the current Profile
Confirm that the policy groups and nodes are not stale cache entries.
Pin one node
Keep Rule mode and enable the system proxy.
Open a browser and inspect connections
The desktop proxy is working only when the domain, rule, and outbound route all appear.
Where are Profiles stored, and how does the terminal use the proxy?
If the browser works but apt or Git times out, the terminal may not read the desktop system proxy. The shell is the environment that runs terminal commands and needs its own proxy variables. The settings below affect only the current terminal and can be undone afterward.
Default Linux paths; use the directory opened by the app
| Contents | Path |
|---|---|
| verge.yaml | ~/.local/share/io.github.clash-verge-rev.clash-verge-rev/verge.yaml |
| Working directory | ~/.local/share/io.github.clash-verge-rev.clash-verge-rev/ |
| Profiles | ~/.local/share/io.github.clash-verge-rev.clash-verge-rev/profiles/ |
| WebView cache | ~/.cache/io.github.clash-verge-rev.clash-verge-rev/ |
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
export NO_PROXY=localhost,127.0.0.1,::1
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"
export no_proxy="$NO_PROXY"
# 结束测试
# unset HTTP_PROXY HTTPS_PROXY NO_PROXY http_proxy https_proxy no_proxyAfter login autostart, do the Profile, proxy and exit recovery still work?
First enable “Launch at Startup” or Auto Launch on the Clash Verge Rev settings screen; the label may vary by version. This starts the app after the user signs in to the desktop. It does not provide a proxy before desktop login, nor guarantee that TUN will capture traffic without a permission prompt. If you need only the system proxy, keep TUN disabled.
find ~/.config/autostart /etc/xdg/autostart -maxdepth 1 -type f -iname '*clash*' -print 2>/dev/null
grep -R '^Exec=' /usr/share/applications 2>/dev/null | grep -Ei 'clash.verge|clash-verge'Verify startup once for real
Sign out of the desktop, then sign back in
Confirm that only one Clash Verge Rev process appears and that no old client starts alongside it.
Inspect the current Profile and node
After the app starts, still confirm that the subscription is selected and that the running configuration is the one you just verified.
Check the system proxy
If it is configured to turn on automatically, the browser should create connection records. Leave the toggle off if you do not want automatic traffic capture.
Test network restoration on exit
After quitting normally from the application menu, Ubuntu's HTTP, HTTPS, and SOCKS proxy settings should no longer point to a local port.
Where should you look if TUN will not start, the tray icon is missing, or the window crashes?
TUN requires service and virtual-adapter permissions. Stabilize the system proxy first, then install the service from the current version's settings screen. Service scripts and installation directories in older tutorials may have changed. If you encounter permission or IPC errors, check the current Release and official FAQ before running commands left by another version.
A missing tray icon commonly means the desktop environment lacks AppIndicator support; if the window crashes immediately, launch the app from a terminal and read stderr. Neither issue reflects subscription node quality.
No window appears after double-clicking
Launch it from a terminal, preserve WebKit or graphics-library errors, and inspect the current desktop session.
The browser works, but apt/Git does not
Set environment variables or tool-specific configuration for the command; do not enable TUN first.
The TUN toggle immediately switches back off
Inspect service installation and permissions; do not repeatedly change DNS or nodes.
The browser loses connectivity after exit
Disable the residual proxy in desktop network settings, then check whether the app was force-quit.
