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.