| Variable |
Effect |
HOME |
the home directory. Every target must resolve inside it |
XDG_CONFIG_HOME, XDG_DATA_HOME, XDG_STATE_HOME |
where dotsync keeps its own files, when set to an absolute path. XDG_CONFIG_HOME also locates the systemd user units |
XDG_CONFIG_HOME, XDG_DATA_HOME, XDG_STATE_HOME, XDG_CACHE_HOME, and any other variable |
usable at the start of a target, as $VAR/… or ${VAR}/… |
DOTSYNC_HOSTNAME |
the machine’s name in commit messages, commit authors and status. Default: the hostname, up to the first dot |
DOTSYNC_NO_NOTIFY |
any value turns off desktop notifications for that run. To turn them off for the background agent, set notifications to false instead |
GIT_SSH_COMMAND |
used as it is, if set. Otherwise dotsync runs ssh as ssh -o BatchMode=yes -o ConnectTimeout=15, so it never prompts |
GITHUB_TOKEN |
sent to the GitHub API by update and doctor when they look up the latest release, to avoid its rate limit |
PATH |
where dotsync finds git, gh, launchctl, systemctl, crontab, and the notification programs. agent install writes it into the agent’s definition |
The background agent doesn’t read your shell’s configuration. It gets PATH, HOME and any XDG_* base directories as they were when you last ran dotsync agent install (or init, or update); see the job’s environment.
dotsync runs every git command with:
| Variable |
Why |
GIT_TERMINAL_PROMPT=0 |
fail instead of asking for a username or password |
GIT_SSH_COMMAND |
ssh -o BatchMode=yes -o ConnectTimeout=15, unless you set it yourself |
LC_ALL=C |
English messages that dotsync can recognize and explain |
GIT_OPTIONAL_LOCKS=0 |
no background lock or index writes from read-only commands |
| Variable |
Default |
Effect |
DOTSYNC_VERSION |
latest |
release to install, e.g. v0.5.0 |
DOTSYNC_BIN_DIR |
~/.local/bin |
where to install |
DOTSYNC_REQUIRE_ATTESTATION |
0 |
1 refuses to install unless the build provenance verifies, which needs the GitHub CLI |