Dotfiles Synchronizer

A background service that commits and pushes my config files to git each time they change.

category
~ tool
status
archived
active
2024-01 → 2024-02 · 42 commits
made
■ hand · all commits before I used agents
numbers
● 22 stars (live)
stack
python · systemd · git
links
github ↗
timeline

What it does

A background service that watches my config files. When a file changes, it commits the change to a git repo and pushes it. My config was always backed up, with its full history.

It has 22 stars.

How it works

You list the directories and files in ~/.config/synchronization_targets.json. A systemd service polls them every 0.5 seconds. It commits each change, but it pushes at most once every 30 seconds, to stay below rate limits.

An option writes the commit messages with the OpenAI API. That was in January 2024, before agents.

Limits

It works only with systemd. The repo must use SSH, because the service cannot type a password.