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.
Well dont use chrom*
I use ungoogled chromium, but only for sites that absolutelly don’y wanna work on firefox.
I’m surprised. I haven’t had a website not work with Firefox for a long time. I haven’t even had to install chromium as a backup in almost two years now.
It gets worse, when I was doing a refine of a Mistral-7B, on both the Linux and windows rigs the default location was somewhere on my OS drive in either %appdata% or some .config/.cache bullshit which stored the entire LLM along with all checkpoints and whatnot.
Nutter. My C drive on windows is a 120GB, all my programs are on my Q drive in software RAID. With Linux I follow the same principle, all heavy files are on a separate partition.
Better than dumping into ~/
Apps I write put config files in
XDG_CONFIG_HOME/appname/
, which is usually~/.config/appname/
. What’s wrong with that?1GB of files is not configuration.
Oh I see, the problem is misusing it for stuff that isn’t configuration, yeah that makes sense now.
Thats how its supposed to be, but if your config dir is tens of megabytes large, you’re doing something wrong
There’s a dedicated 10th circle in hell for this people. As someone who runs a
root-on-tmpfs
system, PLEASE document which dirs your application is using.It is a total pain, specially with non standar ones.
But tbf there are a lot of Linux devs who neither have read a single line of any Linux standard API.
XDG_DIR, Portals, Secrets, D-Bus, the Desktop file spec, Appstream… are there for you to read. 🥰
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. :)
Windows developers trying to follow best-practice-like-Microsoft-does
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.
I was thinking more of one product companies using a
$XDG_CONFIG_HOME/Boop Snoot Partners, Inc/<Software Name You Remember Installing>/
convention, which seems to be the norm insideAPPDATA%
.But I take your point. 😊
I see that in some cases on Linux, for example JetBrains IDEs use paths like
$XDG_CONFIG_HOME/JetBrains/Rider2024.1
. I agree that it’s more common on Windows though!I don’t mind it with companies that produce multiple products, as nesting them does make sense.
But for one-hit-wonders it’s a bit… 😬
I guess they can’t know in advance that they will end up being a one hit wonder