OS-Specific Configuration with Tags

OS-Specific Configuration with Tags

This example demonstrates how HermitGrab enables platform-specific configurations using the os_family tag. Different settings are applied for Unix vs. Windows environments.

Highlights

  • Conditional Configuration: Automatically configures Git’s core.autocrlf based on OS.
  • Built-in Tags: Uses os_family=unix and os_family=windows.
[[install]]
name = "Git Line-ending config (Unix)"
check = "[ $(git config --global --get core.autocrlf) = \"input\" ]"
install = "git config --global core.autocrlf input"
requires = ["+has_git", "os_family=unix"]

[[install]]
name = "Git Line-ending config (Windows)"
check = "[ $(git config --global --get core.autocrlf) = \"true\" ]"
install = "git config --global core.autocrlf true"
requires = ["+has_git", "os_family=windows"]