gentleman-system
用于管理操作系统特定基础设施与开发环境的系统检测及跨平台指令执行引擎。
简介
gentleman-system 技能为 Gentleman.Dots 环境内的底层系统互动提供了一个统一的抽象层。它专为需要维护跨异质平台(包括 macOS、各种 Linux 发行版及 Termux 环境)一致配置的开发人员、系统管理员及基础设施工程师所设计。通过提供结构化的硬件与软件检测机制,该技能消除了处理特定平台 Shell 脚本及路径问题的复杂性,让底层代码库维持整洁且易于维护。
-
高级平台识别:实现强大的逻辑,用于区分 darwin、linux (Arch, Debian) 以及如 Termux (Android) 等特殊执行环境。
-
跨平台执行原语:包含用于管理特权操作 (sudo)、包管理器 (brew, pacman, pkg) 及 Shell 工具的专用方法。
-
实时日志与反馈:提供整合功能,用于执行长时间运行的指令,并透过回调模式 (callback patterns) 进行实时日志捕捉与步骤追踪。
-
文件系统操作:简化常见的管理任务,例如目录存在性验证、文件同步及递归目录复制。
-
可扩展架构:使用如 OSType 和 SystemInfo 等 Go 结构提供类型安全的数据,确保自动安装与配置流程在正确的安全与权限上下文中进行。
-
当修改核心安装程序逻辑,特别是在加入对新操作系统或操作系统版本的支持时,应使用此技能。
-
请使用定义好的 OSType 枚举与 SystemInfo 结构,确保所有检测结果符合既有的项目模式。
-
应始终优先使用内置的 system.RunSudo 或 system.RunBrewWithLogs 函数,而非原始的 os/exec 调用,以确保日志处理与错误回报的一致性。
-
在尝试执行前,请务必使用 CommandExists 工具检查工具是否存在,以防止运行时期失败。
-
该引擎对 Termux 环境特别敏感,请务必对照 Termux 特有的优先检测逻辑验证所有变更,以确保不会造成 Android 兼容性退化。
仓库统计
- Star 数
- 1,680
- Fork 数
- 252
- Open Issue 数
- 6
- 主要语言
- Shell
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 04:41