guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU G-Golf 0.8.0-rc-3 available for testing


From: pelzflorian (Florian Pelz)
Subject: Re: GNU G-Golf 0.8.0-rc-3 available for testing
Date: Fri, 03 May 2024 13:35:41 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

David Pirotte <david@altosw.be> writes:
>> Hi David.  I’m trying to find the true error location.
>
> The true error location was given by the gdb backtrace, the
> gtk-widget-snapshot-child call, presumably with a bad pointer or so ...

Hmm my assumption was that all callbacks are broken, not vfuncs
specifically, which is why I tried in my e-mail yesterday to tracepoint
g-closure-marshal in Guile and was surprised by that it once said “Trap
0: (g-closure-marshal #<pointer 0x1b9defc0> #<pointer 0x0> 1 #<pointer?>
?)” before the crash just said “Trap 0: no values”.

The GTK_A11Y warning I can easily fix by exporting GTK_A11Y=none, but it
was interesting that the crash happens two function calls away from
where the warning is printed.


> Could you please upload a full gdb backtrace somewhere tor-friendly
> (and zero javascript), so i can look at it, thanks.

On a x86_64 GNOME laptop on the distro Guix System on the g-golf devel
branch with (main '("guile" "--debug")):

#0  0x00007fce2f0022d0 in ?? ()
#1  0x00007fce22e7c3dc in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#2  0x00007fce22e7efa4 in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#3  0x00007fce22e8ae13 in gtk_widget_snapshot_child () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#4  0x00007fce22e8ae9e in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#5  0x00007fce22e7c79e in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#6  0x00007fce22e7efa4 in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#7  0x00007fce22e8a6eb in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#8  0x00007fce22e918c5 in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#9  0x00007fce22ffde94 in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#10 0x00007fce293e75b9 in _g_closure_invoke_va 
(closure=closure@entry=0x38c9de0, 
return_value=return_value@entry=0x7ffca25ce230, 
instance=instance@entry=0x179ef90, args=args@entry=0x7ffca25ce3b8, 
n_params=n_params@entry=1, param_types=param_types@entry=0x1763e30) at 
../glib-2.78.0/gobject/gclosure.c:895
#11 0x00007fce293fa52e in signal_emit_valist_unlocked 
(instance=instance@entry=0x179ef90, signal_id=signal_id@entry=38, 
detail=detail@entry=0, var_args=var_args@entry=0x7ffca25ce3b8) at 
../glib-2.78.0/gobject/gsignal.c:3516
#12 0x00007fce294003c5 in g_signal_emit_valist (instance=0x179ef90, 
signal_id=38, detail=0, var_args=var_args@entry=0x7ffca25ce3b8) at 
../glib-2.78.0/gobject/gsignal.c:3355
#13 0x00007fce29400472 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>) at 
../glib-2.78.0/gobject/gsignal.c:3675
#14 0x00007fce230746ca in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#15 0x00007fce293e75b9 in _g_closure_invoke_va 
(closure=closure@entry=0x191b470, return_value=return_value@entry=0x0, 
instance=instance@entry=0x191b240, args=args@entry=0x7ffca25ce738, 
n_params=n_params@entry=0, param_types=param_types@entry=0x0) at 
../glib-2.78.0/gobject/gclosure.c:895
#16 0x00007fce293fb17b in signal_emit_valist_unlocked 
(instance=instance@entry=0x191b240, signal_id=signal_id@entry=55, 
detail=detail@entry=0, var_args=var_args@entry=0x7ffca25ce738) at 
../glib-2.78.0/gobject/gsignal.c:3516
#17 0x00007fce294003c5 in g_signal_emit_valist (instance=0x191b240, 
signal_id=55, detail=0, var_args=var_args@entry=0x7ffca25ce738) at 
../glib-2.78.0/gobject/gsignal.c:3355
#18 0x00007fce29400472 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>) at 
../glib-2.78.0/gobject/gsignal.c:3675
#19 0x00007fce230639e0 in ?? () from 
/gnu/store/s0bzhwa0n6kvlsfzd6z8nxmm39g39gck-gtk-4.12.3/lib/libgtk-4.so.1
#20 0x00007fce2948e8eb in g_timeout_dispatch (user_data=<optimized out>, 
callback=<optimized out>, source=0x3935fe0) at ../glib-2.78.0/glib/gmain.c:5121
#21 g_timeout_dispatch (source=0x3935fe0, callback=<optimized out>, 
user_data=<optimized out>) at ../glib-2.78.0/glib/gmain.c:5099
#22 0x00007fce2948acf3 in g_main_dispatch (context=context@entry=0x1816860) at 
../glib-2.78.0/glib/gmain.c:3476
#23 0x00007fce2948dc17 in g_main_context_dispatch_unlocked (context=0x1816860) 
at ../glib-2.78.0/glib/gmain.c:4284
#24 g_main_context_iterate_unlocked (context=context@entry=0x1816860, 
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at 
../glib-2.78.0/glib/gmain.c:4349
#25 0x00007fce2948e1ff in g_main_context_iteration 
(context=context@entry=0x1816860, may_block=may_block@entry=1) at 
../glib-2.78.0/glib/gmain.c:4414
#26 0x00007fce292c964d in g_application_run (application=0x1815250, 
argc=<optimized out>, argv=<optimized out>) at 
../glib-2.78.0/gio/gapplication.c:2577
#27 0x00007fce30811052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#28 0x00007fce3080fc85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#29 0x00007fce3081068e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#30 0x00007fce295849c7 in g_callable_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#31 0x00007fce29585f62 in g_function_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#32 0x00007fce30811052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#33 0x00007fce3080fc85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#34 0x00007fce3081068e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#35 0x00007fce3096dd37 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#36 0x00007fce3095df55 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#37 0x00007fce30952b9d in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#38 0x00007fce3095ddb5 in scm_call_n () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#39 0x00007fce308c8977 in scm_primitive_eval () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#40 0x00007fce308ce846 in scm_eval () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#41 0x00007fce3092d3e6 in scm_shell () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#42 0x00007fce308df8cc in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#43 0x00007fce308c6e1a in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#44 0x00007fce30950390 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#45 0x00007fce3095ddb5 in scm_call_n () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#46 0x00007fce308c85ca in scm_call_2 () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#47 0x00007fce3096f092 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#48 0x00007fce3094ae1f in scm_c_catch () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#49 0x00007fce308c9396 in scm_c_with_continuation_barrier () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#50 0x00007fce3094a049 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#51 0x00007fce3082d7fa in GC_call_with_stack_base () from 
/gnu/store/1w1r6r56z9lhg8ghcb7lxss6mkn7d5l1-libgc-8.2.2/lib/libgc.so.1
#52 0x00007fce309443f8 in scm_with_guile () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#53 0x00007fce308e88e5 in scm_boot_guile () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#54 0x00000000004010f7 in ?? ()
#55 0x00007fce303551f7 in __libc_start_call_main () from 
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#56 0x00007fce303552ac in __libc_start_main_impl () from 
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#57 0x0000000000401171 in ?? ()


