工程開發
gentleman-system avatar

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
在 GitHub 查看