Code Self Study Forum

Dotfile Madness

This is interesting:

To those of you reading this: I beg you. Avoid creating files or directories of any kind in your user’s $HOME directory in order to store your configuration or data. This practice is bizarre at best and it is time to end it. I am sorry to say that many (if not most) programs are guilty of doing this while there are significantly better places that can be used for storing per-user program data.

https://0x46.net/thoughts/2019/02/01/dotfile-madness/

The post describes a solution.

As an example if you were to store configuration files you should use $XDG_CONFIG_HOME/your-program as your base configuraion directory instead of just storing your files directly in $XDG_CONFIG_HOME . Remember to never hardcode the directories to the default values defined by the standard. Read the environment variable first to allow the user to move those directories if needed.

Related: here’s a post on keeping dotfiles in version control.

“Read the environment variable first to allow the user to move those directories if needed.”

…and then inform your Customer Support department that you did so. :laugh: I can just imagine the frustrated support person over the phone who’s trying to talk the user into typing cd ~/.kivy only to find that it’s not there…