On Mon, 29 Apr 2019 at 14:15, Michael Kjörling wrote: > On 28 Apr 2019 13:00 -0700, from bakul@bitblocks.com (Bakul Shah): > > IMHO separate files are fine but it would've been nice to > > a) have a place other than $HOME to store these files and > > XDG already does that. At least Norman already mentioned ~/.config in > this thread. > > https://www.freedesktop.org/wiki/Software/xdg-user-dirs/ > > Not sure how common that is on non-Linux systems, but it seems pretty > common on modern Linux distributions. > That's application-specific, not distribution or OS specific. I have 58 subdirectories of ~/.config on my workstation at work; that's not deviating much from your case; 58 directories (indicating about 58 apps), 2047 subdirectories, 7422 files, 481MB of data, the largest bits being cache data for Google Chrome web browser. > My workstation Debian system has a staggering 3467 files in that > directory, spread around 444 directories (75 directories directly > under ~/.config). Plus another 142 dot-directories and 66 dotfiles in > ~/. Now, ~/.config typically uses multiple files per application, and > at a glance there's some stuff there that could definitely go, but I > still shudder to think of having all of those directly under ~/, so > it's clearly doing _some_ good in that regard. > I have had little reason to worry about this; I tend to concur. > > b) a standardized plain text format > > I'm not sure about that; different applications have very different > needs, and trying to shoehorn one into another would be ugly; quite > possibly even more ugly than just having different formats. Yeah, the time they tried doing that, we got "XML everywhere," and that wasn't a notable improvement. What you see on mobile devices these days is that the ".config/" file is a SQLite database, which is where both configuration and application data are captured. As someone that spends a great deal of his time writing SQL code, I find that not too heinous; others might disagree. I think having a SQLite file is better than getting some heinous XML file. (Especially if the XML file is some thinly disguised serialization of a hierarchy of COM objects, where modifying element order would be liable to make your Windows application blow up.) The "mobile platforms" have gotten quite a lot of milage out of using SQLite databases (true both on Android and on iOS); there could be worse things. The SQLite web site does have a page somewhat proselytizing this: https://sqlite.org/appfileformat.html I heard D Richard Hipp (author of SQLite, now head of the dev team) explain this at PGCon 5 years ago < https://www.pgcon.org/2014/schedule/events/736.en.html> He also contended that the world might be a better place if LibreOffice documents were captured as SQLite databases rather than being bundles of XML stored in a .zip archive. That's a nice lively argument to have. Actually poke at the slides at PGCon 2014; he makes similar arguments about git repos (what if metadata were in a database?) and ePub book files. If we were going to forcibly shoehorn everything into one thing, I think I'd rather that than a lot of the alternatives. But I'm admittedly excessively comfortable with SQL ;-) I can live with us having a number of data formats, particularly if they remain simple. -- When confronted by a difficult problem, solve it by reducing it to the question, "How would the Lone Ranger handle this?"