VirtualHotBar
22fe270adb
fix: 安全审查修复 - 路径验证、密码编码、Zip Slip防护
2026-06-02 21:07:36 +08:00
VirtualHotBar
ac9a8018a2
fix: 修复编译错误 - JSON引号问题、Rust类型错误、api.ts重命名
2026-06-02 20:20:44 +08:00
VirtualHotBar
92fab410d5
fix: 代码审查修复 - 代理密码编码、类型一致性、主机名验证
2026-06-02 19:02:03 +08:00
VirtualHotBar
79a2b4fde5
feat: add Windows Task Scheduler autostart and --service mode
...
Addresses #49 and #61 :
- Add Task Scheduler based autostart for higher startup priority on Windows
- Uses schtasks.exe to create 'At log on' scheduled task
- Runs earlier than registry HKCU\Run entries
- Solves timing issues with other autostart apps (e.g., KeePassXC)
- Add --service CLI flag for headless/service mode
- Starts without showing the UI window
- Lower resource usage for background operation
- Can be combined with Task Scheduler for service-like experience
- Update settings UI with autostart mode selector
- Disabled / Standard (Registry) / High Priority (Task Scheduler)
- Task Scheduler option only shown on Windows
- Add locale translations for new UI strings (zh-cn, en, zh-hant)
2026-06-02 07:50:01 +08:00
VirtualHotBar
39b9cef253
feat: #30 支持Windows便携式版本
2026-06-02 07:38:46 +08:00
VirtualHotBar
d813e9bd89
feat: #10 支持导入alist配置
...
- 新增 AlistImportService 解析 alist/OpenList 存储配置 JSON
- 支持直接数组格式和 API 响应格式的配置文件
- 通过 OpenList API 逐一创建存储并显示进度
- 在设置页面的数据管理区域添加导入按钮
- 添加中文简体、中文繁体、英文三种语言的翻译
2026-06-02 07:35:03 +08:00
VirtualHotBar
ebe0cc2a6c
feat: #68 添加日志目录和传输目录设置
2026-06-02 03:14:05 +08:00
VirtualHotBar
0bab6d6446
feat: #88 实现空闲超时锁定和休眠锁定功能
2026-06-02 03:10:43 +08:00
VirtualHotBar
fd2129bcc4
feat: #132 #131 #130 #129 #128 改进多个Issue的用户体验
...
- #132 NFS支持:改进NFS提示信息,添加详细的挂载命令指引
- #131 S3重命名:改进S3目录重命名错误处理,提供更清晰的错误提示
- #130 WebDAV建议:添加WebDAV路径挂载提示,指导用户精确挂载
- #129 Mac FUSE-T:添加macOS fuse-t安全提示,指导用户解决内核扩展加载问题
- #128 百度网盘:改进Token错误检测和提示,帮助用户正确配置refresh_token
2026-06-02 03:08:19 +08:00
VirtualHotBar
f1465f36e4
feat: #89 添加 Vercel Blob 存储的 i18n 翻译和排序权重
2026-06-02 03:06:25 +08:00
VirtualHotBar
52cb5feb94
fix : #94 不能显示主窗口 - WebView2缺失时显示原生错误提示
...
- 当窗口不存在时(WebView2未安装),显示原生错误对话框
- 提示用户安装Edge浏览器或WebView2运行时
- 使用PowerShell原生消息框,不依赖WebView2
2026-06-02 03:02:49 +08:00
VirtualHotBar
0f5f92d447
fix : #38 修改Windows用户名后应用启动失败
...
Rust端:将配置目录创建的expect改为match错误处理,失败时尝试使用临时目录作为后备方案。
TypeScript端:增强validateAndFixPaths()函数,添加挂载路径中旧用户名的检测逻辑。
2026-06-02 02:24:52 +08:00
VirtualHotBar
801099e786
fix : #51 自动分配盘符与现有盘符冲突
...
修复 Rust 端 find_first_available_drive_letter() 函数中位掩码与盘符映射错误:
- 原代码遍历 A-Z 但用 idx=25-i 反转检查位,导致返回的盘符与实际检查的位不匹配
- 修复为正确的遍历方式:从 i=25(Z) 到 i=0(A),确保盘符与位索引一致
同时在前端添加自动分配盘符后的重复检查:
- 检查获取的可用盘符是否为空
- 检查获取的盘符是否已被其他挂载占用
2026-06-02 02:22:20 +08:00
VirtualHotBar
c693806d2b
fix : #76 添加阿里云盘根目录配置提示
...
- 在阿里云盘描述中添加根目录ID配置提示
- 提醒用户正确设置根目录ID以显示所有文件夹
2026-06-02 02:20:25 +08:00
VirtualHotBar
69f7e0b281
feat: implement multiple feature requests and bug fixes
...
Implemented features and fixes for the following issues:
- #74 : Add rename storage feature with modal UI
- #109 : Add temp file cleanup on startup with clear cache button
- #103 : Optimize mount defaults for better performance (ReadAhead, DirCacheTime)
- #99/#86: Fix bidirectional sync with resync support for first run
- #131 : Improve S3 rename error handling with better error messages
- #128 : Add token expiration detection for Baidu cloud storage
- #129 : Improve Mac FUSE-T mount error handling with detailed guidance
- #63 : Add network share tip for Windows users
- #132 : Add NFS support guidance (not directly supported, use Local storage)
- #88 : Add startup password protection feature with lock on sleep option
- #72 : Add password security improvements (hash storage)
- #67 : Verify startHide feature already implemented correctly
New files:
- src/components/PasswordGuard.tsx: Startup password protection component
- src/utils/tempCleanup.ts: Temp file cleanup utility
Modified files:
- src-tauri/locales/en.json, zh-cn.json: Added i18n keys for new features
- src/app.tsx: Added PasswordGuard wrapper
- src/controller/mainInit.ts: Added temp cleanup on startup
- src/page/storage/storage.tsx: Added rename button and modal
- src/page/setting/components/GeneralSettings.tsx: Added password settings
- src/page/setting/components/AdvancedSettings.tsx: Added clear cache button
- src/page/storage/add.tsx: Added NFS support guidance
- src/page/mount/mount.tsx: Added network share tip
- src/repositories/mount/mountHelpers.ts: Improved mount error handling
- src/services/storage/TransferService.ts: Added resync support for bisync
- src/services/storage/StorageManager.ts: Added renameStorage and token detection
- src/type/config.d.ts: Added security settings to NMConfig
- src/controller/storage/mount/parameters/defaults.ts: Optimized mount defaults
- src/controller/task/runner.ts: Added resync parameter for bisync tasks
2026-06-02 01:32:54 +08:00
VirtualHotBar
9d96e6ec6b
fix : #74 添加存储重命名功能和 token 错误提示
...
- 添加 renameStorage 函数支持存储重命名
- 在存储列表中添加重命名按钮和对话框
- token 错误时显示特殊提示(如百度网盘 refresh token 过期)
- 添加相关国际化文本
2026-06-02 00:34:02 +08:00
VirtualHotBar
149982c9be
fix : #51 自动分配盘符使用 GetLogicalDrives 检测已用盘符
...
- 使用 Windows API GetLogicalDrives 获取所有已使用的盘符位掩码
- 正确检测网络驱动器、CD-ROM 等所有类型的驱动器
- 修复原来 fs::metadata 无法检测网络映射驱动器的问题
2026-06-02 00:22:46 +08:00
VirtualHotBar
55ffcbb4c1
fix(i18n): replace hardcoded Chinese messages with i18n keys and extract AppError
2026-05-03 22:42:22 +08:00
VirtualHotBar
a8569b9ebb
fix(security): address code review security vulnerabilities and type errors
...
Security fixes (P0):
- BaseRepository.ts: add sanitizeArgs() to filter sensitive fields
- LoggerService.ts: disable console output in production
- ErrorService.ts: toJSON() only includes stack in dev mode
Backend security (P1):
- fs.rs: add path validation for file operations
- fs.rs: add Zip Slip protection in import_config
Compatibility: vitest downgrade, tsconfig node types
Test fixes: module paths, undefined access, unused imports
2026-04-21 19:01:26 +08:00
VirtualHotBar
bab06c82d1
fix(openlist): 修复 openlist 闪退问题
...
问题原因:
openlist 使用相对路径(如 data/data.db)访问数据库文件,这些路径
相对于工作目录解析。之前工作目录设置为 ~/.netmount,但 openlist
数据在 ~/.netmount/openlist,导致找不到数据库文件而闪退。
解决方案:
1. spawn_sidecar 和 run_sidecar_once 函数添加 cwd 参数
2. 前端启动 openlist 时传入数据目录作为工作目录
3. setOpenlistPass CLI 命令也使用正确的数据目录
修改文件:
- src-tauri/src/lib.rs: 添加 cwd 参数支持
- src/utils/sidecar.ts: 更新函数签名
- src/utils/sidecarService.ts: 传递 cwd 参数
- src/utils/openlist/process.ts: 传入数据目录
- src/utils/openlist/openlist.ts: 传入数据目录
2026-03-26 14:03:28 +08:00
VirtualHotBar
8d2ceef9b9
feat(tray): 添加托盘菜单'重启程序'选项
...
- 在右键托盘菜单中添加'重启程序'菜单项
- 支持多语言:简体中文、繁体中文、英文
- 点击后调用 Tauri 的 restart() 方法一键重启软件
2026-03-26 12:21:59 +08:00
VirtualHotBar
9cd16ec04a
fix: apply path fixes BEFORE copying config to data_dir
...
The previous fix was applied after copying, so the fixed file was overwritten.
Now fix_openlist_config_paths() is called on temp_dir BEFORE copying to data_dir.
2026-03-26 12:19:17 +08:00
VirtualHotBar
468940265a
fix: rclone密码混淆问题修复
...
- 编辑rclone存储时,过滤未修改的密码字段,避免用混淆值覆盖原密码
- 为密码字段添加提示信息,说明rclone会混淆密码
- 区分rclone和openlist存储,openlist不混淆密码
- 添加多语言翻译支持
Fixes #126
2026-03-26 12:14:59 +08:00
VirtualHotBar
ca914fd83a
fix: correct openlist config path fix to target data_dir instead of temp_dir
...
The fix_openlist_config_paths() was being called on the temp copy,
which was then deleted before being copied to the actual data directory.
Now it correctly targets the file after it's been copied to data_dir.
2026-03-26 12:12:52 +08:00
VirtualHotBar
7a6a015b66
fix: 修复跨设备配置导入时因绝对路径导致的卡死问题 ( #127 )
...
- 修改 openlist.ts: 配置保存时使用相对路径而非绝对路径
- 修改 fs.rs: 导入配置时自动检测并修复旧版绝对路径
修复了 Issue #127 : 导入不同电脑的配置后软件卡死在启动界面
原因: OpenList 配置文件中存储了包含用户名和盘符的绝对路径
解决: 1) 新配置使用相对路径存储 2) 导入旧配置时自动转换绝对路径为相对路径
2026-03-26 12:00:00 +08:00
VirtualHotBar
bd3d8f647c
fix: expand fs:scope to allow broader filesystem access for mount operations
...
Added \/**, \/** and ** to fs:scope to ensure mount operations
on Linux/macOS can access paths outside home directory (e.g., /mnt, /media).
2026-03-26 11:54:26 +08:00
VirtualHotBar
42d5b1e56c
fix: remove invalid permission identifiers and expand fs:scope for user directories
...
- Removed fs_exist_dir and fs_make_dir from capabilities as these are
custom commands, not ACL permissions
- Expanded fs:scope to include common user directories (C:\Users\vhbs, ,
System.Collections.Hashtable, , , , )
2026-03-26 11:45:22 +08:00
VirtualHotBar
4fb00acb6f
fix: use hyphenated permission identifiers for Tauri v2 ACL
...
Tauri v2 ACL identifiers only allow lowercase ASCII letters,
hyphens, and optional prefix with colon. Changed:
- fs_exist_dir -> fs-exist-dir
- fs_make_dir -> fs-make-dir
2026-03-26 11:37:01 +08:00
VirtualHotBar
1c1a2521ce
fix: AppImage 运行失败问题
...
- 检测 APPIMAGE 环境变量,识别 AppImage 运行环境
- AppImage 模式下跳过目录切换,避免 No such file or directory 错误
- 普通 Linux 环境增加目录存在性检查,防止 panic
Fixes #1
2026-03-26 11:28:23 +08:00
VirtualHotBar
5414c7b850
feat(config): add fs exist and make dir capabilities
2026-03-25 01:33:07 +08:00
VirtualHotBar
46298c85e6
style: 统一代码格式和修复代码风格问题
...
- 统一缩进为2个空格
- 移除多余的空行和尾随空格
- 统一字符串引号为单引号
- 统一对象和数组的尾随逗号
- 修复接口和类型定义格式
- 添加.gitattributes文件规范行尾
- 优化代码结构提高可读性
2026-03-14 17:07:02 +08:00
VirtualHotBar
bdef2cdbf8
fix: 修复代码格式,优化可读性
2026-03-04 23:54:39 +08:00
VirtualHotBar
414fa416b4
refactor: 移除编译时操作系统类型常量,优化代码结构
2026-03-04 23:42:35 +08:00
VirtualHotBar
16ce2cbfd1
fix: 更新 WinFsp 下载链接至版本 2.1.25156
2026-03-04 23:33:52 +08:00
VirtualHotBar
ce2539fbc8
chore: 更新版本号至1.2.3
2026-03-04 23:25:58 +08:00
VirtualHotBar
d3b24e2692
feat: 添加高级设置和额外启动参数功能,优化配置管理
2026-03-04 23:24:50 +08:00
VirtualHotBar
1923fe9acb
feat: 更新配置导入导出描述,优化设置页面的导入导出功能
2026-03-04 23:02:43 +08:00
VirtualHotBar
90e4f7f750
fix(locales): 优化中文翻译,调整提示信息以提高可读性
2026-03-04 22:44:22 +08:00
VirtualHotBar
5881c33a69
feat: 添加启动任务失败处理和存储同步状态提示,优化配置导入流程
2026-03-04 22:42:37 +08:00
VirtualHotBar
2988382b35
feat(config): 添加配置导入导出功能
...
- 在设置页面添加数据管理卡片,支持导出配置为ZIP文件和从ZIP导入配置
- 实现后端导出导入逻辑,包括文件验证、临时目录处理和错误处理
- 添加多语言支持,完善相关UI交互和状态提示
- 修复存储添加页面重复提交问题,添加提交中状态
- 修正版本标记文件路径错误
2026-03-04 21:51:04 +08:00
VirtualHotBar
01761f8cbd
fix: 更新版本号至 1.2.2,并优化下载跳过逻辑
2026-03-04 00:29:30 +08:00
VirtualHotBar
dc69b94459
feat(mount): implement issue #102 mount strategy improvements
2026-03-03 23:17:29 +08:00
VirtualHotBar
393191f921
feat: 更新 README,添加依赖框架说明;修改 migrated.json 中 aria2c 命令路径;新增 openWinFspInstaller 函数以支持安装程序的打开
2026-03-03 20:58:14 +08:00
VirtualHotBar
8f4a95de1d
feat: 更新存储信息过滤和参数设置,增强存储管理功能
2026-02-19 15:42:14 +08:00
VirtualHotBar
907837114b
feat: 添加 Tauri 签名私钥密码支持,并更新公钥
2026-02-18 22:03:21 +08:00
VirtualHotBar
3069e8c464
feat: 修复私钥问题
2026-02-18 21:28:57 +08:00
VirtualHotBar
19d1369e2a
chore: 更新 netmount 版本至 1.2.1
2026-02-18 20:38:23 +08:00
VirtualHotBar
4186172a6f
feat(locales): 在中国本地化环境中添加新的存储选项和描述
...
- Added translations for various storage options in `zh-cn.json` and `zh-hant.json`, including Alist v3, AutoIndex, MediaFire, and more.
- Included detailed descriptions for each new storage option to enhance user understanding.
fix(locales): correct minor formatting issues in Chinese locales
- Fixed spacing inconsistencies in `zh-hant.json` for better readability.
feat(sidecar): implement runSidecarOnce command
- Introduced a new command `run_sidecar_once` to execute sidecar binaries with arguments and capture their output.
- Added logging functionality to track execution results and errors.
fix(storage): update unneeded storages filter
- Changed the filter for unneeded storages from 'WebDAV' to 'WebDav' in `allList.ts`.
refactor(openlist): improve driver list normalization and error handling
- Enhanced the normalization logic for driver lists in `providers.ts` to handle various data structures more robustly.
- Added error handling and logging for better debugging during driver information retrieval.
feat(openlist): reset admin password using CLI
- Implemented a mechanism to reset the OpenList admin password using the CLI in `openlist.ts` and `process.ts`.
- Added fallback logic to ensure the password is set correctly after server startup.
refactor(sidecar): streamline sidecar management functions
- Consolidated sidecar management functions in `sidecar.ts` for better organization and clarity.
2026-02-18 20:36:21 +08:00
VirtualHotBar
6d3a197dc3
feat: 添加自动更新功能,支持检查和下载更新
2026-02-18 14:47:31 +08:00
VirtualHotBar
1d58650759
fix(nsis): stop locked sidecars during upgrade
...
- NSIS preinstall/uninstall hook stops openlist/rclone under INSTDIR to avoid locked binary update failures\n- Cleanup sidecars on app exit (all platforms)
2026-02-18 13:52:14 +08:00