22 Commits
Author SHA1 Message Date
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
Nemu-x 762a400915 feat(installer): add Russian language to Windows installer (#6643)
* feat(installer): add Russian language to Windows installer

* feat(installer): add Russian to WebView2 installer configs
2026-03-27 06:01:27 +00:00
Tunglies 7c738483b7 feat: add desktop-windows capabilities configuration and permissions
feat: add identifier, description, and windows properties to desktop-windows capabilities

fix: correct desktop-windows capability name in configuration
2025-06-05 19:34:23 +08:00
Tunglies 692deb6012 fix: windows unmatched tray 2025-03-12 13:55:11 +08:00
wonfen 23d1d210c7 refactor: Simplify tray icon event handling across platforms 2025-02-20 07:03:28 +08:00
wonfen c98330ea1f fix(tray): resolve blank icon issue on Windows and optimize creation logic 2025-02-12 13:56:33 +08:00
wonfen e230981ac4 refactor: Improve tray icon and event handling across platforms & unify click behavior 2025-02-11 14:48:31 +08:00
wonfen 4babcd9442 fix: deprecated CLI warnings 2025-02-11 01:05:51 +08:00
huzibaca b20a56f1de chore: update 2024-11-15 17:19:14 +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
huzibaca 86d2234713 feat: add windows uninstall script 2024-10-22 04:46:08 +08:00
huzibaca b5af06529f chore: complete field identifier 2024-10-11 14:33:11 +08:00
huzibaca 10cd0a1f30 chore: update 2024-09-17 08:28:13 +08:00
huzibaca 659f854f62 chore: update 2024-09-17 08:02:29 +08:00
huzibaca 6cc81fe6b8 chore: update 2024-09-02 19:33:17 +08:00
MystiPanda 41f80bcafd chore: Try a new icon 2024-05-12 19:31:06 +08:00
dongchengjie 11e0f49ada fix: minor glitches (#900)
* feat: show actual proxy name instead of proxy group when hovering on a group outbound

* fix: open empty edit form and save will cause `UID not found`

* chore: tauri.conf.json json schema

* chore: missing locales
2024-04-20 18:02:15 +08:00
MystiPanda 38ee8aedc1 fix: Fix Nisi Error 2024-02-02 15:53:28 +08:00
Lai Zn 31c34ea158 fix: Solve the confliction issues on auto updater failure (#273) 2024-01-20 13:03:48 +08:00
MystiPanda 01a9cda99a build: fix update issue 2023-12-10 22:24:46 +08:00
zclkkk bb239cba2a chore: Allow user to choose where to install (#110) 2023-12-10 09:50:43 +08:00
MystiPanda ffaa06560e feat: Support different tray icon for linux 2023-12-09 11:03:19 +08:00