etckeeper is a collection of tools to let /etc be stored in a git, mercurial, darcs, or bzr repository. It hooks into apt (and other package managers including yum and pacman-g2) to automatically commit changes made to /etc during package upgrades. It tracks file metadata that revison control systems do not normally support, but that is important for /etc, such as the permissions of /etc/shadow. It's quite modular and configurable, while also being simple to use if you understand the basics of working with revision control.

etckeeper is available in git at git://git.kitenet.net/etckeeper, or in gitweb. It's packaged in Debian, Unbuntu, Fedora, etc.

News

etckeeper 0.48 released with these changes

  • Fix backwards test for HGUSER. (Mike Rich) Closes: #589242
  • 'etckeeper vcs' can be used to run arbitrary VCS subcommands in the etckeeper environment. (Thanks, Stefan Tomanek)
Posted Friday afternoon, July 16th, 2010

etckeeper 0.47 released with these changes

  • Set HOME=~root so that VCS like bzr do not drop root-owned files in user home directory when sudo etckeeper is run. Closes: #583581
  • hg: Set HGUSER (if not already set) to avoid warning message when committing. Closes: #533298
  • Both git and bzr default to showing the author of a commit, and not the committer. So, set the author to the user running sudo for both. The committer will then be root.
Posted Sunday afternoon, May 30th, 2010

etckeeper 0.46 released with these changes

  • Support etckeeper commit --stdin
  • Fix bug where after a large upgrade, etckeeper's automatic commit message was so long it exceeded command line length limits. Closes: #581678
Posted Sunday evening, May 16th, 2010