unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#28462: gnucash dies when generating reports in i3, works in GNOME
@ 2017-09-14 18:58 Adam Van Ymeren
  2017-09-20  0:40 ` bug#28462: [PATCH] " Maxim Cournoyer
  0 siblings, 1 reply; 3+ messages in thread
From: Adam Van Ymeren @ 2017-09-14 18:58 UTC (permalink / raw)
  To: 28462

Here's a bug report I've been sitting on for a while.  I've been meaning
to dig in to it further but haven't had the time so I figured I should
at least post it in case anyone else has experienced this or knows a fix.

Generating reports in gnucash cause it to die when running in the
default i3 session.

If I run in the default GNOME session it works fine.

I believe the problem is related to not having a running GSettings
daemon.

Below is a shortened backtrace from the gnucash process as it died
trying to generate a balance sheet.

As you can see it dies somewhere in GIO related to settings (#3
g_settings_set_property).

#0  0x00007f71fb64cb21 in _g_log_abort ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libglib-2.0.so.0
#1  0x00007f71fb64dd75 in g_logv ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libglib-2.0.so.0
#2  0x00007f71fb64dec2 in g_log ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libglib-2.0.so.0
#3  0x00007f71fc0c813f in g_settings_set_property ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgio-2.0.so.0
#4  0x00007f71fb925e63 in g_object_new_internal ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#5  0x00007f71fb927865 in g_object_new_valist ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#6  0x00007f71fb927bb4 in g_object_new ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#7  0x00007f7189df7536 in g_proxy_resolver_gnome_init ()
   from /home/adam/.guix-profile/lib/gio/modules/libgiognomeproxy.so
#8  0x00007f71fb9432a9 in g_type_create_instance ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#9  0x00007f71fb925aeb in g_object_new_internal ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#10 0x00007f71fb9272e1 in g_object_newv ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#11 0x00007f71fb927bcc in g_object_new ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#12 0x00007f71fc028771 in try_implementation ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgio-2.0.so.0
#13 0x00007f71fc0288f0 in _g_io_module_get_default ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgio-2.0.so.0
#14 0x00007f71f2099615 in soup_proxy_resolver_default_constructed ()
   from /gnu/store/c4ivrb2xrmr8am2dy05cm6ydc870vwm0-libsoup-2.58.2/lib/libsoup-2.4.so.1
#15 0x00007f71fb926057 in g_object_new_internal ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#16 0x00007f71fb9272e1 in g_object_newv ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#17 0x00007f71fb927bcc in g_object_new ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#18 0x00007f71f20a307c in soup_session_add_feature_by_type ()
   from /gnu/store/c4ivrb2xrmr8am2dy05cm6ydc870vwm0-libsoup-2.58.2/lib/libsoup-2.4.so.1
#19 0x00007f71f20a3b1b in soup_session_set_property ()
   from /gnu/store/c4ivrb2xrmr8am2dy05cm6ydc870vwm0-libsoup-2.58.2/lib/libsoup-2.4.so.1
#20 0x00007f71fb927f68 in g_object_set_valist ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#21 0x00007f71fb9285ef in g_object_set ()
   from /gnu/store/9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2/lib/libgobject-2.0.so.0
#22 0x00007f71f35f9637 in WebCore::SoupNetworkSession::SoupNetworkSession(_SoupCookieJar*) ()
   from /gnu/store/3ph6sjm0513972v3220s0a8i8xprmlcq-webkitgtk-gtk2-2.4.11/lib/libwebkitgtk-1.0.so.0
<snip>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#28462: [PATCH] Re: bug#28462: gnucash dies when generating reports in i3, works in GNOME
  2017-09-14 18:58 bug#28462: gnucash dies when generating reports in i3, works in GNOME Adam Van Ymeren
@ 2017-09-20  0:40 ` Maxim Cournoyer
  2018-06-09  4:30   ` Chris Marusich
  0 siblings, 1 reply; 3+ messages in thread
From: Maxim Cournoyer @ 2017-09-20  0:40 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: 28462

[-- Attachment #1: Type: text/plain, Size: 1099 bytes --]

Hello Adam,

Adam Van Ymeren <adam@vany.ca> writes:

> Here's a bug report I've been sitting on for a while.  I've been meaning
> to dig in to it further but haven't had the time so I figured I should
> at least post it in case anyone else has experienced this or knows a fix.
>
> Generating reports in gnucash cause it to die when running in the
> default i3 session.
>
> If I run in the default GNOME session it works fine.
>
> I believe the problem is related to not having a running GSettings
> daemon.

As a ratpoison user, I also suffered from problems caused by the lack of
a GSettings backend when not running Gnome; for example, the preferences
would not be saved across GnuCash restarts.

To fix this, I had to manually install dbus and dconf to my profile. The
attached patch automates this by automatically propagating those
dependencies when GnuCash is installed. It would be nicer to make dbus
and dconf work as regular inputs but this would require patching the
sources; I haven't investigated if how feasible this would be.

Could you try the patch and see if it fixes your issues?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-gnucash-Propagate-dbus-and-dconf.patch --]
[-- Type: text/x-patch, Size: 1575 bytes --]

From 3d6f3da4e8a216ed435777f0a038fc90911503a7 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Mon, 20 Feb 2017 18:29:28 -0800
Subject: [PATCH] gnu: gnucash: Propagate dbus and dconf.

This ensures that a GSettings backend is present; this is necessary to persist
the GnuCash settings and state.

* gnu/packages/gnucash.scm (gnucash)[propagated-inputs]: Add dbus and dconf.
[phases]: Define HOME, which prevents multiple warnings at build time.
---
 gnu/packages/gnucash.scm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm
index ac2dce576..c421df80d 100644
--- a/gnu/packages/gnucash.scm
+++ b/gnu/packages/gnucash.scm
@@ -70,12 +70,19 @@
      `(("glib" ,glib "bin") ; glib-compile-schemas, etc.
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)))
+    (propagated-inputs
+     `(("dbus" ,dbus)                   ;enable gsettings preference backend
+       ("dconf" ,dconf)))               ;likewise
     (arguments
      `(#:tests? #f ;FIXME: failing at /qof/gnc-date/qof print date dmy buff
        #:configure-flags '("--disable-dbi"
                            "--enable-aqbanking")
        #:phases
        (modify-phases %standard-phases
+         ;; Avoid build time warnings by setting $HOME.
+         (add-before 'build 'set-home
+                     (lambda _
+                       (setenv "HOME" (getenv "TMPDIR"))))
          (add-after
           'install 'wrap-programs
           (lambda* (#:key inputs outputs #:allow-other-keys)
-- 
2.14.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* bug#28462: [PATCH] Re: bug#28462: gnucash dies when generating reports in i3, works in GNOME
  2017-09-20  0:40 ` bug#28462: [PATCH] " Maxim Cournoyer
@ 2018-06-09  4:30   ` Chris Marusich
  0 siblings, 0 replies; 3+ messages in thread
From: Chris Marusich @ 2018-06-09  4:30 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: 28462, Adam Van Ymeren

[-- Attachment #1: Type: text/plain, Size: 1072 bytes --]

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

> As a ratpoison user, I also suffered from problems caused by the lack of
> a GSettings backend when not running Gnome; for example, the preferences
> would not be saved across GnuCash restarts.
>
> To fix this, I had to manually install dbus and dconf to my profile.

FYI, we have a dbus-service (maybe it didn't exist when this bug report
was created).  Please see "(guix) Desktop Services" in the Guix manual.
If you set it up, does it help, or is there more work to be done to fix
this problem when running Gnucash outside of GNOME?

Note also that Gnucash has been updated since this bug report was
originally opened.  In particular, on the current core-updates branch,
we have upgraded Gnucash to 3.0.  You might consider trying that
version.  However, please be careful and make backups before doing so,
since there are backwards-incompatible changes going from Gnucash 2 to
3.  For details on the changes, see the Gnucash News posts here:

https://www.gnucash.org/news.phtml

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-06-09  4:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-14 18:58 bug#28462: gnucash dies when generating reports in i3, works in GNOME Adam Van Ymeren
2017-09-20  0:40 ` bug#28462: [PATCH] " Maxim Cournoyer
2018-06-09  4:30   ` Chris Marusich

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).