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: David Pirotte
Subject: Re: GNU G-Golf 0.8.0-rc-3 available for testing
Date: Thu, 2 May 2024 21:17:48 -0300

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?

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

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

> 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.

Dito, please manually update the path and try again, thanks - the
adw1-demo extensively use (the) GtkWidget template(s) (mechanism), no
other example does, so far ... we need to check and possibly debug this
in Guix as well ... the sooner the better:

        you'll need to update all occurrences of (current-filename),
        quite a few, one in the 'main' adw1-demo.scm file, one or two
        (depending) in all scm files in the adw1-demo subdir [1]

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

[1]     sfind current-filename

./adw1-demo.scm: (dirname (current-filename)))
./adw1-demo/welcome.scm:  #:template (string-append (dirname (current-filename))
./adw1-demo/style-classes-demo-dialog.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/carousel.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/animations.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/clamp.scm:  #:template (string-append (dirname (current-filename))
./adw1-demo/window.scm:  #:template (string-append (dirname (current-filename))
./adw1-demo/window.scm:  (let* ((cwd (dirname (current-filename)))
./adw1-demo/style-classes.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/dialogs.scm:  #:template (string-append (dirname (current-filename))
./adw1-demo/navigation-view.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/preferences.scm:  #:template (string-append (dirname 
(current-filename))
./adw1-demo/navigation-view-demo-dialog.scm:  #:template (string-append 
(dirname (current-filename))
./adw1-demo/lists.scm:  #:template (string-append (dirname (current-filename))

Attachment: pgpRR7yIfKDH2.pgp
Description: OpenPGP digital signature


reply via email to

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