My dotfiles...
Find a file
Fernando Schauenburg 2a19e95ae5 [bash] disable shellcheck warning on VIMINIT
shellcheck(1) is warning that the single quotes prevent the expression
from being expanded. However, this is the desired behavior because this
expression is meant to be interpreted by vim(1), not bash(1).
2020-12-03 18:33:58 +01:00
roles [bash] disable shellcheck warning on VIMINIT 2020-12-03 18:33:58 +01:00
.gitattributes Add ssh role 2019-11-15 22:00:56 +00:00
.gitignore Put all dotfiles into one "stow package" 2019-02-18 23:19:28 +01:00
.key Add git-crypt key 2019-06-20 00:47:49 +02:00
dotfiles.yml Rename host group to dotfiles 2020-03-04 19:42:04 +01:00
hosts.ini Rename host group to dotfiles 2020-03-04 19:42:04 +01:00
README.md Add preliminary SSH config 2020-08-18 14:19:41 +00:00

Prerequisites

  • ansible: for installing the dofiles.
  • git-crypt: for handling sensitive data in the repo (installed via ansible cookbook).
  • gpg: for decrypting the key used by git-crypt (installed via ansible cookbook).

Installation

Steps:

  1. Install ansible.
  2. Create an SSH key with (e.g. with ssh-keygen -t ed25519 -C "$(whoami)@$(hostname)") and register it.
  3. Add a preliminary ~/.ssh/config to reach git.schauenburg.me at the correct port.
  4. Clone the repo.
  5. Play the dotfiles.yml ansible playbook.
  6. Decrypt key & initialize git-crypt to access sensitive data.

Cookbook:

sudo apt-get install ansible
echo -e "Host git.schauenburg.me\nUser git\nPort 587" >>~/.ssh/config
git clone git@git.schauenburg.me:fernando/dotfiles.git $HOME/.dotfiles
cd $HOME/.dotfiles
ansible-playbook -i hosts.ini dotfiles.yml
gpg -d --output - <(base64 -d .key) | git crypt unlock -