[linux-elitists] Re: Yet another mozilla atrocity

Nathaniel Smith njs@pobox.com
Thu Oct 2 22:24:36 PDT 2003

On Thu, Oct 02, 2003 at 12:48:39PM -0700, Rick Moen wrote:
> What the frell? Why would Gnumeric's settings be stashed under those for
> GConf? Furthermore, what's with the nine levels deep of subdirectories?
> Jeezux. It's just a furshlugginer conf file!
> Furthermore, where in my home directory am I expected to make a local
> copy of this mess? ~/.gnumeric/ ? Nope, that would be far too logical.
> Turns out there's some contraption called ~/.gnome/Gnumeric, which is
> not an XML file, but rather something like a messy MS-Windows .INI file.
> But is that where I store my local Gnumeric preferences? I have no clue.
> Am I supposed to "cp -a" that entire
> /etc/gconf/gconf.xml.defaults/apps/gnumeric tree to somewhere in my home
> directory? Maybe, but heavens knows where. And there are about eighty
> files in that tree. Eighty! My well-tuned .vimrc is a single, easily
> understood file of 59 lines.

I can't disagree with your overall points much, but for general

Those files in /etc/gconf you found are a red herring; that's
system-wide defaults and metadata on available keys and suchlike.
Likewise, the stuff in ~/.gnome is pre-gconf and irrelevant.  Your
configuration files are actually in ~/.gconf/apps.

They're still spread out across some ungodly directory hierarchy, and
worse, it's not at all clear to me that editing them by hand will
work, rather than, say, creating an inconsistency between the gconf
daemon's in-memory representation and the on-disk representation that
ends up corrupting your settings or something.  I can sort of
understand why they do it this way, though; gconf stores a single
global database for all apps, so they can't really break up data by
application -- gconf doesn't know which application a given bit of
data belongs to.  And sticking it all in one giant XML file sucks
performance-wise, as XML doubtors have been pointing out forever.
Engineering-wise, that horrible forest of XML files is a reasonable
way to store such a database.

You don't really want a giant text file containing every setting for
every Gnome app anyway (what a nightmare that would be...), and
gconf's ability to inform apps of updates is a genuinely useful trick
that's poorly supported with standard configuration files.

Conclusion: the world needs a gconftab (by analogy with crontab)
program that pulls out all the keys related to a particular program
into a file, starts your editor, and then checks the file for changes
and sucks them back into gconf.  You know, this could probably be done
as a shell script calling gconftool or something even...

-- Nathaniel

"Of course, the entire effort is to put oneself
 Outside the ordinary range
 Of what are called statistics."
  -- Stephan Spender

More information about the linux-elitists mailing list