# Force LF for files that break under CRLF regardless of the checkout OS.
# requirements.lock: pip --require-hashes line-continuations (`\`) must not be
# followed by a CR; shell scripts must not carry CRLF (bad interpreter on Linux).
# Scoped narrowly on purpose -- the rest of the tree keeps its existing eol
# handling (CHANGELOG.md is intentionally CRLF).
requirements.lock text eol=lf
/tools/gen_requirements_lock.sh text eol=lf
# Vendored unified-UI files are byte-pinned to a spec-repo tag by sha256
# (see netcanon/templates/_vendor/README.md).  Any EOL rewrite breaks the
# pin, so exempt them from text normalization entirely.
/netcanon/templates/_vendor/* -text
# Demo host artifacts run on Linux — force LF so a Windows checkout can't commit
# CRLF into a shell script (bad interpreter), nft/systemd unit, Makefile, or Caddyfile.
/deploy/**/*.sh text eol=lf
/deploy/systemd/*.service text eol=lf
/deploy/systemd/*.timer text eol=lf
/deploy/nftables/*.nft text eol=lf
/deploy/Makefile text eol=lf
/deploy/Caddyfile text eol=lf
/deploy/cloud-init.yaml text eol=lf
