unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34922: guile-wm crashes on login
@ 2019-03-19 22:58 jesse
  2019-03-20 17:32 ` ng0
  2019-03-20 19:12 ` Ricardo Wurmus
  0 siblings, 2 replies; 4+ messages in thread
From: jesse @ 2019-03-19 22:58 UTC (permalink / raw)
  To: 34922

[-- Attachment #1: Type: text/plain, Size: 11951 bytes --]

I am trying to use guile-wm, but it fails when I launch it.
I define an operating system that includes guile-wm as a package and use
it to build a virtual machine image. Here is the operating system
definition:
~~~~~

(use-modules (gnu) (gnu system nss))
(use-service-modules desktop)
(use-package-modules certs gnome guile-wm)

(operating-system
 (host-name "piranhaplant")
 (timezone "America/Boise")
 (locale "en_US.utf8")

 (bootloader (bootloader-configuration
              (bootloader grub-bootloader)
              (target "/dev/sda")))

 (file-systems (cons (file-system
                      (device (file-system-label "mini8"))
                      (mount-point "/")
                      (type "ext4"))
                     %base-file-systems))

 (users
  %base-user-accounts)

 (packages (cons* nss-certs
                  gvfs
          guile-wm
                  %base-packages))

 (services (cons* (gnome-desktop-service)
                  %desktop-services))

 (name-service-switch %mdns-host-lookup-nss))


~~~~~

When I try to log in, it flashes an error so fast I cannot record it,
then returns to the login screen. When I launch it from a console, it
sends the following to stderr:

~~~~~

;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/bin/.guile-wm-real
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/shared.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/connection.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/struct.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/type.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/enum.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/records.scm
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/records.scm.go
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/enum.scm.go
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/type.scm.go
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/union.scm
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/union.scm.go
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/struct.scm.go
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/connection.scm.go
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/doc.scm
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/doc.scm.go
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/auth.scm
;;; WARNING: compilation of
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/auth.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml.scm
failed:
;;; no code for module (xcb xml xproto)
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/core.scm
;;; WARNING: compilation of
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/core.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/shared.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/bin/.guile-wm-real
failed:
;;; no code for module (xcb xml xproto)
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/user.scm
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/command.scm
;;; compiling
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/event-loop.scm
;;; WARNING: compilation of
/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/event-loop.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/command.scm
failed:
;;; no code for module (xcb xml xproto)
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/log.scm
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/log.scm.go
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/keymap.scm
;;; compiled
/root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/keymap.scm.go
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/text.scm
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/draw.scm
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/draw.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/text.scm
failed:
;;; no code for module (xcb xml xproto)
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/color.scm
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/color.scm
failed:
;;; no code for module (xcb xml xproto)
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/user.scm
failed:
;;; no code for module (xcb xml xproto)
;;; compiling
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/redirect.scm
;;; WARNING: compilation of
/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/redirect.scm
failed:
;;; no code for module (xcb xml xproto)
Backtrace:
In ice-9/boot-9.scm:
   222:29 19 (map1 (((guile-wm keymap)) ((guile-wm redirect)) ((…)) …))
   222:17 18 (map1 (((guile-wm redirect)) ((xcb event-loop)) ((…)) …))
  2800:17 17 (resolve-interface (guile-wm redirect) #:select _ #:hide …)
In ice-9/threads.scm:
    390:8 16 (_ _)
In ice-9/boot-9.scm:
  2726:13 15 (_)
In ice-9/threads.scm:
    390:8 14 (_ _)
In ice-9/boot-9.scm:
  2994:20 13 (_)
   2312:4 12 (save-module-excursion #<procedure 1942ab0 at ice-9/boo…>)
  3014:26 11 (_)
In unknown file:
          10 (primitive-load-path "guile-wm/redirect" #<procedure 11…>)
In ice-9/eval.scm:
   721:20  9 (primitive-eval (define-module (guile-wm redirect) # # …))
In ice-9/psyntax.scm:
  1235:36  8 (expand-top-sequence ((define-module (guile-wm #) # …)) …)
  1182:24  7 (parse _ (("placeholder" placeholder)) ((top) #(# # …)) …)
   285:10  6 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) …)
In ice-9/eval.scm:
   293:34  5 (_ #<module (#{ g23682}#) bf1aa0>)
In ice-9/boot-9.scm:
   2874:4  4 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
  2887:24  3 (_)
   222:17  2 (map1 (((xcb xml xproto)) ((xcb xml)) ((xcb #)) ((…)) #))
   2803:6  1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ …)
In unknown file:
           0 (scm-error misc-error #f "~A ~S" ("no code for modu…" …) …)

ERROR: In procedure scm-error:
no code for module (xcb xml xproto)

Some deprecated features have been used.  Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information.  Set it to "no" to suppress
this message.

~~~~~
From what I can tell, it is attempting to re-compile guile-wm, and
cannot find the prerequisite guile-xcb package files.

Possible solutions:

-Edit the guile-wm package to include guile-xcb in the
propagated-inputs. As the manual says, "Another example where
|propagated-inputs| is useful is for languages that lack a facility to
record the run-time search path akin to the |RUNPATH| of ELF files; this
includes Guile, Python, Perl, and more. To ensure that libraries written
in those languages can find library code they depend on at run time,
run-time dependencies must be listed in |propagated-inputs| rather than
|inputs|."

If there are no objections to taking this action as suggested by the
manual, here is a patch:
~~~~~

From 7bd5859eaef1b823ade87faa790092a553b40a91 Mon Sep 17 00:00:00 2001
From: jesse <jgibbons2357@gmail.com>
Date: Tue, 19 Mar 2019 16:19:38 -0600
Subject: [PATCH] Fix guile-wm to have guile-xcb as a propagated-input.

---
 gnu/packages/guile-wm.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm
index 7b1731171..40b56d64e 100644
--- a/gnu/packages/guile-wm.scm
+++ b/gnu/packages/guile-wm.scm
@@ -139,8 +139,8 @@ dependencies.")
                #t)))))
       (native-inputs `(("pkg-config" ,pkg-config)
                        ("texinfo" ,texinfo)))
-      (inputs `(("guile" ,guile-2.2)
-                ("guile-xcb" ,guile-xcb)))
+      (inputs `(("guile" ,guile-2.2)))
+      (propagated-inputs `(("guile-xcb" ,guile-xcb)))
       (home-page "https://github.com/mwitmer/guile-wm/releases")
       (description
        "Guile-WM is a simple window manager that's completely
customizable—you
-- 
2.20.1


~~~~~

I could not test this fix because even in a guix environment and
pre-inst-env with the patch, guix does not recognize the file I edited
as the file that defines the guile-wm package. (I think that's a problem
with my OS.) However, when I included a similarly revised definition of
guile-wm in an OS definition, guile did not try to re-build guile-wm, so
I think this is progress on the guile-wm crash bug. It does not allow me
to run guile-wm as my window manager, but it does fix one part of the
problem.

-Jesse

[-- Attachment #2: Type: text/html, Size: 13751 bytes --]

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#34922: guile-wm crashes on login
  2019-03-19 22:58 bug#34922: guile-wm crashes on login jesse
@ 2019-03-20 17:32 ` ng0
  2019-03-20 19:12 ` Ricardo Wurmus
  1 sibling, 0 replies; 4+ messages in thread
From: ng0 @ 2019-03-20 17:32 UTC (permalink / raw)
  To: jesse; +Cc: 34922

If I remember my interaction with guile-wm correctly
this is expected behavior out of the box.

Upstream has probably moved on to other interests,
because there are more errors at runtime once you
get to launch into guile-wm. For a couple of years
now volunteers have been asking about how to help
and so on but nothing has happened.

jesse transcribed 26K bytes:
> I am trying to use guile-wm, but it fails when I launch it.
> I define an operating system that includes guile-wm as a package and use
> it to build a virtual machine image. Here is the operating system
> definition:
> ~~~~~
> 
> (use-modules (gnu) (gnu system nss))
> (use-service-modules desktop)
> (use-package-modules certs gnome guile-wm)
> 
> (operating-system
>  (host-name "piranhaplant")
>  (timezone "America/Boise")
>  (locale "en_US.utf8")
> 
>  (bootloader (bootloader-configuration
>               (bootloader grub-bootloader)
>               (target "/dev/sda")))
> 
>  (file-systems (cons (file-system
>                       (device (file-system-label "mini8"))
>                       (mount-point "/")
>                       (type "ext4"))
>                      %base-file-systems))
> 
>  (users
>   %base-user-accounts)
> 
>  (packages (cons* nss-certs
>                   gvfs
>           guile-wm
>                   %base-packages))
> 
>  (services (cons* (gnome-desktop-service)
>                   %desktop-services))
> 
>  (name-service-switch %mdns-host-lookup-nss))
> 
> 
> ~~~~~
> 
> When I try to log in, it flashes an error so fast I cannot record it,
> then returns to the login screen. When I launch it from a console, it
> sends the following to stderr:
> 
> ~~~~~
> 
> ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
> ;;;       or pass the --no-auto-compile argument to disable.
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/bin/.guile-wm-real
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/shared.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/connection.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/struct.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/type.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/enum.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/records.scm
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/records.scm.go
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/enum.scm.go
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/type.scm.go
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/union.scm
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/union.scm.go
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/struct.scm.go
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/connection.scm.go
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/doc.scm
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/doc.scm.go
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/auth.scm
> ;;; WARNING: compilation of
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/auth.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/core.scm
> ;;; WARNING: compilation of
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/xml/core.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/shared.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/bin/.guile-wm-real
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/user.scm
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/command.scm
> ;;; compiling
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/event-loop.scm
> ;;; WARNING: compilation of
> /gnu/store/gv2n0k75d5svzcgwqna33nvhvczrj3z2-guile-xcb-1.3-1.db7d5a3/share/guile/site/2.2/xcb/event-loop.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/command.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/log.scm
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/log.scm.go
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/keymap.scm
> ;;; compiled
> /root/.cache/guile/ccache/2.2-LE-8-3.A/gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/keymap.scm.go
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/text.scm
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/draw.scm
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/draw.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/text.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/color.scm
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/color.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/user.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> ;;; compiling
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/redirect.scm
> ;;; WARNING: compilation of
> /gnu/store/q549b5c0fwds1l8bycvabva3jwr86p63-guile-wm-1.0-1.f3c7b3b/share/guile/site/2.2/guile-wm/redirect.scm
> failed:
> ;;; no code for module (xcb xml xproto)
> Backtrace:
> In ice-9/boot-9.scm:
>    222:29 19 (map1 (((guile-wm keymap)) ((guile-wm redirect)) ((…)) …))
>    222:17 18 (map1 (((guile-wm redirect)) ((xcb event-loop)) ((…)) …))
>   2800:17 17 (resolve-interface (guile-wm redirect) #:select _ #:hide …)
> In ice-9/threads.scm:
>     390:8 16 (_ _)
> In ice-9/boot-9.scm:
>   2726:13 15 (_)
> In ice-9/threads.scm:
>     390:8 14 (_ _)
> In ice-9/boot-9.scm:
>   2994:20 13 (_)
>    2312:4 12 (save-module-excursion #<procedure 1942ab0 at ice-9/boo…>)
>   3014:26 11 (_)
> In unknown file:
>           10 (primitive-load-path "guile-wm/redirect" #<procedure 11…>)
> In ice-9/eval.scm:
>    721:20  9 (primitive-eval (define-module (guile-wm redirect) # # …))
> In ice-9/psyntax.scm:
>   1235:36  8 (expand-top-sequence ((define-module (guile-wm #) # …)) …)
>   1182:24  7 (parse _ (("placeholder" placeholder)) ((top) #(# # …)) …)
>    285:10  6 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) …)
> In ice-9/eval.scm:
>    293:34  5 (_ #<module (#{ g23682}#) bf1aa0>)
> In ice-9/boot-9.scm:
>    2874:4  4 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
>   2887:24  3 (_)
>    222:17  2 (map1 (((xcb xml xproto)) ((xcb xml)) ((xcb #)) ((…)) #))
>    2803:6  1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ …)
> In unknown file:
>            0 (scm-error misc-error #f "~A ~S" ("no code for modu…" …) …)
> 
> ERROR: In procedure scm-error:
> no code for module (xcb xml xproto)
> 
> Some deprecated features have been used.  Set the environment
> variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
> program to get more information.  Set it to "no" to suppress
> this message.
> 
> ~~~~~
> From what I can tell, it is attempting to re-compile guile-wm, and
> cannot find the prerequisite guile-xcb package files.
> 
> Possible solutions:
> 
> -Edit the guile-wm package to include guile-xcb in the
> propagated-inputs. As the manual says, "Another example where
> |propagated-inputs| is useful is for languages that lack a facility to
> record the run-time search path akin to the |RUNPATH| of ELF files; this
> includes Guile, Python, Perl, and more. To ensure that libraries written
> in those languages can find library code they depend on at run time,
> run-time dependencies must be listed in |propagated-inputs| rather than
> |inputs|."
> 
> If there are no objections to taking this action as suggested by the
> manual, here is a patch:
> ~~~~~
> 
> From 7bd5859eaef1b823ade87faa790092a553b40a91 Mon Sep 17 00:00:00 2001
> From: jesse <jgibbons2357@gmail.com>
> Date: Tue, 19 Mar 2019 16:19:38 -0600
> Subject: [PATCH] Fix guile-wm to have guile-xcb as a propagated-input.
> 
> ---
>  gnu/packages/guile-wm.scm | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm
> index 7b1731171..40b56d64e 100644
> --- a/gnu/packages/guile-wm.scm
> +++ b/gnu/packages/guile-wm.scm
> @@ -139,8 +139,8 @@ dependencies.")
>                 #t)))))
>        (native-inputs `(("pkg-config" ,pkg-config)
>                         ("texinfo" ,texinfo)))
> -      (inputs `(("guile" ,guile-2.2)
> -                ("guile-xcb" ,guile-xcb)))
> +      (inputs `(("guile" ,guile-2.2)))
> +      (propagated-inputs `(("guile-xcb" ,guile-xcb)))
>        (home-page "https://github.com/mwitmer/guile-wm/releases")
>        (description
>         "Guile-WM is a simple window manager that's completely
> customizable—you
> -- 
> 2.20.1
> 
> 
> ~~~~~
> 
> I could not test this fix because even in a guix environment and
> pre-inst-env with the patch, guix does not recognize the file I edited
> as the file that defines the guile-wm package. (I think that's a problem
> with my OS.) However, when I included a similarly revised definition of
> guile-wm in an OS definition, guile did not try to re-build guile-wm, so
> I think this is progress on the guile-wm crash bug. It does not allow me
> to run guile-wm as my window manager, but it does fix one part of the
> problem.
> 
> -Jesse

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#34922: guile-wm crashes on login
  2019-03-19 22:58 bug#34922: guile-wm crashes on login jesse
  2019-03-20 17:32 ` ng0
@ 2019-03-20 19:12 ` Ricardo Wurmus
  2019-03-20 20:05   ` Ricardo Wurmus
  1 sibling, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2019-03-20 19:12 UTC (permalink / raw)
  To: jesse; +Cc: 34922


Hi Jesse,

> I am trying to use guile-wm, but it fails when I launch it.

Thank you for this excellent bug report!

> From what I can tell, it is attempting to re-compile guile-wm, and
> cannot find the prerequisite guile-xcb package files.

> Possible solutions:
>
> -Edit the guile-wm package to include guile-xcb in the
> propagated-inputs. As the manual says, "Another example where
> |propagated-inputs| is useful is for languages that lack a facility to
> record the run-time search path akin to the |RUNPATH| of ELF files; this
> includes Guile, Python, Perl, and more. To ensure that libraries written
> in those languages can find library code they depend on at run time,
> run-time dependencies must be listed in |propagated-inputs| rather than
> |inputs|."

The guile-wm executable is already wrapped in GUILE_LOAD_PATH and
GUILE_LOAD_COMPILED_PATH, which should accomplish the same thing.  The
problem seems to be that the directories on GUILE_LOAD_COMPILED_PATH are
incorrect — they don’t contain any .go files!

The problem lies in the guile-wm package’s “'set-load-path” phase.
Instead of “share/guile/site/2.2” it should be using
“lib/guile/2.2/site-ccache” for the compiled load path.

--
Ricardo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#34922: guile-wm crashes on login
  2019-03-20 19:12 ` Ricardo Wurmus
@ 2019-03-20 20:05   ` Ricardo Wurmus
  0 siblings, 0 replies; 4+ messages in thread
From: Ricardo Wurmus @ 2019-03-20 20:05 UTC (permalink / raw)
  To: jesse; +Cc: 34922-done


This should now be fixed (commit
cbe0762041f0d86cdb7c3d385a27b7d4b0b266c7).

--
Ricardo

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-03-20 20:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-19 22:58 bug#34922: guile-wm crashes on login jesse
2019-03-20 17:32 ` ng0
2019-03-20 19:12 ` Ricardo Wurmus
2019-03-20 20:05   ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).