ansible-dotfiles

Ansible+Stow powered dotfiles, configs n co

Stars
5
          
       
             
             
             
                   

        
     
                    
                    
           
              

deploying dotfiles

Prerequisites:

Clone the repo git clone [email protected]:Strum355/dot-files.git

Checkout the pass git submodule with git submodule update --init

Run ansible-playbook deploy-dotfiles.yaml --ask-become-pass and input your password

how it works

In this repo, dotfiles are mananged through a combination of Ansible and GNU Stow to deploy all dotfiles and config at once.

When running the Ansible playbook, Stow is invoked on all directories in ./dotfiles. with the default target directory being ../.., which should be the home directory. If a target needs to be overridden, a directory can contain a .override file containing the new target directory. All source directories are merged with the target directores, so existing files aren't deleted.

This results in e.g.:

dotfiles/i3/.config/i3/ -> $HOME/.config/i3/ dotfiles/slick-greeter/ -> /etc/lightdm/

To install configs for a particular service, one can invoke stow manually in the dotfiles directory e.g. cd dotfiles && stow -t /target/directory fish. The commands invoked by Ansible are a bit more involved, to take into account the possible .override file and for output purposes.