Pl3ntz/OpenSharkMacOS

GitHub: Pl3ntz/OpenSharkMacOS

基于逆向工程的开源 macOS 原生配置工具,解决 Attack Shark R1 鼠标在 Mac 上缺乏官方驱动的按键重映射和滚轮反转需求。

Stars: 2 | Forks: 0

# OpenSharkMacOS

OpenShark icon

License: MIT Platform: macOS 14+ Swift 5.9 Latest release

**Attack Shark R1** 无线游戏鼠标的开源 macOS 配置工具 —— 一款原生的 SwiftUI 应用(附带一个 CLI),完全通过逆向工程设备协议从零开始构建。运行时无需任何第三方软件。 ## 功能 - **原生 GUI** —— 一款带有 R1 矢量绘图的 SwiftUI 应用:点击鼠标上的按键,选择一个操作。包含原生材质、动画、悬停/选中状态、键盘导航和 VoiceOver 标签。 - **按键重映射** —— 所有 6 个按键(左键、右键、中键、DPI 键、两个侧键)可映射为鼠标功能、页面导航、多媒体按键或任意键盘快捷键。写入鼠标的板载内存。 - **独立设备滚轮反转** —— 翻转鼠标滚轮方向,同时保持触控板的“自然”滚动不受影响。作为登录项运行。 - **CLI** —— 可以通过脚本处理一切(`r1 set back key:cmd+left` 等)。 目前暂不支持:DPI/RGB 配置和宏。 ## 环境要求 - macOS 14+ - Attack Shark R1(使用 USB-C 数据线或 2.4 GHz 接收器 —— VID `0x1D57`,PID `0xFA60`/`0xFA61`) - Xcode command line tools (Swift 5.9+) ## 安装 ### 下载(最简单的方式) 1. 从[**Releases**](https://github.com/Pl3ntz/OpenSharkMacOS/releases)获取最新的 **`OpenShark-vX.Y.Z-macos.zip`**。 2. 解压并将 **OpenShark.app** 移动到 `/Applications`。 3. 该应用目前尚未经过公证,因此首次启动时会被 Gatekeeper 拦截 —— **右键点击该应用 → 打开 → 打开**(只需操作一次),或者运行: xattr -dr com.apple.quarantine /Applications/OpenShark.app 4. 首次使用时,请授予**输入监控**权限(系统设置 → 隐私与安全性 → 输入监控 → 启用 OpenShark),然后重新打开应用。 ### 从源码构建 ``` git clone https://github.com/Pl3ntz/OpenSharkMacOS.git cd OpenSharkMacOS swift build -c release bash scripts/make-app.sh release # bundles dist/OpenShark.app (with icon) open dist/OpenShark.app ``` `make-app.sh` 会将 SwiftPM 可执行文件打包成 `.app`(纯粹的 SwiftPM 可执行文件无法显示窗口)。对于 CLI:运行 `swift build`,然后运行 `.build/debug/r1 --help`。 ## 权限 macOS 会限制对可作为键盘/鼠标使用的 HID 设备的访问。 - **输入监控** —— 与鼠标通信所必需的(按键重映射 + 连接检测)。首次运行应用/CLI 时会请求此权限;请在**系统设置 → 隐私与安全性 → 输入监控**下授予,然后**退出并重新打开**应用。 - **辅助功能** —— 仅在反转滚轮时需要(因为它使用了 `CGEventTap`)。 ## 用法 —— GUI 点击鼠标绘图上的按键(或使用方向键)将其选中,然后在右侧选择一个操作。更改会立即应用到鼠标上,并保存到配置文件中。 ## 用法 —— CLI ``` r1 show show the current profile r1 set
标签:macOS应用, SwiftUI, USB设备, 云资产清单, 系统工具, 逆向工程, 鼠标配置