Fwd: Guile-gnome package broken in Guix

  • Open
  • quality assurance status badge
Details
One participant
  • swedebugia
Owner
unassigned
Submitted by
swedebugia
Severity
normal
S
S
swedebugia wrote on 16 Feb 2019 12:02
(name . Report new Guix bug)(address . bug-guix@gnu.org)
faf488e1-9f75-1ff3-0cc2-89cd6c54fbfb@riseup.net
The files end up in profile/share/guile-gnome-2/... which is not in
guiles load path.

The result of running the examples:
(first get it with guix build --source)


$ guile -s hello.scm
...
ERROR: In procedure scm-error:
no code for module (gnome gobject)



-------- Forwarded Message --------
Subject: Guile-gnome package broken in Guix
Date: Sat, 16 Feb 2019 11:47:13 +0100
From: swedebugia <swedebugia@riseup.net>
To: guile-gtk-general@gnu.org

Hi

I would really like to start creating my first gtk program with guile.

The package guile-gnome in guix is unfortunately broken and the docs and
examples are missing.

I tried fixing the package but it seems I do not understand gtk nor
autotools well enough to succeed.

I got these questions:

* why are there no TARGET_DIR in the makefiles?
* what is the purpose of the "guilesite" variable?
* what is the purpose of the files in /defs/gnome/defs ? The makefile
there seems to try to check for stuff in DEFS_HEADER_DIR = /usr/include

Thanks in advance.

--
Cheers Swedebugia
S
S
swedebugia wrote on 16 Feb 2019 13:28
(address . 34499@debbugs.gnu.org)
62956f1e-5010-1d4d-cce4-9b072a9f0dec@riseup.net
On 2019-02-16 12:02, swedebugia wrote:
Toggle quote (13 lines)
> The files end up in profile/share/guile-gnome-2/... which is not in
> guiles load path.
>
> The result of running the examples:
> (first get it with guix build --source)
>
>
> $ guile -s hello.scm
> ...
> ERROR: In procedure scm-error:
> no code for module (gnome gobject)
>

Trying to set the right load path results in this error:

guile-gnome-platform-2.16.5/gtk/examples$ guile -L
~/.guix-profile/share/guile-gnome-2/ -s hello.scm
guile: warning: failed to install locale
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;; or pass the --no-auto-compile argument to disable.
;;; compiling
/home/sdb/src/guile-gnome-platform-2.16.5/gtk/examples/hello.scm
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject.scm
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gtype.scm
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/utils.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/utils.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/config.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/config.scm.go
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gtype.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gvalue.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gvalue.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gclosure.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gclosure.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gsignal.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gsignal.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gparameter.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gparameter.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/gobject.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/gobject.scm.go
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/support/modules.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gw/support/modules.scm.go
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject.scm.go
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gtk.scm
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gobject/generics.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/99nyg5hqmnk4l42xv018wmckby54yq2y-guile-gnome-2.16.5/share/guile-gnome-2/gnome/gobject/generics.scm.go
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gdk.scm
;;; compiling
/home/sdb/.guix-profile/share/guile/site/2.2/g-wrap/gw/standard.scm
;;; compiling /home/sdb/.guix-profile/share/guile/site/2.2/g-wrap/config.scm
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/lhyaqrqlyvahxbw6vk4v13qryv4pmd19-g-wrap-1.9.15/share/guile/site/2.2/g-wrap/config.scm.go
;;; compiled
/home/sdb/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/lhyaqrqlyvahxbw6vk4v13qryv4pmd19-g-wrap-1.9.15/share/guile/site/2.2/g-wrap/gw/standard.scm.go
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/glib.scm
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/glib.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-glib", message:
"file not found"
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gdk.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-glib", message:
"file not found"
;;; compiling
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gobject.scm
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gobject.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-gobject",
message: "file not found"
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gtk.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-gobject",
message: "file not found"
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gtk.scm
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/atk.scm
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/atk.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-atk", message:
"file not found"
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/gtk.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-atk", message:
"file not found"
;;; compiling /home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/cairo.scm
;;; WARNING: compilation of
/home/sdb/.guix-profile/share/guile-gnome-2/gnome/gw/cairo.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-cairo", message:
"file not found"
;;; WARNING: compilation of
/home/sdb/src/guile-gnome-platform-2.16.5/gtk/examples/hello.scm failed:
;;; In procedure dynamic-link: file: "libgw-guile-gnome-cairo", message:
"file not found"
Backtrace:
4 (primitive-load "/home/sdb/src/guile-gnome-platform-2.?")
In ice-9/eval.scm:
293:34 3 (_ #(#(#<directory (guile-user) 1c1f140>)))
163:9 2 (_ #(#(#<directory (guile-user) 1c1f140>)))
223:20 1 (proc #(#(#<directory (guile-user) 1c1f140>)))
In unknown file:
0 (%resolve-variable (7 . <gtk-window>) #<directory (guil?>)

ERROR: In procedure %resolve-variable:
Unbound variable: <gtk-window>

--
Cheers Swedebugia
S
S
swedebugia wrote on 22 Feb 2019 19:09
(address . 34499@debbugs.gnu.org)
65cae104-0c00-c9cc-7b79-44ff31d94b27@riseup.net
On 2019-02-16 13:28, swedebugia wrote:
Toggle quote (13 lines)
> On 2019-02-16 12:02, swedebugia wrote:
>> The files end up in profile/share/guile-gnome-2/... which is not in
>> guiles load path.
>>
>> The result of running the examples:
>> (first get it with guix build --source)
>>
>>
>> $ guile -s hello.scm
>> ...
>> ERROR: In procedure scm-error:
>> no code for module (gnome gobject)

I found the error!

Guile-gnome installs in such a way that it only works if you run it like
this: guile-gnome2 -s hello.scm

This seems undocumented and was unexpected. I expected "guile -s" to be
able to run also the modules installed by guile-gnome.

Should we add a note somewhere to avoid confusion and/or inform upstream
about this non-standard behavior?

--
Cheers Swedebugia
Attachment: signature.asc
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 34499@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 34499
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch