Hi Vagrant, Vagrant Cascadian <vagr...@debian.org> skribis:
> Though may introduce a different issue in tests/build-utils.log: > > ... > test-name: wrap-script, simple case > location: /build/guix-41NMGX/guix-1.2.0~rc1/tests/build-utils.scm:152 > source: > + (test-equal > + "wrap-script, simple case" > + (string-append > + (format > + #f > + "#!~a --no-auto-compile\n#!#; Guix wrapper\n#\\-~s\n#\\-~s\n" > + (which "guile") > + '(begin > + (let ((current (getenv "GUIX_FOO"))) > + (setenv > + "GUIX_FOO" > + (if current > + (string-append > + "/some/path:/some/other/path" > + ":" > + current) > + "/some/path:/some/other/path")))) > + '(let ((cl (command-line))) > + (apply execl > + "/anything/cabbage-bash-1.2.3/bin/sh" > + (car cl) > + (cons (car cl) (append '("") cl))))) > + script-contents) > + (call-with-temporary-directory > + (lambda (directory) > + (let ((script-file-name > + (string-append directory "/foo"))) > + (call-with-output-file > + script-file-name > + (lambda (port) (display script-contents port))) > + (chmod script-file-name 511) > + (wrap-script > + script-file-name > + `("GUIX_FOO" > + prefix > + ("/some/path" "/some/other/path"))) > + (let ((str (call-with-input-file > + script-file-name > + get-string-all))) > + (with-directory-excursion > + directory > + (delete-file "foo")) > + str))))) > FORMAT: INTERNAL ERROR IN FORMAT-ERROR! > destination: #<input-output: > /tmp/guix-directory.YrSRbV/foo.3efcPU 8> > format string: "#!/build/guix-41NMGX/guix-1.2.0~rc1/guile > --no-auto-compile\n#!#; Guix wrapper\n#\\-(begin (let ((current > (getenv \"GUIX_FOO\"))) (setenv \"GUIX_FOO\" (if current > (string-append \"/some/path:/some/other/path\" \":\" current) > \"/some/path:/some/other/path\"))))\n#\\-(let ((cl > (command-line))) (apply execl > \"/anything/cabbage-bash-1.2.3/bin/sh\" (car cl) (cons (car cl) > (append (quote (\"\")) cl))))\n" > format args: () > error args: (#f "error in format" () #f) > FORMAT: INTERNAL ERROR IN FORMAT-ERROR! > destination: #<input-output: > /tmp/guix-directory.YrSRbV/foo.3efcPU 8> > format string: "#!/build/guix-41NMGX/guix-1.2.0~rc1/guile > --no-auto-compile\n#!#; Guix wrapper\n#\\-(begin (let ((current > (getenv \"GUIX_FOO\"))) (setenv \"GUIX_FOO\" (if current > (string-append \"/some/path:/some/other/path\" \":\" current) > \"/some/path:/some/other/path\"))))\n#\\-(let ((cl > (command-line))) (apply execl > \"/anything/cabbage-bash-1.2.3/bin/sh\" (car cl) (cons (car cl) > (append (quote (\"\")) cl))))\n" > format args: () > error args: (#<&wrap-error program: > "/tmp/guix-directory.YrSRbV/foo" type: misc-error>) > expected-value: "#!/build/guix-41NMGX/guix-1.2.0~rc1/guile > --no-auto-compile\n#!#; Guix wrapper\n#\\-(begin (let ((current (getenv > \"GUIX_FOO\"))) (setenv \"GUIX_FOO\" (if current (string-append > \"/some/path:/some/other/path\" \":\" current) > \"/some/path:/some/other/path\"))))\n#\\-(let ((cl (command-line))) > (apply execl \"/anything/cabbage-bash-1.2.3/bin/sh\" (car cl) (cons (car > cl) (append (quote (\"\")) > cl))))\n#!/anything/cabbage-bash-1.2.3/bin/sh\n\necho hello world" > actual-value: #f > actual-error: > + (%exception > + #<&wrap-error program: "/tmp/guix-directory.YrSRbV/foo" type: > misc-error>) > result: FAIL Turns out ‘wrap-script’ itself passes a non-literal string to ‘format’, hence this error. I’m fixing this in ‘core-updates’ since it’s a full-rebuild change: commit 55fb5e5d2113a732a03e255371f0172800483023. Thanks, Ludo’.