(I do not understand why it does not see GTK debug info.)

On my aarch64 rock64 the complete backtrace is useless:

(gdb) bt
#0  0x0000ffff8066e278 in ?? ()
#1  0x000000001b976640 in ?? ()
Backtrace stopped: not enough registers or memory available to unwind
further


Your next e-mail:

David Pirotte <david@altosw.be> writes:
> I patched the drawing-widget example so users may pass a -d or --debug
> option, which triggers the setting of the %debug parameter.
>
> This will track (some of the) g-golf (engine) calls 'only', so in this
> particular situation that it segfault (in guix) upon a gtk snapshot
> engine call, i probably will still very much need you to upload the
> full gdb backtrace.
>
> But it will at least give you some useful info on what's going on
> 'internally' - and who knows, might also give me some idea to further
> investigate the problem ... tracking those calls is also a nice way to
> learn about some g-golf internals ....
>[…]
> scheme@(guile-user)> (load "drawing-widget.scm")
> scheme@(guile-user)> (main '("-d"))
> ;; g-application-run 
> ;;          application: #<<gtk-application> 7efed470ab10> 
> ;;                 argc: 0 
> ;;                 argv: () 
> ;; gtk-window-set-child 
> ;;               window: #<<gtk-application-window> 7efed470e270> 
> ;;                child: #<<drawing-widget> 7efed470e020> 
> ;; gtk-window-present 
> ;;               window: #<<gtk-application-window> 7efed470e270> 
> ;; g-golf-callback-closure-marshal 
> ;;   snapshot 
> ;;               widget: #<<drawing-widget> 7efed470e020> 
> ;;             snapshot: #<<gtk-snapshot> 7efed471b1f0> 
> ;; gtk-widget-get-width 
>[…]

I get only

scheme@(guile-user)> (main '("guile" "--debug"))
;; g-application-run 
;;          application: #<<gtk-application> 7fce23e673b0> 
;;                 argc: 0 
;;                 argv: () 
;; gtk-window-set-child 
;;               window: #<<gtk-application-window> 7fce23e730c0> 
;;                child: #<<drawing-widget> 7fce23e7bd10> 
;; gtk-window-present 
;;               window: #<<gtk-application-window> 7fce23e730c0> 

There it stops for me.  This is similar to what I get with patch

diff --git a/g-golf/init.scm b/g-golf/init.scm
index 5f64297..f1774b8 100644
--- a/g-golf/init.scm
+++ b/g-golf/init.scm
@@ -47,8 +47,8 @@
 
 (define %libg-golf (dynamic-link "libg-golf"))
 
-(define %debug (make-parameter #f))
-(define %iface-vfunc-warnings (make-parameter #f))
+(define %debug (make-parameter #t))
+(define %iface-vfunc-warnings (make-parameter #t))
 
 ;; The AdwMessageDialog class offers two ways to capture the user
 ;; response: (1) the traditional dialog 'response signal callback and

base-commit: 482c0693160fba5f4a29214028dc3e9c276693da
-- 
2.41.0



Next e-mail:

David Pirotte <david@altosw.be> writes:
> Hi Florian,
>
>> ...
>> examples/gtk-4/simple-paintable.scm fails at (add-to-load-path
>> (dirname (current-filename)).  I have not yet spent time to debug
>> this one further.
>
> So we can make progress, till you find why (current-filename) fails -
> note that it is a syntax, not a procedure, and the doc clearly state
> that it returns #f "... when this information is not available." - but
> i wonder why "this information" is available in other distro and not
> in guix, for the same example code i mean?


Without updating:

scheme@(guile-user)> (load "adw1-demo.scm")
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /home/florian/src/g-golf/examples/adw-1/adw1-demo.scm
;;; compiling /home/florian/src/g-golf/examples/adw-1/adw1-demo/window.scm
;;; WARNING: compilation of 
/home/florian/src/g-golf/examples/adw-1/adw1-demo/window.scm failed:
;;; In procedure scm_to_utf8_stringn: Wrong type argument in position 1 
(expecting string): #f
;;; WARNING: compilation of 
/home/florian/src/g-golf/examples/adw-1/adw1-demo.scm failed:
;;; In procedure scm_to_utf8_stringn: Wrong type argument in position 1 
(expecting string): #f
scheme@(guile-user)> (main '("guile"))
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Unbound variable: show-window

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> 

>
> Meanwhile, so we can make progress, could you manually patch this
> example to set the path and try again:
>
>       1-      you need a patched version of guile-cairo
>
>       "... G-Golf actually requires a patched version of guile-cairo
>       that contains the following new interface (which is not in
>       guile-cairo 1.11.2): cairo-pointer->context."
>
>       see if you have or update your guile-cairo to
>       commit 30da459d7a4380174ff243b1560d5512a4bca86e
>

I did update to this commit now.


> It should then segfault as well, since it defines two vfunc
> methods, let's see ...

Yes, although in gtk_image_set_from_paintable:

Thread 1 "guile" received signal SIGSEGV, Segmentation fault.
0x00007f9aeb6052d0 in ?? ()
(gdb) bt
#0  0x00007f9aeb6052d0 in ?? ()
#1  0x00007f9ae4d8b8f0 in gtk_image_set_from_paintable () from 
/gnu/store/sq092kyxpn30dp16i85bgxrx18km3cq1-gtk-4.12.3/lib/libgtk-4.so.1
#2  0x00007f9aed8f9052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#3  0x00007f9aed8f7c85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#4  0x00007f9aed8f868e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#5  0x00007f9ae66c89c7 in g_callable_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#6  0x00007f9ae66c9f62 in g_function_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#7  0x00007f9aed8f9052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#8  0x00007f9aed8f7c85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#9  0x00007f9aed8f868e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#10 0x00007f9aeda55d37 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#11 0x00007f9aeda45f55 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#12 0x00007f9aeda3ab9d in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#13 0x00007f9aeda45db5 in scm_call_n () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#14 0x00007f9aed9c3e5a in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#15 0x00007f9aed8f8931 in ffi_closure_unix64_inner () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#16 0x00007f9aed8f91e8 in ffi_closure_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#17 0x00007f9ae652b38f in g_closure_invoke (closure=0x8c9200, 
return_value=return_value@entry=0x0, n_param_values=n_param_values@entry=1, 
param_values=param_values@entry=0x7ffc87fa3790, 
invocation_hint=invocation_hint@entry=0x7ffc87fa3730) at 
../glib-2.78.0/gobject/gclosure.c:832
#18 0x00007f9ae653db17 in signal_emit_unlocked_R 
(node=node@entry=0x7ffc87fa38c0, detail=detail@entry=0, 
instance=instance@entry=0x8c7e20, emission_return=emission_return@entry=0x0, 
instance_and_params=instance_and_params@entry=0x7ffc87fa3790) at 
../glib-2.78.0/gobject/gsignal.c:3980
#19 0x00007f9ae653f109 in signal_emit_valist_unlocked 
(instance=instance@entry=0x8c7e20, signal_id=signal_id@entry=8, 
detail=detail@entry=0, var_args=var_args@entry=0x7ffc87fa3998) at 
../glib-2.78.0/gobject/gsignal.c:3612
#20 0x00007f9ae65443c5 in g_signal_emit_valist (instance=0x8c7e20, signal_id=8, 
detail=0, var_args=var_args@entry=0x7ffc87fa3998) at 
../glib-2.78.0/gobject/gsignal.c:3355
#21 0x00007f9ae6544472 in g_signal_emit (instance=instance@entry=0x8c7e20, 
signal_id=<optimized out>, detail=detail@entry=0) at 
../glib-2.78.0/gobject/gsignal.c:3675
#22 0x00007f9ae640d113 in g_application_activate 
(application=application@entry=0x8c7e20) at 
../glib-2.78.0/gio/gapplication.c:2316
#23 0x00007f9ae640d488 in g_application_real_local_command_line 
(application=0x8c7e20, arguments=0x7ffc87fa3ae0, exit_status=0x7ffc87fa3adc) at 
../glib-2.78.0/gio/gapplication.c:1152
#24 0x00007f9ae640d5de in g_application_run (application=0x8c7e20, 
argc=<optimized out>, argv=<optimized out>) at 
../glib-2.78.0/gio/gapplication.c:2546
#25 0x00007f9aed8f9052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#26 0x00007f9aed8f7c85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#27 0x00007f9aed8f868e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#28 0x00007f9ae66c89c7 in g_callable_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#29 0x00007f9ae66c9f62 in g_function_info_invoke () from 
/gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#30 0x00007f9aed8f9052 in ffi_call_unix64 () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#31 0x00007f9aed8f7c85 in ffi_call_int () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#32 0x00007f9aed8f868e in ffi_call () from 
/gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#33 0x00007f9aeda55d37 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#34 0x00007f9aeda45f55 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#35 0x00007f9aeda3ab9d in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#36 0x00007f9aeda45db5 in scm_call_n () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#37 0x00007f9aed9b0977 in scm_primitive_eval () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#38 0x00007f9aed9b6846 in scm_eval () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#39 0x00007f9aeda153e6 in scm_shell () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#40 0x00007f9aed9c78cc in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#41 0x00007f9aed9aee1a in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#42 0x00007f9aeda38390 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#43 0x00007f9aeda45db5 in scm_call_n () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#44 0x00007f9aed9b05ca in scm_call_2 () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#45 0x00007f9aeda57092 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#46 0x00007f9aeda32e1f in scm_c_catch () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#47 0x00007f9aed9b1396 in scm_c_with_continuation_barrier () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#48 0x00007f9aeda32049 in ?? () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#49 0x00007f9aed9157fa in GC_call_with_stack_base () from 
/gnu/store/1w1r6r56z9lhg8ghcb7lxss6mkn7d5l1-libgc-8.2.2/lib/libgc.so.1
#50 0x00007f9aeda2c3f8 in scm_with_guile () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#51 0x00007f9aed9d08e5 in scm_boot_guile () from 
/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#52 0x00000000004010f7 in ?? ()
#53 0x00007f9aed43d1f7 in __libc_start_call_main () from 
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#54 0x00007f9aed43d2ac in __libc_start_main_impl () from 
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#55 0x0000000000401171 in ?? ()


> Ideally, you'd do that automatically ofc, using the guix machinery
> to achieve those little but fundamental changes.
>
> While at it :), let me add the ideally as well, Guix should define a
> (separate) g-golf.scm module/file and this module should contain the
> following pkg defs:
>
>       g-golf
>       [ g-golf-doc            - possibly a separate pkg as well
>       g-golf-gtk4-examples
>       g-golf-adw1-examples
>       ...                             - other examples to come
>
> It is very important, in distros, that g-golf be separate from its
> examples, because g-golf itself only depends on automake, makeinfo,
> glib-2.0, gobject-2.0, gobject-introspection-1.0, a C compiler and guile ofc.
>
> G-Golf can indeed import typelibs that do not depend on gtk4, adwaita
> ...and allow to perform many other things then 'just' GUI ...
>
> Cheers,
> David

Oh yes, it would be good to package examples for developers to look at
their package definitions.  And without downloading the g-golf source.
Then again, the g-golf source can be downloaded via Guix too.

florian@florianrock64 ~$ cd $(guix build -S guile-g-golf) 
florian@florianrock64 
/gnu/store/3jwn5cxp3j39i0rf8cjwvrk6rynbk743-guile-g-golf-0.8.0-a.1-checkout$ 

For pygobject trying examples is intricate too:

$ cd src/
$ tar xvf $(guix build -S python-pygobject)
$ guix shell python python-gobject gtk+ gtksourceview@4 python-pycairo -- 
python3 examples/demo/demo.py 

Regards,
Florian



reply via email to

[Prev in Thread] Current Thread [Next in Thread]