dotfiles-ansible/README.md

2.0 KiB

dotfiles v2

This is the continuation of my old dotfiles without all the Xorg stuff I don't use.

🧰 Usage

# Install non-core Ansible modules if only ansible-core package is installed
ansible-galaxy collection install -r requirements/collections.yml

# Create an encrypted vars file to store secret variables
# (see "Variables" section below)
mkdir -p host_vars/$HOSTNAME
touch host_vars/$HOSTNAME/secrets.yml
ansible-vault encrypt host_vars/$HOSTNAME/secrets.yml
ansible-vault edit host_vars/$HOSTNAME/secrets.yml

# Run the playbook
ansible-playbook playbooks/system.yml
ansible-playbook playbooks/dotfiles.yml

Variables

Beside variables defined in group_vars/all/, these are also available:

  • vault_password (required): the password of the created user (used by system.yml playbook)
  • pixiv_refresh_token: in-browser refresh token used in gallery-dl to access Pixiv
  • google_calendar_id, google_oauth_client_id, google_oauth_client_secret: used in calcurse CalDAV config
  • user_ssh_key_path: configure Git to sign commits with this SSH key

Playbooks

  • system.yml should be the first to be run. Needs to be run as root.
  • dotfiles.yml configures $HOME directory.
  • extend.yml contains additional tasks unrelated to dotfiles and system deployment, but useful (for me).

📓 Notes

The playbooks gear toward my Linux distribution of choice - Alpine Linux. Tasks included in them might not work on other distributions (e.g. apk tasks)

🌟 Credits

📄 License

MIT