[GNC-dev] Trouble with gsettings in GC 4.9

Geert Janssens geert.gnucash at kobaltwit.be
Fri Dec 31 08:17:26 EST 2021


Glad you got it fixed!

Happy new year to you too!

Geert

Op vrijdag 31 december 2021 13:02:40 CET schreef Christian Wehling:
> Hi John, Geert,
> It works, thanks for your help!
> 
> What have I done?
> 1. emptied all old, not needed build directories and uninstalled the old
> flatpak version. 2. removed all org.gnucash.*.gschema.xml and
> gschemas.compiled from /usr/local/share/glib- 2.0/schemas/
> 3. deleted $HOME/.cache/dconf
> 4. install GnuCash 4.9 again
> 
> Regards and a happy new year,
> Christian
> 
> Am Freitag, dem 31.12.2021 um 11:54 +0100 schrieb Geert Janssens:
> > This is misleading.
> > 
> > Even the newer gnucash still installs schemas for org.gnucash.<something>
> > next to org.gnucash.GnuCash.<something>
> > In recent versions these are defined in
> > org.gnucash.GnuCash.deprecated.gschema.xml (1)
> > 
> > 
> > So it's absolutely normal both will still show up in dconf.
> > 
> > However if there are *two* sets of gschema.xml files that define the same
> > org.gnucash.<something> schema, the glib schema compiler will bail out as
> > soon as it detects the first duplicate schema. As a result it won't reach
> > the schema files starting with org.gnucash.GnuCash and hence it won't
> > compile the newer schema.
> > 
> > I have now looked at your dconf.backup file. It shows both
> > org.gnucash.<something> and org.gnucash.GnuCash.<something> entries.
> > That's correct and should be so since gnucash 4.7. That's when I added
> > the new schema.
> > 
> > I also went back to your very first message. In there you write:
> > >  If I run:
> > >  glib-compile-schemas --strict /usr/local/share/glib-2.0/schemas/
> > >  /usr/local/share/glib-
> > >  2.0/schemas/org.gnucash.dialogs.business.gschema.xml:3:1  Fehler in
> > >  Zeile 3, Zeichen 1: <schema id='org.gnucash.dialogs.business'> wurde
> > >  bereits angegeben.  --strict was specified; exiting.
> > 
> > This really points as /usr/local/share/glib-2.0/schemas as the cause. It
> > holds gschema.xml files from before gnucash 4.7 (the ones named
> > org.gnucash.<something-not-GnuCash>
> > 
> > As we have been talking about this in all directions it's not clear to me
> > whether these are still there. If so, can you remove those and rerun
> > ninja install ?
> > 
> > Or instead of ninja install you can also do as John suggests in directly
> > rerun glib-compile- schemas. For that to work the
> > org.gnucash.GnuCash.<something> schema files should be left in that
> > directory though.
> > 
> > Regards,
> > 
> > Geert
> > 
> > (1) We need to keep those
> > 1. to be able to migrate the user' settings (a one-time event)
> > 2. allow the user to downgrade without loosing preferences
> > The old schema is targeted for full removal only in gnucash 6.
> > 


More information about the gnucash-devel mailing list