I absolutely despise the following directories: Documents, Music, Pictures, Public, Templates, Videos. Why? Because applications randomly dump stuff into these directories and fill them with junk files. I don’t want any application putting anything into directories I actually use, unless I explicitly tell them to. It is not possible to keep your files organized if applications randomly dump trash files into them.
Same shit happens on Windows. Games will just install their shit literally all over OS with no rhyme or reason to it.
Why can’t the save game and config.ini just be in the main god damn game directory? Nobody knows.
If you care, please take time to upvote or file bugs on packages that don’t follow XDG. Or even better, make PRs.
A (very well used) program I use places files in $HOME. Someone argued for changing to $XDG_CONFIG or at least add that as an option. The dev, being used to the old school way, gave the exact opposite reason: that .config was just an extra level of organization when dotfiles are what the home dir is for. So I’m not sure how successful you would be with that approach.
To be clear, I am clearly on the side of XDG, myself.
XDG is a Red Hat thing.
Stuff outside of their influence is unlikely to change, like OpenSSH or ZSH.
Old things like that get a pass. New tools and frameworks should definitely obey the standards.
Those bugs and PRs would just get closed without comment. Nobody is going to move a dotfile as a breaking change in any established software. You either get it right the first time or probably never.
Nobody is going to move a dotfile as a breaking change in any established software
We have oodles of counterexamples to this. GIMP did it, Blender did it, DOSBox did it, Libreoffice did it, Skype did it, Wireshark did it, ad nauseum. It’s not really as big a deal as you make it to be (or a big deal at all). You have a transitional period where you look for config files in both locations, and mark the old location as obsolete.
They will if enough people whine about it.
In the old days (I’m 50+) tumbleweed drifted through ~/ apart from my drivel and I’d have a folder for that so /home/gerdesj/docs was the root of my stuff. I also had ~/tmp/ for not important stuff. I don’t have too much imagination and ~/ was pretty clean. I was aware of dot files and there were a shit load of them but I didn’t see them unless I wanted to.
This really isn’t the most important issue ever but it would be nice if apps dumped their shit in a consistently logical way. XDG is the standard.
The software can read from both locations in a backwards compatible way. Many tools already do this.
Y’know what’s worse? When there’s no dot. Worse than that, it’s an undotted directory used to store a single config file. Ugh, unpleasant memories. 😒
~/go
is one of my major pet peeves.
Tangentially related: I recently learned that there are tools for handling dotfiles such as chezmoi and yadm. I would suppose that after spending some time on backing up the dotfiles that matter one can purge the remainders without much issue. I also remember some tool that was made for the purpose of cleaning $HOME, but can not recall its name (if anyone knows please let me know).
xdg-ninja maybe?
Yes, that is the one. Thanks!
Also if the normal invocation of your program produces more than 3k lines of stdout, sanitize it and default to a file.
I hate it when an application puts its configuration data in its own dotfile under $HOME instead in ~/.config. Also hate it when caches are stored in ~/.config, because then I have to manually tag those subdirectories for exclusion before doing a backup.
My $HOME is my castle (・へ・)
I just write my config files directly to random unused blocks on /dev/sda, filesystems are overrated.
Nah, dump em’ to /tmp/ and let the user figure out the rest
I just leave all config in memory. If the user really cared, they would never reboot.
I just hard code all config in the source code. If the user really cared, they would recompile from source.
A suckless fan I see
One of my greatest pet peeves is random folders appearing in my home folder. Thanks for this