The tmpfiles rule created a .gitconfig at /home/hermes/.gitconfig, but the hermes-agent service sets HOME=/var/lib/hermes, so git never reads it. The file also contained only the literal Nix store path instead of the actual config content (wrong tmpfiles type f instead of L+).
Changes
Remove the dead .gitconfig tmpfiles rule (was at /home/hermes/, never read)
AddGIT_INIT_DEFAULT_BRANCH = "master" to the environment section
Add comment explaining the single-source-of-truth approach
Why env vars > .gitconfig
All git identity is now set via a single mechanism:
These are injected by the hermes gateway into .env and take precedence over any gitconfig file. No duplication, no tmpfiles rules for git.
## Problem
The tmpfiles rule created a .gitconfig at `/home/hermes/.gitconfig`, but the hermes-agent service sets `HOME=/var/lib/hermes`, so git never reads it. The file also contained only the literal Nix store path instead of the actual config content (wrong tmpfiles type `f` instead of `L+`).
## Changes
- **Remove** the dead `.gitconfig` tmpfiles rule (was at `/home/hermes/`, never read)
- **Add** `GIT_INIT_DEFAULT_BRANCH = "master"` to the `environment` section
- **Add** comment explaining the single-source-of-truth approach
## Why env vars > .gitconfig
All git identity is now set via a single mechanism:
- `GIT_AUTHOR_NAME/EMAIL` — author identity
- `GIT_COMMITTER_NAME/EMAIL` — committer identity
- `GIT_INIT_DEFAULT_BRANCH` — default branch (Git 2.28+)
These are injected by the hermes gateway into `.env` and take precedence over any gitconfig file. No duplication, no tmpfiles rules for git.
The .gitconfig at /home/hermes/.gitconfig was never read because the
hermes-agent service sets HOME=/var/lib/hermes. Git identity was already
fully covered by GIT_AUTHOR_* and GIT_COMMITTER_* env vars via .env.
Replace the dead .gitconfig's init.defaultBranch with the env var
GIT_INIT_DEFAULT_BRANCH (supported since Git 2.28).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
The tmpfiles rule created a .gitconfig at
/home/hermes/.gitconfig, but the hermes-agent service setsHOME=/var/lib/hermes, so git never reads it. The file also contained only the literal Nix store path instead of the actual config content (wrong tmpfiles typefinstead ofL+).Changes
.gitconfigtmpfiles rule (was at/home/hermes/, never read)GIT_INIT_DEFAULT_BRANCH = "master"to theenvironmentsectionWhy env vars > .gitconfig
All git identity is now set via a single mechanism:
GIT_AUTHOR_NAME/EMAIL— author identityGIT_COMMITTER_NAME/EMAIL— committer identityGIT_INIT_DEFAULT_BRANCH— default branch (Git 2.28+)These are injected by the hermes gateway into
.envand take precedence over any gitconfig file. No duplication, no tmpfiles rules for git.