Private · daily infrastructure · Developer environment
Workstation system
A reproducible, machine-aware developer environment designed to make a fresh macOS, Linux or Termux system converge on a known working state safely.
- Niche
- Personal developer-platform engineering
- Core stack
- Shell · Rust TUI · GNU Stow · YAML
- Platforms
- macOS · Linux · Android/Termux
- Focus
- Reproducibility, reversibility, low drift
The niche
Most dotfile repositories save configuration. This one treats the entire workstation as a product that should be reproducible, inspectable and recoverable.
The system handles platform prerequisites, package manifests, shared configuration, machine profiles, deployment and lifecycle hooks so a new machine does not depend on remembering years of manual setup.
What is different
The goal is convergence, not cloning one machine blindly onto another.
Shared defaults are extended by explicit host/use-case configuration instead of accumulating hidden one-off shell conditions.
GNU Stow packages, dry runs, rolling backups and skip-able stages make changes easier to inspect and undo.
A Rust TUI supports interactive installation without sacrificing a deterministic non-interactive path for automation.
CI validates configuration and monitors platform synchronization rather than assuming branches and machines remain aligned.
Product & design thinking
A developer environment is an interface used all day, so consistency is a product feature.
Shells may differ, but navigation, history, prompt behavior, keyboard workflows and core tooling should converge where practical. Platform-specific behavior is isolated only when the platform genuinely requires it.
The installer is designed around confidence: preview the plan, understand which stages will run, keep backups, and make machine-specific differences explicit rather than surprising.
Development approach
The repository is treated as infrastructure, with the same expectations placed on application code.
Package definitions are declarative, lifecycle order is explicit, generated state is minimized, and the repository remains the source of truth. Automation validates syntax and synchronization while Stow preserves clear ownership boundaries for deployed configuration.
Private repository · daily-used infrastructure