The template of this meme is that of the man who cheerfully points his hand at a butterfly, asking “Is this a pigeon”?. In this meme, the man has been covered with icons of the applications IntelliJ, VSCode, Chromium and Signal. The butterfly which he points to is overlaid with the caption “.config”. He asks “Is this a trash can?” At the bottom of the image, we see the command du -sh
executed on the directories .config/chromium/
and .config/Code
, yielding file sizes of 1016M and 83M respectively.
So much this. It’s like these clowns don’t read the XDG directory spec and think
$XDG_CONFIG_HOME
and$XDG_DATA_HOME
are interchangeable, and even that cache files can be in either or both. No, one directory you need to backup for when things go sideways, and the other can go to /nev/dull.I’m not a fan of
~/.local/share/
being the data directory (two directories deep seems stupid), but it’s definitely where regular data belongs.Never mind developers who, in 2025, still think their project is special enough for a
$HOME
dotfile/dotdir or - somehow worse - those who put$XDG_CONFIG_HOME/<weird-name>/subdir/[subdir/]
. The latter strikes me as well-meaning Windows developers trying to follow best-practice-like-Microsoft-does, but it makes my teeth itch.Rant over. :)
I think the best practices on Windows are pretty similar to Linux, other than Windows usually using title case whereas Linux usually using lowercase. There’s bad developers on both platforms :)
Windows equivalent to XDG_CONFIG_DIR is %appdata%, which is the roaming AppData directory.
This is why so many people have a separate git repository for their config files and a scripts that symlinks or copies those files into the actual
~/.config
.