On this page
Start an Ubuntu installation with the DEB matching your architecture
The complete Ubuntu sequence is: download the official DEB for your CPU architecture, install it with apt, import a subscription and verify the system proxy, then configure startup. Do not install the TUN service or enable automatic traffic capture at login while the system proxy is still unstable; a post-reboot network failure will be harder to undo.
As of 2026-07-23, the latest stable Clash Verge Rev v2.5.2 release provides amd64, arm64, and armhf DEB packages. Ubuntu and Debian users can install the DEB directly, leaving desktop menu integration, dependencies, and removal to the package manager. The current Latest release has no AppImage, so there is no need to search third-party sites for one.
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 |
After downloading, verify the architecture and package information first
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
Once the app starts, leave TUN alone. A simple Profile and the system proxy are enough to verify that the package, Mihomo core, and desktop proxy work together.
Minimal connectivity path
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 to find logs, Profiles, and terminal proxy settings
It is common on Linux for terminal commands to keep timing out while the browser works. The desktop system proxy and shell environment variables are separate settings. Diagnose them independently; do not immediately enable TUN just for apt or Git.
Linux paths listed in the official documentation
| Contents | Path |
|---|---|
| verge.yaml | ~/.config/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
# 结束测试
unset HTTP_PROXY HTTPS_PROXY NO_PROXYEnable startup only after the system proxy works reliably
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 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 -i '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.
Startup is truly working only after this login test passes. A tray icon alone is insufficient: if no Profile is selected or stale system proxy settings remain, the icon and actual network state may disagree.
Install the TUN service only if some programs genuinely ignore the proxy
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.
