etcmaint

An Arch Linux tool based on git for the maintenance of /etc files.


Keywords
ArchLinux, pacman, Arch Linux
License
MIT
Install
pip install etcmaint==0.8

Documentation

etcmaint uses Git to merge the /etc configuration files installed by pacman that have been customized.

  • The customized configuration files in /etc are detected by etcmaint and tracked in the master branch of the Git repository. See Handling Config Files for when such a detection occurs. After a pacman upgrade, etcmaint uses Git to merge the customized configuration files with the changes introduced by the upgrade.

  • The configuration files in /etc that are not installed by pacman, for example netctl profiles, can be manually committed to the master branch. Changes made to those files will then be also tracked by etcmaint.

  • etcmaint uses a master-tmp temporary branch, that stems from master, to commit all the changes made during a session. This temporary branch is merged back into master only when the session is finalized, that is when the customized configuration files that have been merged by Git are copied back to /etc.

  • The changes in the current etcmaint session before finalization can be printed with:

    git diff master...master-tmp
    

Documentation at GitLab Pages.