Engineering
gentleman-system avatar

gentleman-system

System detection and cross-platform command execution engine for managing OS-specific infrastructure and development environments.

Introduction

The gentleman-system skill provides a unified abstraction layer for low-level system interactions within the Gentleman.Dots environment. It is designed for developers, system administrators, and infrastructure engineers who need to maintain consistent configurations across heterogeneous platforms, including macOS, various Linux distributions, and Termux environments. By providing a structured approach to hardware and software detection, it eliminates the complexity of handling platform-specific shell scripts and pathing issues, allowing the underlying codebase to remain clean and maintainable.

  • Advanced platform identification: Implements robust logic for distinguishing between darwin, linux (Arch, Debian), and special runtime environments like Termux (Android).

  • Cross-platform execution primitives: Includes specialized methods for managing privileged operations (sudo), package managers (brew, pacman, pkg), and shell utilities.

  • Real-time logging and feedback: Provides integrated functions for executing long-running commands with real-time log capturing and step-based tracking via callback patterns.

  • File system operations: Simplifies common administrative tasks such as directory existence verification, file synchronization, and recursive directory copying.

  • Extensible architecture: Uses Go-based structures like OSType and SystemInfo to provide type-safe data for automated setup routines, ensuring that tool installation and configuration happen under the correct security and permission contexts.

  • The skill should be triggered when modifying the core installer logic, specifically when adding support for a new operating system or OS version.

  • Use the defined OSType enum and SystemInfo struct to ensure that all detection results are consistent with the established project patterns.

  • Always prefer the built-in system.RunSudo or system.RunBrewWithLogs functions over raw os/exec calls to ensure that log handling and error reporting remain consistent.

  • Always check for the existence of tools using the CommandExists utility before attempting execution to prevent runtime failures.

  • The engine is particularly sensitive to Termux environments; verify all changes against the Termux-specific priority detection logic to ensure Android compatibility is not regressed.

Repository Stats

Stars
1,680
Forks
252
Open Issues
6
Language
Shell
Default Branch
main
Sync Status
Idle
Last Synced
May 3, 2026, 04:41 AM
View on GitHub
gentleman-system | Skills Hub