libnyanpasu / clash-nyanpasu

Clash Nyanpasu~(∠・ω< )⌒☆​
https://nyanpasu.elaina.moe
GNU General Public License v3.0
9.56k stars 599 forks source link

[Feature] UI 内嵌内核和资源文件的更新支持 #49

Closed greenhat616 closed 4 months ago

greenhat616 commented 11 months ago

P.S 有听说 Tauri 会覆盖一些文件,在启动的时候,不知道是否包括资源、sidecar,如果包含的话,那我们可能还得想想其他变通方案。

keiko233 commented 11 months ago

这个想法非常不错,可能需要先验证可行性。用户想要对资源进行更新都是手动替换,如果内嵌更新理论上就会带来更好的体验。 并且大多数情况下我们都只用到一个内核,因此还可以做到默认只带一个内核,其余内核作为手动下载选项,减少默认下安装包体积。 我觉得这个提议非常好,欢迎实现。😆

Kuingsmile commented 11 months ago

关于geo file的自动更新 我给meta(mihomo)已经提了pr(https://github.com/MetaCubeX/mihomo/pull/857) 并被merge,通过选项geo-auto-updategeo-update-interval进行控制,同时geox-url可以控制自定义的下载链接。是否可以考虑复用内核的相关功能

greenhat616 commented 11 months ago

关于geo file的自动更新 我给meta(mihomo)已经提了pr(MetaCubeX/mihomo#857) 并被merge,通过选项geo-auto-updategeo-update-interval进行控制,同时geox-url可以控制自定义的下载链接。是否可以考虑复用内核的相关功能

可以的,但是目前 rs 和 premium 内核还未提供此参数,所以 GUI 先期维护一个计划任务还是必要的。可以给 meta 专门做一个 flag。

greenhat616 commented 11 months ago

https://github.com/tauri-apps/tauri/discussions/8368#discussioncomment-7824650

官方表示 Sidecar 和 resources 除了 NSIS 是不能 override 的😨 所以如果使用自动更新的话,或许在加载的时候不能直接使用 sidecar 了?

keiko233 commented 11 months ago

tauri-apps/tauri#8368 (reply in thread)

官方表示 Sidecar 和 resources 除了 NSIS 是不能 override 的😨 所以如果使用自动更新的话,或许在加载的时候不能直接使用 sidecar 了?

影响似乎有点大,按我的分析来目前有两个选择

  1. 内嵌更新clash rs受益较多,此外的影响不是很大,可以考虑弃案;
  2. 目前塞二进制sidecar以外的选择貌似都不太行,自己造轮子可能工作量太大;

当然这都是我个人的看法,仅供参考😂