GNOME Bugzilla – Bug 662141
tolerate profile errors
Last modified: 2012-07-15 15:51:50 UTC
in the ubuntu instaler busybox, chroot /target (the new system) mkdir -p /etc/dconf/profile cd /etc/dconf/profile echo user > user echo site >> user mkdir -p /etc/dconf/db/site.d/ cd /etc/dconf/db/site.d/ wget http://$SHAZ/local.dconf dconf update Then was trying to see if the settings took, had some issues, started trying to work around... # gsettings get org.gnome.desktop.screensaver idle-activation-enabled ** ERROR **: Unable to open '/etc/dconf/db/site', specified in dconf profile Trace/breakpoint trap # pwd /etc/dconf/db/site.d # cd /etc/dconf/db/site cd: 60: can't cd to /etc/dconf/db/site # cd /etc/dconf/db/ # ls local.d site.d # ls -l total 8 drwxr-xr-x 2 root root 4096 2011-10-18 14:17 local.d drwxr-xr-x 2 root root 4096 2011-10-18 15:34 site.d # mkdir site # gsettings get org.gnome.desktop.screensaver idle-activation-enabled ** ERROR **: Unable to open '/etc/dconf/db/site', specified in dconf profile Trace/breakpoint trap # touch /etc/dconf/db/site # gsettings get org.gnome.desktop.screensaver idle-activation-enabled ** ERROR **: Unable to open '/etc/dconf/db/site', specified in dconf profile Trace/breakpoint trap # rmdir site # ls local.d site.d # pwd /etc/dconf/db # touch site # gsettings get org.gnome.desktop.screensaver idle-activation-enabled Segmentation fault # gdb -args gsettings get org.gnome.desktop.screensaver idle-activation-enabled GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://bugs.launchpad.net/gdb-linaro/>... Reading symbols from /usr/bin/gsettings...(no debugging symbols found)...done. (gdb) run Starting program: /usr/bin/gsettings get org.gnome.desktop.screensaver idle-activation-enabled [Thread debugging using libthread_db enabled] Program received signal SIGSEGV, Segmentation fault. 0x00007ffff581f744 in gvdb_table_is_valid (table=0x6085e0) at ../gvdb/gvdb-reader.c:572 572 ../gvdb/gvdb-reader.c: No such file or directory. in ../gvdb/gvdb-reader.c (gdb) bt full
+ Trace 228845
(gdb)
This isn't a segfault -- just an abort. The abort mentions quite specifically what the problem is. That said, probably these aborts should be less fatal than they are...
The refactor branch that just landed no longer aborts() as a result of any error encountered while attempting to parse profiles.