Hello, As this is my debut posting I just wanted to start by thanking the GUIX community for all your hard work! :-) I've been working on a project to evaluate GUIX using a process that involves frequent rebuilds/re-installs, and following a rebuild of my testbed hosts on Monday I found that "guix offload test" no longer worked for me. It is now failing as shown below, and notably it fails with a different error message on the first attempt than the latter ones: $ guix offload test /etc/guix/machines.scm guixbuild03.foo.bar.com guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'... guix offload: 'guixbuild03.foo.bar.com' is running guile (GNU Guile) 2.2.2 guix offload: error: failed to use Guix module on 'guixbuild03.foo.bar.com' (test returned #) $ $ guix offload test /etc/guix/machines.scm guixbuild03.foo.bar.com guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'... guix offload: 'guixbuild03.foo.bar.com' is running guile (GNU Guile) 2.2.2 Backtrace: 7 (primitive-load "/gnu/store/pwny051w3gd1rry5bs1vyw5r7bj...") In guix/ui.scm: 1384:12 6 (run-guix-command _ . _) In ice-9/boot-9.scm: 837:9 5 (catch srfi-34 # ...) 837:9 4 (catch system-error # ...) In guix/scripts/offload.scm: 615:6 3 (check-machine-availability _ _) In srfi/srfi-1.scm: 656:11 2 (for-each # ...) In guix/scripts/offload.scm: 547:2 1 (assert-node-has-guix # ...) In ssh/dist/node.scm: 397:8 0 (node-eval # ...) ssh/dist/node.scm:397:8: In procedure node-eval: ssh/dist/node.scm:397:8: Throw to key `node-repl-error' with args `("Evaluation failed" "scheme@(guile-user)> ERROR: In procedure display:\nERROR: In procedure display: Wrong type argument in position 2: #" ())'. $ Digging into this further with the help of strace I see how the "guile --listen=37146" process is getting started on the build machine by way of ssh, and I can see that guile successfully processes commands received on the first incoming TCP connection to port 37146, but that commands received in subsequent TCP connections fail with the "#" error. I was able to simulate this on the CLI by running the following on the "build-machine" host: In one shell: $ sudo -u guixuser guix environment [guixuser@guixbuild03 guix]$ bash -c "nohup guile --listen=37146 0<&- &>/dev/null" ... and then from another shell on this same host: $ telnet localhost 37146 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. GNU Guile 2.2.2 Copyright (C) 1995-2017 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guile-user)> (begin (use-modules (guix)) (with-store store (add-text-to-store store "test" "Hello, build machine!"))) acquiring global GC lock `/var/guix/gc.lock' acquiring read lock on `/var/guix/temproots/17043' acquiring write lock on `/var/guix/temproots/17043' downgrading to read lock on `/var/guix/temproots/17043' $1 = "/gnu/store/883yjkl46dxw9mzykykmbs0yzwyxm17z-test" scheme@(guile-user)> ,q Connection closed by foreign host. $ $ telnet localhost 37146 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. GNU Guile 2.2.2 Copyright (C) 1995-2017 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guile-user)> (begin (use-modules (guix)) (with-store store (add-text-to-store store "test" "Hello, build machine!"))) ERROR: In procedure display: ERROR: In procedure display: Wrong type argument in position 2: # Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue. scheme@(guile-user) [1]> Has anyone seen this problem? I've pored over the mailing lists and documentation and most of the similar problems involved incorrect paths and environment variables, but in this case I'm pretty certain I've got that part right, especially as this was working for me last week. Regardless, here are what I hope are the relevant variables: [guixuser@guixbuild03 guix]$ echo $PATH /var/guix/profiles/per-user/root/guix-profile/bin:/var/guix/profiles/per-user/root/guix-profile/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin [guixuser@guixbuild03 guix]$ which guix /var/guix/profiles/per-user/root/guix-profile/bin/guix [guixuser@guixbuild03 guix]$ which guile /var/guix/profiles/per-user/root/guix-profile/bin/guile [guixuser@guixbuild03 guix]$ env | grep GUILE GUILE_LOAD_COMPILED_PATH=/gnu/store/bcmf06k2n1pfwqkzpclvvc3w9jdfi71a-guile-json-0.6.0/lib/guile/2.2/site-ccache:/gnu/store/66dp9mxn43jkhhrpcy6v5cdqibbl4bjc-gnutls-3.5.13/lib/guile/2.2/site-ccache:/gnu/store/hxc46s4d98c9s5v8jpg7fhbsn011ch74-guile-git-0.0-3.e156a10/lib/guile/2.2/site-ccache:/gnu/store/0lv9jjhalrz65m358ynyk2366wshcd1n-guile-ssh-0.11.2/lib/guile/2.2/site-ccache:/var/guix/profiles/per-user/root/guix-profile/lib/guile/2.2/site-ccache:/var/guix/profiles/per-user/root/guix-profile/share/guile/site/2.2:/var/guix/profiles/per-user/root/guix-profile/lib/guile/2.2/site-ccache GUILE_LOAD_PATH=/gnu/store/bcmf06k2n1pfwqkzpclvvc3w9jdfi71a-guile-json-0.6.0/share/guile/site/2.2:/gnu/store/66dp9mxn43jkhhrpcy6v5cdqibbl4bjc-gnutls-3.5.13/share/guile/site/2.2:/gnu/store/hxc46s4d98c9s5v8jpg7fhbsn011ch74-guile-git-0.0-3.e156a10/share/guile/site/2.2:/gnu/store/0lv9jjhalrz65m358ynyk2366wshcd1n-guile-ssh-0.11.2/share/guile/site/2.2:/var/guix/profiles/per-user/root/guix-profile/share/guile/site/2.2:/var/guix/profiles/per-user/root/guix-profile/share/guile/site/2.2 [guixuser@guixbuild03 guix]$ env | grep GUIX GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale GUIX_ENVIRONMENT=/gnu/store/49gp32rmsly4fs548b69iqvmn1gjck6k-profile [guixuser@guixbuild03 guix]$ You'll note that I'm having "guixuser" use the default "root" user's profile - strace doesn't reveal any failed attempts to write to the root profile by "guixuser" so I'm not thinking this would be a problem, but just wanted to highlight this in case it was relevant. Many thanks in advance for your help! -- - Michael