Subject: Re: bug#23260: (wxmaxima) crash: GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is not installed

From: Danny Milosavljevic <[email-masked]>
Date: Thu, 5 May 2016 17:59:00 +0200

In glib-2.46.1/gio/gsettingsschema.c there's a function "initialize_schema_sources" which is responsible for initializing the schema sources.

It uses g_get_system_data_dirs() and traverses the result (which are supposed to be names of directories), and it checks an environment variable GSETTINGS_SCHEMA_DIR for the name of ONE directory; the basename of the regular file searched for is called "gschemas.compiled".

Using

$ export GSETTINGS_SCHEMA_DIR=/gnu/store/xz2vmk68f5jpscvpqqz1zqa7xr2ydarn-gtk+-3.20.1/share/glib-2.0/schemas

makes it work. However, that can't be the right fix. Among other things, one can only specify a single directory that way. Also, the average user probably doesn't even know what glib schemas are.

If that is fine anyway (why?), there seems to be already an environment variable "GTK_PATH" set by guix, so auto-setting

$ export GSETTINGS_SCHEMA_DIR="${GTK_PATH}/../../share/glib-2.0/schemas"

should make it work for the time being.

I don't think this bug is specific to wxmaxima. I suggest to retitle it "Gtk3 FileChooser doesn't work - it doesn't find its settings" or something.