Subject: [bug#35050] [PATCH] gnu: direnv: Fix build failure.

From: Oleg Pykhalov <[email-masked]>
Date: Fri, 05 Apr 2019 20:22:02 +0300

Leo Famulari <[email-masked]> writes:

> Okay, so we are probably not using the same version of Guix, since those
> Go-language dependencies are not the same.

I checkout the commit you mentioned to make a diff, hm.

> But, that should not cause the issue seen by you and Hydra.
>
> I guess it doesn't matter for direnv when the setup-go-environment phase
> runs, but I'm confused as to why it would make a difference here. Do you
> have a proposed explanation?

Environment variables differs with add-before and add-after.

I guess build fails because of:
-export PWD="/tmp/guix-build-direnv-2.15.2.drv-0/direnv-2.15.2"
+export PWD="/tmp/guix-build-direnv-2.15.2.drv-0/src"

oleg@guixsd ~/src/guix$ diff -ru /tmp/guix-build-direnv-2.15.2.drv-6 /tmp/guix-build-direnv-2.15.2.drv-7 
diff -ru /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/script/str2go /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/script/str2go
--- /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/script/str2go	2018-02-25 15:45:55.000000000 +0300
+++ /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/script/str2go	2018-02-25 15:45:55.000000000 +0300
@@ -1,4 +1,4 @@
-#!/gnu/store/q19l04vd2za80mk1845pz7r8cz29qk43-bash-minimal-4.4.23/bin/sh
+#!/bin/sh
 #
 # Usage: str2go <package_name> <constant_name>
 #
Only in /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2: src
diff -ru /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/stdlib.sh /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/stdlib.sh
--- /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/stdlib.sh	2018-02-25 15:45:55.000000000 +0300
+++ /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/stdlib.sh	2018-02-25 15:45:55.000000000 +0300
@@ -1,4 +1,4 @@
-#!/gnu/store/q19l04vd2za80mk1845pz7r8cz29qk43-bash-minimal-4.4.23/bin/bash
+#!bash
 #
 # These are the commands available in an .envrc context
 #
diff -ru /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/test/direnv-test.sh /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/test/direnv-test.sh
--- /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/test/direnv-test.sh	2018-02-25 15:45:55.000000000 +0300
+++ /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/test/direnv-test.sh	2018-02-25 15:45:55.000000000 +0300
@@ -1,4 +1,4 @@
-#!/gnu/store/q19l04vd2za80mk1845pz7r8cz29qk43-bash-minimal-4.4.23/bin/bash
+#!/usr/bin/env bash
 
 set -e
 
diff: /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/test/scenarios/symlink-bug/foo/bar: recursive directory loop
diff -ru /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/test/show-direnv-diff.sh /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/test/show-direnv-diff.sh
--- /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2/test/show-direnv-diff.sh	2018-02-25 15:45:55.000000000 +0300
+++ /tmp/guix-build-direnv-2.15.2.drv-7/direnv-2.15.2/test/show-direnv-diff.sh	2018-02-25 15:45:55.000000000 +0300
@@ -1,4 +1,4 @@
-#!/gnu/store/q19l04vd2za80mk1845pz7r8cz29qk43-bash-minimal-4.4.23/bin/sh
+#!/bin/sh
 #
 # Small util to display the content of the current DIRENV_DIFF env var.
 #
diff -ru /tmp/guix-build-direnv-2.15.2.drv-6/environment-variables /tmp/guix-build-direnv-2.15.2.drv-7/environment-variables
--- /tmp/guix-build-direnv-2.15.2.drv-6/environment-variables	2019-04-05 20:01:58.249992004 +0300
+++ /tmp/guix-build-direnv-2.15.2.drv-7/environment-variables	2019-04-05 20:02:17.970277164 +0300
@@ -1,7 +1,7 @@
 export CPLUS_INCLUDE_PATH="/gnu/store/j74aabxwayjl9yfyrm6ni482gykxq48b-bzip2-1.0.6/include:/gnu/store/9425b5dwpfc04bb4p58hsjypxghliyr3-xz-5.2.4/include:/gnu/store/ypiyk8ngn79cz655jrl0hng37xv54yjr-file-5.33/include:/gnu/store/l67sib1ld0fgyf0f4vrzyxnmn4yvimvb-gawk-4.2.1/include:/gnu/store/7j3941iannrngdvgbclyxid12vds5w9i-make-4.2.1/include:/gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/include:/gnu/store/n2p1zs14y89lwkg9da68y12pc10c6sw9-gcc-5.5.0/include:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/include:/gnu/store/xha1mk4qji8fmg62nygfzdx0l94ikdhm-linux-libre-headers-4.14.67/include"
 export C_INCLUDE_PATH="/gnu/store/j74aabxwayjl9yfyrm6ni482gykxq48b-bzip2-1.0.6/include:/gnu/store/9425b5dwpfc04bb4p58hsjypxghliyr3-xz-5.2.4/include:/gnu/store/ypiyk8ngn79cz655jrl0hng37xv54yjr-file-5.33/include:/gnu/store/l67sib1ld0fgyf0f4vrzyxnmn4yvimvb-gawk-4.2.1/include:/gnu/store/7j3941iannrngdvgbclyxid12vds5w9i-make-4.2.1/include:/gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/include:/gnu/store/n2p1zs14y89lwkg9da68y12pc10c6sw9-gcc-5.5.0/include:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/include:/gnu/store/xha1mk4qji8fmg62nygfzdx0l94ikdhm-linux-libre-headers-4.14.67/include"
-export GOBIN="/gnu/store/bd2ndnvdml6m0kg8dnrpdbxqndxgm80h-direnv-2.15.2/bin"
-export GOPATH="/tmp/guix-build-direnv-2.15.2.drv-0/direnv-2.15.2"
+export GOBIN="/gnu/store/qvk892wpx6l1fbxcamabjijyldjdq8ph-direnv-2.15.2/bin"
+export GOPATH="/tmp/guix-build-direnv-2.15.2.drv-0"
 export GUIX_LD_WRAPPER_ALLOW_IMPURITIES="no"
 export GUIX_LOCPATH="/gnu/store/mn3ymm3f2r4xjqf8m9fgmadh6b8p6fvr-glibc-utf8-locales-2.28/lib/locale"
 export HOME="/homeless-shelter"
@@ -12,11 +12,11 @@
 export NIX_STORE="/gnu/store"
 export OLDPWD
 export PATH="/gnu/store/29dazsnk3rr5j5kv9wi0p2974an9z9sk-which-2.21/bin:/gnu/store/bl3pxxj6frg0dww8pj5dvh2d1akwvj47-tar-1.30/bin:/gnu/store/h0c398zan9ibhk4w0c944vp5pwgzkfpd-gzip-1.9/bin:/gnu/store/j74aabxwayjl9yfyrm6ni482gykxq48b-bzip2-1.0.6/bin:/gnu/store/9425b5dwpfc04bb4p58hsjypxghliyr3-xz-5.2.4/bin:/gnu/store/ypiyk8ngn79cz655jrl0hng37xv54yjr-file-5.33/bin:/gnu/store/4bzzz0lzjc9b7bfsnqbq2j22d4fvf433-diffutils-3.6/bin:/gnu/store/a4rxl40jr7gmq8bp3dryq4yq67cwkwiw-patch-2.7.6/bin:/gnu/store/fd621k6fmdnr1yiw0lbvw5spqaa169j3-findutils-4.6.0/bin:/gnu/store/l67sib1ld0fgyf0f4vrzyxnmn4yvimvb-gawk-4.2.1/bin:/gnu/store/lmfddplnplxd03bcqv3w9pynbnr1fp8k-sed-4.5/bin:/gnu/store/02k245xy33cvcnr8vm3lagm9zmb1s2wa-grep-3.1/bin:/gnu/store/5s2nib1lrd2101bbrivcl17kjx1mspw6-coreutils-8.30/bin:/gnu/store/7j3941iannrngdvgbclyxid12vds5w9i-make-4.2.1/bin:/gnu/store/q19l04vd2za80mk1845pz7r8cz29qk43-bash-minimal-4.4.23/bin:/gnu/store/9ysmg2739n1ms84lx6hifncgc5l2hiy9-ld-wrapper-0/bin:/gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/bin:/gnu/store/n2p1zs14y89lwkg9da68y12pc10c6sw9-gcc-5.5.0/bin:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/bin:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/sbin:/gnu/store/5kag5g6n4l682pvh16qfjq082v0x02ap-go-1.11.6/bin"
-export PWD="/tmp/guix-build-direnv-2.15.2.drv-0/direnv-2.15.2"
+export PWD="/tmp/guix-build-direnv-2.15.2.drv-0/src"
 export SHLVL="1"
 export SOURCE_DATE_EPOCH="1"
 export TEMP="/tmp/guix-build-direnv-2.15.2.drv-0"
 export TEMPDIR="/tmp/guix-build-direnv-2.15.2.drv-0"
 export TMP="/tmp/guix-build-direnv-2.15.2.drv-0"
 export TMPDIR="/tmp/guix-build-direnv-2.15.2.drv-0"
-export out="/gnu/store/bd2ndnvdml6m0kg8dnrpdbxqndxgm80h-direnv-2.15.2"
+export out="/gnu/store/qvk892wpx6l1fbxcamabjijyldjdq8ph-direnv-2.15.2"
Only in /tmp/guix-build-direnv-2.15.2.drv-7: src
oleg@guixsd ~/src/guix$ ls /tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2 /tmp/guix-build-direnv-2.15.2.drv-7/src
/tmp/guix-build-direnv-2.15.2.drv-6/direnv-2.15.2:
CHANGELOG.md       cmd_dump.go         cmd_hook.go     cmd_watch.go  docs/             file_times_test.go  look_path.go  rc_test.go     shell_json.go  stdlib.go    xdg.go
cmd_allow.go       cmd_edit.go         cmd_prune.go    CNAME         env_diff.go       Gopkg.lock          main.go       README.md      shell_tcsh.go  stdlib.sh
cmd_apply_dump.go  cmd_exec.go         cmd_reload.go   commands.go   env_diff_test.go  Gopkg.toml          Makefile      script/        shell_test.go  test/
cmd_current.go     cmd_expand_path.go  cmd_status.go   config.go     env.go            index.html          man/          shell_bash.go  shell_vim.go   vendor/
cmd_deny.go        cmd_export.go       cmd_stdlib.go   const.go      env_test.go       LICENSE.md          marshal.go    shell_fish.go  shell_zsh.go   version.go
cmd_dotenv.go      cmd_help.go         cmd_version.go  default.nix   file_times.go     log.go              rc.go         shell.go       src/           version.txt

/tmp/guix-build-direnv-2.15.2.drv-7/src:
github.com/
oleg@guixsd ~/src/guix$