For tool configs? I’m not really sure I follow. All my source code for the project goes in
src/or some other subdirectory, and the project root is a bunch of configs, a source directory, maybe some scripts, etc. It’s never really bothered me.What has bothered me is
__pycache__directories. Whoever decided to litter those in every source directory all over the place… let’s just say I hope they learned to never do that again. I deal with enough trying to get Python to work at all (with the absolute hell it is to get imports working correctly, the random, but admittedly mostly documented, BS gotchas littered all over the standard library, packages with poor docs, no types, and every function worth calling taking**kwargs, etc). Seeing my code littered with these directories isn’t something I really want to deal with as well.A standard for build output might make sense to me. Maybe just throw cache stuff in
.cacheand build output to.build(with intermediate artifacts in there as well potentially). For configs, I wouldn’t really complain about it all going in.config, but it also doesn’t matter much to me, and sometimes you end up having nested configs anyway in nested project dirs (thinking of eslint configs, gitignores, etc).Many of them don’t even allow it to be a hidden file—they just require a fully unhidden “tool.yml” file sitting right there in the root of your project.
I love this. I hate when tools only allow hidden config files. I want to know where the config is—my teammates should be aware of where the config is. I don’t want to be tricked into thinking there isn’t a config file in a directory.
I actually have
alias ls='ls -A'in my bashrc so I see everything.Check my dotfiles https://github.com/Samueru-sama/dotfiles
0 hidden files, everything is in
~/Local.Recently added this hack for ssh: https://github.com/Samueru-sama/dotfiles/commit/7e1f8bd3173da563731aea6db9efbf26a2b23e72
I made a tool for this some time ago. It detects when programs write to your home directory outside the XDG spec and logs the file and the location of the binary that wrote it to an SQLite file.


