39 Commits
Author SHA1 Message Date
renovate[bot]renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>❤是纱雾酱哟~
1575f134e0 chore(deps): update cargo dependencies (#7961)
* chore(deps): update cargo dependencies

* build(deps): revert rfd from 0.17.2 to 0.16.0

- This also prevents Mend Renovate from auto rebase

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

* fix(nsis): include missing Nullsoft headers

- Transitive macro named `RestartManager_StartSession` cannot be found
  during NSIS installer generation
- The macro comes from "RestartManager" plugin and should be explicitly
  included in the `installer.nsi` file

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

---------

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
2026-10-03 17:09:08 +00:00
wonfen 04a2a09368 fix(linux): restore SELinux service startup with v2.7.2
Upgrade clash_verge_service_ipc and bundled service downloads to v2.7.2,
which labels runtime-installed executables before publication and repairs
existing core labels instead of timing out waiting for service IPC.

Register persistent bin_t rules for production and development service
binaries and cores in the RPM post-install script. Support older semanage
versions, apply rules to existing directories, and warn when optional
SELinux tools are unavailable.

Refs: #7965
2026-09-19 23:58:29 +08:00
wonfen 3253828bf0 feat/fix: service core staging (#7899)
* feat(service): hand upgraded cores to the service through the installer

The service now only executes administrator-staged core copies, so an
in-app core upgrade has to deliver the new bytes there before the
restart asks for them; otherwise a service-mode restart keeps running
the previous core while the UI reports the new version.

After publishing the downloaded core, service-mode upgrades invoke the
elevated service installer with --install-core <path> --sha256 <hex>.
The digest is computed over the published file and rides the elevated
command line, which no other local account can alter, so a file
swapped after hashing is refused rather than staged. Sidecar-mode
upgrades run the file directly and prompt for nothing.

Rollback distinguishes staging that never ran, was refused, or
succeeded: only a successful staging obliges the rollback to restore
the approved copy too (deliberately not gated on the running mode,
which reads NotRunning after the very crash being rolled back), and a
refused staging restores the file so a retry does not see the new
version on disk and conclude there is nothing to do.

Requires clash-verge-service-ipc >= 2.6.7. The pinned dependency and
the packaged service release must move together with this change, or
the old installer silently treats --install-core as a plain install.

* feat(installer): attest bundled cores to the service at install time

prebuild computes sha256 digests of the downloaded mihomo sidecars
into packages/windows/core-hashes.nsh (gitignored), included through
the NSIS installerHooks path. After unpacking and before starting the
service, the installer stages both cores into the service's approved
directory with those digests, so what gets attested is exactly what
this installer shipped: a core swapped on disk in a user-writable
install directory is refused, not published. Failure is logged and
does not abort the install; a later elevated service install can
stage the cores again.

* chore(deps): require clash-verge-service-ipc v2.6.8

v2.6.8 is the first service whose installer understands
--install-core --sha256; the staging this branch introduces is inert
against anything older, because the old installer treats the flag as a
plain service installation and reports success. The service release and
this pin therefore have to ship in the same app release.

* fix(service): heap-allocate the core hashing buffer

clippy::large_stack_arrays denies the 64 KiB stack array.
2026-09-09 18:25:25 +08:00
wonfen 19401b096d fix(core): clean up the displaced core after a failed upgrade restart
Windows publishes the core by moving the running binary aside, and only the
success path could delete it afterwards. A failed restart left it on disk,
and the uninstaller did not know about it either.
2026-08-21 19:32:15 +08:00
AnnAngelaandCopilot Autofix powered by AI df66d976a5 feat(updater): skip installer language prompt during auto-update (#7572)
* feat(updater): skip installer language prompt during auto-update

* fix: Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-07-26 02:02:02 +08:00
YuriiandYurii.Huang 8c7227a563 fix: deepin-os can't launch app with desktop file (#6555)
* fix: deepin-os can't launch app with desktop file

* fix: deepin-os move desktop to clash-verge.desktop

---------

Co-authored-by: Yurii.Huang <yurii.huang@dbappsecurity.com.cn>
2026-03-19 12:08:34 +00:00
Tunglies e41f910063 feat: add infoPlist configuration for macOS build 2025-11-14 17:30:27 +08:00
Slinetrac 51ba1d1e34 refactor(nsis): use tauri v2 installer template 2025-10-13 10:30:03 +08:00
Tunglies d531432f4a fix: improve Service connection method and permissions for Windows and Unix 2025-10-11 23:41:24 +08:00
Tunglies 4f1d61a56e Revert "fix: improve Service connection method and permissions for Windows and Unix"
This reverts commit 601e99f0b5.

Revert "refactor: clash-verge-rev-service-ipc (#4841)"

This reverts commit 5370bd45ed.
2025-10-11 21:21:23 +08:00
Tunglies 5370bd45ed refactor: clash-verge-rev-service-ipc (#4841)
* feat: update service installation scripts and IPC integration

- Updated `Cargo.toml` to use version 2.0.8 of `clash_verge_service_ipc` with "client" feature.
- Renamed service installation and uninstallation scripts in `post-install.sh` and `pre-remove.sh`.
- Removed `service_ipc` module and refactored IPC handling in `service.rs` to use the new `clash_verge_service_ipc` directly.
- Adjusted service version checking and core management to align with the new IPC structure.
- Simplified directory checks in `dirs.rs` and updated logging configurations in `init.rs`.
- Updated Linux configuration file to reflect new script names.
- Enhanced service installer hook to manage state more effectively.

* refactor: simplify ClashConfig instantiation and remove unused service log file function

* feat: update clash_verge_service_ipc to version 2.0.9 and enhance service initialization logging

* chore: update clash_verge_service_ipc to version 2.0.10 and refactor async service manager initialization

* fix: update clash_verge_service_ipc to version 2.0.11 and improve service manager initialization

* fix: increase sleep duration for socket readiness check to improve stability

* fix: update clash_verge_service_ipc to version 2.0.12 and kode-bridge to version 0.3.4; refactor service management and IPC path checks

* fix: update clash_verge_service_ipc to version 2.0.13; refactor service connection and initialization logic
2025-10-11 15:35:26 +08:00
Tunglies 776abaf56d fix: update service messages to use PRODUCTNAME variable for consistency 2025-08-05 20:09:35 +08:00
Dyna 9661c5fd82 fix: Windows installer parameter problem (#4213)
* repair and delete the startup item

* fix: parameter usage issues

* Update UPDATELOG.md

* Update UPDATELOG.md

* fix: install
2025-07-26 07:52:21 +08:00
Dyna 553438d219 fix windows installer (#3979)
* add loop detection Clash Verge Lnk

* add delete the window-state.json file .window-state.json file

* add cycle through the registry and delete useless registry entries

* add delete the specified registry path

* update logs
2025-07-04 12:28:15 +08:00
Tunglies c40c1960ed feat: add window-state management and recovery functionality (#3792)
* feat: add window-state management and recovery functionality

* fix: correct file name reference for window-state.json in uninstall section

* fix: remove unused tauri_plugin_window_state import
2025-06-18 02:21:00 +08:00
Tunglies 2b89f07fe5 refactor: remove old window state file deletion and add compatibility for legacy shortcuts 2025-05-25 22:39:28 +08:00
Shuqiao ZhangandTunglies 0621a17d17 feat: update Windows shortcut name (#2973)
* feat: update Windows shortcut name

* chore: UPDATELOG

---------

Co-authored-by: Tunglies <tunglies.dev@outlook.com>
2025-05-25 22:17:06 +08:00
Ahao 3926288b7f fixed an issue with .window-state.json files not being deleted via the NSIS installer (#3530) 2025-05-17 13:15:04 +08:00
Tunglies 4d56a5cd8c Revert "feat: add application name and icon to macOS entitlements plist"
This reverts commit 6fe7aabe14.
2025-05-17 01:42:11 +08:00
Tunglies d554679ee2 feat: remove system-in name plist 2025-05-17 01:21:08 +08:00
Tunglies 6fe7aabe14 feat: add application name and icon to macOS entitlements plist 2025-05-17 01:05:21 +08:00
Tunglies 5b47fe5b88 Revert "fix: update permission config with app icon and name"
This reverts commit 618ba52bca.
2025-03-20 14:17:41 +08:00
wonfen 618ba52bca fix: update permission config with app icon and name 2025-03-20 12:43:22 +08:00
wonfen c2b35fdaa5 test: remove entitlements.plist items 2025-03-07 06:49:24 +08:00
Tunglies 41c42bba32 fix: macos dock display icon and text (#2818) 2025-03-01 02:29:40 -08:00
huzibaca 0006012ae7 chore:add macos entitlements.list 2024-12-27 04:38:34 +08:00
huzibaca a3f46ec037 chore: update 2024-12-27 02:42:35 +08:00
huzibaca 0041ff13b8 chore: clean startup registry keys for older versions(2) 2024-11-28 06:40:44 +08:00
huzibaca 4693a25aa0 chore: clean startup registry keys for older versions 2024-11-28 05:34:56 +08:00
huzibaca 00d2c915d1 fix: Try to fix vcruntime duplicate installation 2024-11-25 06:33:47 +08:00
huzibaca 8564a58eab fix: If an older version of the executable exists, delete it(2) 2024-11-24 08:25:46 +08:00
huzibaca c2e165d825 fix: If an older version of the executable exists, delete it 2024-11-24 01:24:51 +08:00
huzibaca c16ae89a3d fix: windows arm64 vsruntime is not installed 2024-11-16 03:12:11 +08:00
huzibaca 01bde19701 chore: update 2024-11-06 13:52:36 +08:00
huzibaca 792f1826ee chore: update 2024-11-06 10:07:02 +08:00
huzibaca 590aa950df chore: update 2024-11-05 21:40:02 +08:00
huzibaca d5101ac2f3 chore: update 2024-11-05 18:38:50 +08:00
huzibaca 251942c91d chore: update 2024-11-05 18:30:28 +08:00
huzibaca d736dace50 chore: update (+1 squashed commit)
Squashed commits:
[78899ef] fix: bbr2 not working in windows 11(24H2)
2024-11-02 07:10:47 +08:00