Felix Nehrke c01578edaf Simpify handling of ansible-vault
I barely have any file valled "vault.ini" or "vault.yml" except of in
the ansible context. So, this treat all these files as ansible-vault
files. The other change affects the way we're looking for an ansible.cfg
file. 1st we check if it's present in the current working dir, if it's
missing there we check if one exists in the same directory as the
vault-file itself. If we do not find any files then we give up and do
not decrypt/encrypt the vault-file. Note, that this also means that we
need an ansible.cfg for the vault to be encrypted/decrypted, no other
method is implemented.
2025-09-21 18:36:58 +02:00
2025-09-21 18:36:58 +02:00
2022-02-28 11:46:49 +01:00
2025-09-17 23:39:49 +02:00

Dotfiles

I use stow to sync my dotfiles between the OS and this repository.

Requirements

Install git and stow if not already present on the system.

Install via apt on Debian/Ubuntu
sudo apt install git stow
Install via brew on macos
brew install git stow

Setup and useage

My dev-machine setup will install and setup these dotfiles automatically. So, the only thing Ive to care about is the stow . --adopt command and to commit changes to the VSC.

Checkout this repository into ~/dotfiles and apply run stow to sync the dotfiles.

The directory should be loacted directly in the HOME directory. Otherwise stow needs an additional flat -t $HOME everytime, which is a bit annoying!
git clone git@gitea.nehrke.info:nemoinho/dotfiles.git ~/dotfiles (1)
cd $_
stow --adopt . (2)
[ -n "$(git status --short)" ] && git restore . (3)
1 Clone this repository
2 Create symlinks for all files managed by this repository, so that the file in the $HOME points to the file in this repository
3 In case of differences between existing files and the ones from this repository keep the version of the repository

Removing files

If a file is going to be removed make sure to remove the linked file as well. Otherwise we end up with a bunch of dangling files in $HOME!

To automatically delete these dangling links we can use a git-hook as the following. That will remove the links pre-commit.

Setup git-hook to automatically remove links to deleted files
cat <<EOF > .git/hooks/pre-commit
#!/usr/bin/env bash
set -e
git status --short | grep -E '^D|^R' | sed 's/...//;s/ -> .*//' | while read f
do
  test -L "\$HOME/\$f" && rm "\$HOME/\$f"
done
EOF
chmod +x .git/hooks/pre-commit
Description
No description provided
Readme 1.6 MiB
Languages
Lua 82.3%
Shell 10.8%
Vim Snippet 6.3%
Python 0.6%