guile-user
[Top][All Lists]
Advanced

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

Re: G-Golf - Callback segmentation fault


From: pelzflorian (Florian Pelz)
Subject: Re: G-Golf - Callback segmentation fault
Date: Sat, 07 Sep 2024 16:08:19 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Hello David.

David Pirotte <david@altosw.be> writes:
> If you could kindly grab the latest, run the make/install dance on your
> respective distro and try again ... Here the example now runs for
> hours,

Yes, same on Guix.  It runs for more than an hour.

> as it should, consuming +/- 3% cpu and a steady 0.8% of mem (so afaict,
> no memory leak either).

David Pirotte <david@altosw.be> writes:
> Actually the example memory consumption grows, very slowly but it grows.
> I think I know why, I'll try to fix this as well, but I need to finish
> some other work first.

Yes, in /proc/8662/maps, the [heap] region below the guile regions
slowly but steadily grows.

David Pirotte <david@altosw.be> writes:
>> Yes, they had not worked previously, and now with your long-name fix,
>> they work.
> Fwiw, they actually worked fine till day one till 2024-09-04, the day i
> pushed this commit a3952000ae205c27573ab0eaf2176131b51e34cf,
> that 'broke' them ...

Yes, by “they had not worked previously”, I meant commit
bbfee04922bf2a22db397e2f429ae606df940265, where I wrongly claimed it was
working fine but had not tried animated-paintable nor peg-solitaire.

> Ofc - It is a relief for all Guix users that the GNOME team finally
> fixed the GLib/GObject/GI/GdkPixbuf packages so that G-Golf (and
> other GI lang binding for that matter) work(s) 'out of the box':
>
>       Could you post a mini guide with the steps a guix user would
>       have to do, till guix is released, to get this 'proper GI' env
>       for g-golf?

Guix notifies all users regularly to pull the latest rolling release.
This contains at the time of writing a close to current GNOME 44.10 with
gobject-introspection 1.78.  Currently, to use g-golf with vfuncs and
proper guile-cairo, one has to use Guix’ Scheme programming interface,
for example the guix.scm file created with guile-hall.  I use [1].

When guile-cairo and g-golf have a new release, developers just write
guile-cairo and guile-g-golf in there instead.  It would also be usable
from the CLI, but for app developers using Guix, guix.scm is always the
way to go even then.

For Nix it will be the same in Nix language instead of guix.scm.

This is equivalent to manual patching and a manual make install dance.

> Let me know if you need help for your Kodi project, and keep us
> informed ... when you have a link to where the code is, share with
> us ...

Gladly, but my trivial, zenity-like, personal Kodi launcher/restarter
and hard-disk mounting tool is coupled with Sway and to make the code
pretty, Guix developers first need to push some home-sway-service-type
patches [2].

Regards,
Florian

[1]
(use-modules (gnu packages)
             (gnu packages autotools)
             (gnu packages libffi)
             (gnu packages gettext)
             (gnu packages glib)
             (gnu packages linux)
             (gnu packages xml)
             (gnu packages gnome)
             (gnu packages texinfo)
             (gnu packages gtk)
             (gnu packages guile)
             (gnu packages guile-xyz)
             (gnu packages pkg-config)
             (guix build-system glib-or-gtk)
             (guix download)
             (guix git-download)
             (guix gexp)
             ((guix licenses)
              #:prefix license:)
             (guix packages)
             (guix transformations)
             (srfi srfi-1))

(define-public guile-cairo-next
  (package
    (inherit guile-cairo)
    (source (origin
             (method git-fetch)
             (uri (git-reference
                   (url "git://git.savannah.nongnu.org/guile-cairo.git")
                   (commit "30da459d7a4380174ff243b1560d5512a4bca86e")))
             (sha256
              (base32
               "0dslfldzgxis8g0g3xaffcqnd1njzz23fjy0v3lc0r2694ra4ny4"))
             (file-name (string-append "guile-cairo-next"))))
    (inputs
     (list guile-lib expat guile-3.0 gettext-minimal))
    (native-inputs
     (list autoconf-2.71 automake libtool pkg-config texinfo))
    ))

(package
  (name "tcgocr")
  (version "0.01")
  (source
   (local-file (dirname (current-filename))
               #:recursive? #t
               #:select? (lambda (file stat)
                           (not (any (lambda (my-string)
                                       (string-contains file my-string))
                                     (list ".git" ".dir-locals.el" 
"guix.scm"))))))
  (build-system glib-or-gtk-build-system)
  (arguments
   `())
  (native-inputs (list pkg-config  libtool automake autoconf-2.71 ))
  (inputs (list ;;((package-input-rewriting
                  ;;`((,libffi . ,libffi-sans-static-trampolines)))
                 guile-3.0;;)
                glib
                gtk
                libadwaita
                ((options->transformation '((without-tests . "guile-cairo")))
                  guile-cairo-next)
                ((options->transformation '((with-debug-info . 
"gobject-introspection")
                                            (with-commit . 
"guile-g-golf=ab666af394e92180c0ffb67363b2bde061b92b84");v0.8.0-rc.5")
                                            ))
                 guile-g-golf)
                (list glib "debug")
                (list libffi "debug")
                ))
  (propagated-inputs (list))
  (synopsis "")
  (description "")
  (home-page "https://none.yet";)
  (license license:gpl3+))
[2]
https://issues.guix.gnu.org/72714

reply via email to

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