It's changeable so I don't really mind but I hate the XDG default data dirs used by most OSs. Uppercase feels out of place, organizing things based on mine type (ex. "Video") feels wrong, and wtf is a "Desktop".
same, I just delete all these dirs and use ~/downloads for everything. If I need a file for more than a couple of hours, it goes somewhere it makes sense, not to a generic dumpster like "Documents".
The XDG Base Directory Specification is a set of guidelines to tell application developers where they should store their application's config files, cache, etc.
There are many applications that don't follow the guidelines and put their files in a hidden folder directly in your home directory, which is what the guidelines are trying to combat.
I would fucking love it if I could put all my configs there, but unfortunately every other CLI tool seems to feel it needs a spot in the home dir instead..
It's used to store configuration files for various applications so they don't clutter up your home directory. For example, you can put your Emacs config files in ~/.config/emacs instead of ~/.emacs.d.
Not every program supports it though.
Lots of tools ignore xdg, and issues asking to add support get bogged down in backwards compatibility problems. The best they achieve is to introduce yet another env variable to control where the config goes. It's really annoying.
I have a bunch of TOOLX_CONFIG="$XDG_CONFIG_HOME/toolx" stuff in my bashrc.