Various config files from my home directory
- Lua 72.1%
- Haskell 13.4%
- Shell 6.3%
- Vim Script 3.4%
- CSS 2%
- Other 2.8%
| alacritty/dot-config | ||
| bin/bin | ||
| git | ||
| gnupg/.gnupg | ||
| haskell | ||
| intellij | ||
| lua/dot-luarocks | ||
| mpd/.config/mpd | ||
| pinentry/.config/pinentry | ||
| playbooks | ||
| psql | ||
| python | ||
| resources | ||
| shell | ||
| surface/.config/i3 | ||
| sway/.config | ||
| vim | ||
| .editorconfig | ||
| .gitignore | ||
| .gitmodules | ||
| .luacheckrc | ||
| hie.yaml | ||
| README.rst | ||
My public dotfiles.
Installation
git clone https://codeberg.org/mfussenegger/dotfiles.git
cd dotfiles
ansible-playbook playbooks/aur.yml
ansible-playbook playbooks/system.yml -K
ansible-playbook playbooks/home.yml
This requires Ansible to symlink the configurations and install packages + vim plugins.
This is tailored to my needs. For others I recommend to review & cherry-pick specific roles instead of applying everything.
Stow
The folder structure for the configurations is setup so it can be used with GNU Stow. For example:
stow psql
To symlink all files within psql to your home folder.
Apply Ansible roles
To only apply specific roles you can use
ansible -m import_role within the playbooks
folder:
cd playbooks
ansible localhost -m import_role -a name=vim
To apply some roles on multiple remote hosts you can use
ansible-console. For example, to initialize the dotfiles on
other hosts the following could be used:
cd playbooks
ansible-console yourhosts -K --ssh-extra-args="-o ForwardAgent=yes"
$ import_role name=dotfiles
$ import_role name=stow
$ import_role name=zsh-plugins
$ import_role name=vim