2 ms·
There are way more offenders here. But snap is the most egregious one because it's not hidden. Name and shame: * docker (~/.docker) * Arduino IDE (~/.arduino
by Avamander 6y ago
There are way more offenders here. But snap is the most egregious one because it's not hidden.
Name and shame:
* docker (~/.docker)
* Arduino IDE (~/.arduino15)
* GNURadio (~/.gnuradio)
* IPython (~/.ipython)
* FreeCAD (~/.FreeCAD)
* HPlip (~/.hplip)
* IntelliJ and others (e.g. ~/RubyMine[year])
* Cargo (~/.cargo)
* Audacity (~/.audacity-data)
* PGAdmin (~/.pgadmin)
* ELinks (~/.elinks)
* NPM (~/.npm)
* sqlmap (~/.sqlmap)
* ZAP (~/.ZAP)
* GNUPG (~/.gnupg)
* crashlytics (~/.crashlytics)
* Android Studio (~/.android)
And so so so many others just crap all over home when they could just crap in .config if it's config and in .cache if it's cache. Lazy devs.
- ddevault 6y agoSSH is the most annoying because I need it installed on literally everything.
- sergeykish 6y agoIt is quite easy to patch if all you want is to move files away from $HOME. http://sergeykish.com/openssh-config-in-xdg-directory http://sergeykish.com/openssh-config-in-xdg-directory And it is easy to make own repo. There are quite a lot of unofficial repositories https://wiki.archlinux.org/index.php/unofficial_user_repositories https://wiki.archlinux.org/index.php/unofficial_user_reposit...
- boring_twenties 6y agoAnother stupid thing is stuff like ~/.config/<stupidprogram>/Cache. The cache is not a config, assholes. What do you think ~/.cache is for?!
- sergeykish 6y agoQuite a lot (npm, cargo, docker, ipython, elinks, gnupg, freecad, ...) already support XDG or may be configured with environment variables [0]: export ELINKS_CONFDIR="$XDG_CONFIG_HOME"/elinks [0] https://wiki.archlinux.org/index.php/XDG_Base_Directory https://wiki.archlinux.org/index.php/XDG_Base_Directory
- Avamander 6y agoIt should be the default that my home folder isn't cluttered. I have tens and tens of pieces of software, it's very impractical to keep track what does what and if I have to get them to behave somehow. That export list required got me weary, plus look at how many in that list are hardcoded :/, the situation is rather bad.
- sergeykish 6y agoYou can patch it all. If world does not match your view it may be you who is outlier. I quite like current convention - hidden files in $HOME belong to applications. There is value in $XDG_CACHE_HOME - it can be safely removed (like /var/cache). You force your view on open source community, that is rather bad.
- Avamander 6y ago> You can patch it all. As I said, impractical, not a solution. > If world does not match your view it may be you who is outlier. Looking at the amount of software that does follow the base directory specification, actually you're the outlier insisting on obsolete conventions. You and a bunch of other developers insist on those things, in reality that is the actually harmful behaviour for open-source. Interestingly but yet non-surprisingly, that insistence very often goes in hand with the stubborness to stay on obsolete mailing lists, ugly user interfaces, insecurity by-default, git-email, buggy issue trackers, 80-column commit messages, obsolete security standards and practices and so much more. > I quite like current convention - hidden files in $HOME belong to applications. The future is now, home folders aren't to be filled with trash. Move on or stay behind, seriously.
- sergeykish 6y agoLets check. I tolerate both versions, use workarounds in my .bash_profile and share them, actually tried to patch and have written article [0]. You shame software, half of it has workaround, see patching as impractical. XDG Base Directory Specification [1] is not about your home folder. It is about default storage, separation of cache, user data and config, a way to provide another config, so one can: * remove entire config when stuck with a problem * remove cache, think /var/cache * `ssh -F foo` would be `XDG_CONFIG_HOME=foo ssh` Everyone has a pain point, everyone has a workflow, there is no One True Way. Please stop shaming authors, they quit, sometimes post it here about mob. Patching folder structure is the simplest thing. If you can't do that who is going to fix actual bugs? [0] http://sergeykish.com/openssh-config-in-xdg-directory http://sergeykish.com/openssh-config-in-xdg-directory [1] https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html https://specifications.freedesktop.org/basedir-spec/basedir-...