tldr My dotfiles are now public on Gitlab 🎉
Publishing one's dotfiles can feel like posting naked pictures. It may show things that people wouldn't like to see. But I was finally brave to do it (publishing dotfiles). I think it's fair to publish them, as I have read many public dotfile repositories before writing mine. You can find my dotfiles on Gitlab.
To keep a repository with all the dotfiles I am using
GNU Stow. On its
GNU Stow is defined as a symlink farm manager. It helps me to
manage automatically symlinks between
$HOME (or any other place that
can contain dotfiles) and my dotfiles repository. I included a
makefile in the repository to automatically create all the needed
links using this tool.
The biggest part of my dotfiles repository is my
in emacs/.emacs.d. I have a modularized
Emacs configuration, keeping
.el files for things like agenda, theming, keybindings, etc. I try to
add explanations for everything I add there, so I hope they can be
useful to you.
There are always private things in your dotfiles that you don't want to show.
For instance, in ssh configuration, there are some entries that I want
to keep secret. The solution was easy, I just need to add a new
config.secret file with those entries. That file will be included in
.gitignore file and, to ensure I can access those entries, I added
the following to my main config file:
All your secret entries will be automatically imported!
I also keep some gitignored
*.secrets.sh* files that include APIs keys
and similar things.