Hello again, one more message on the current status of G-Golf on GNU Guix, which has two real issues:
To develop with G-golf and GTK as in G-Golf’ examples/adw-1/hello-world.scm or examples/gtk-4/hello-world.scm, the Guix commands must (at the time of writing) be used with the “--no-grafts” option, because G-Golf first when loading runs g_typelib_symbol on GdkPixbuf functions from Guix’ normal gdk-pixbuf package, but later when it presents the GTK window, GTK tries to load GdkPixbuf functions from a mostly identical replacement gdk-pixbuf package without debug symbols installed at another /gnu/store path. This has, I strongly believe, the same cause as Guix bug#48907 that debug symbols are missing, [1] and a proper, permanent fix would take time, I think, because reverting the disk space-saving commit that caused it is a bad option and reimplementing the commit properly should be done, I think, in guix-daemon, which is thorny. If a G-Golf using GTK app were to be packaged for Guix, the package would have to use tricks to reference GTK’s gdk-pixbuf package and not normal gdk-pixbuf. (Guix only has one G-Golf app packaged currently, the nomad web browser, which is broken in current Guix.) The second issue is the vfuncs when running examples/gtk-4/drawing-widget.scm. This segfaults at gtk_widget_snapshot_child when run. Similarly examples/gtk-4/peg-solitaire.scm segfaults at gtk_image_set_from_paintable called from g_callable_info_invoke. It segfaults at least with guile and guile-next Guile versions 3.0.9 and 3.0.9-0.db7efa5. I do not understand the cause or the vfunc implementation in G-Golf’s g-golf/hl-api/vfunc.scm file. I will try to compare it with Vala-generated C code and try to make it fail similarly. 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. David Pirotte <da...@altosw.be> writes: > The adw-1 examples should work as well, both the hello-world.scm and the > adw1-demo.scm I have not run adw1-demo.scm successfully, because the modules it needs are not in the load path. I guess this is the same small issue. Regards, Florian [1] Guix bug https://issues.guix.gnu.org/48907