On Mon, 29 Apr 2019 at 14:15, Michael Kjörling <michael(a)kjorling.se> wrote:
On 28 Apr 2019 13:00 -0700, from bakul(a)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?"