On Mon, 2019-09-09 at 02:49 +0200, Jan wrote: > Hi, I'm a new Guix user and I wanted to hack on Guix and update a > package, I hadn't known exactly how to do this, so I started > following > instructions from > https://guix.gnu.org/manual/en/html_node/Running-Guix-Before-It-Is-In > stalled.html#Running-Guix-Before-It-Is-Installed > and > https://guix.gnu.org/blog/2018/a-packaging-tutorial-for-guix/ > > The situation started to be interesting, when the tutorial told me to > run "cd $GUIX_CHECKOUT" and "./pre-inst-env guix package > --list-available=ruby" > I was confused, because I couldn't find any "./pre-inst-env" file, so > I > used 'find' to search for it and there were one file with a similar > name > in $GUIX_CHECKOUT/build-aux - ./pre-inst-env.in (as I'm composing > this > email now I see that's stupid, but I tried using this file, as I > don't > know what I was doing (still don't know)) > So I started running the following stupid commands: > > ---------------- > user@machine ~/Prog/repo/guix [env]$ sudo -E ./pre-inst-env.in > guix-daemon --build-users-group=guixbuild > > sudo: /gnu/store/z26h622slm8p61myhk45v3jjg8p7qm8z-profile/bin/sudo > must > be owned by uid 0 and have the setuid bit set > > user@machine ~/Prog/repo/guix [env]$ ./pre-inst-env.in > bash: ./pre-inst-env.in: No such file or directory > user@machine ~/Prog/repo/guix [env]$ cd build-aux/ > user@machine ~/Prog/repo/guix/build-aux [env]$ sudo > -E ./pre-inst-env.in guix-daemon --build-users-group=guixbuild > sudo: /gnu/store/z26h622slm8p61myhk45v3jjg8p7qm8z-profile/bin/sudo > must > be owned by uid 0 and have the setuid bit set > user@machine ~/Prog/repo/guix/build-aux [env]$ exit > --------------- > > And then: > > ------------------ > user@machine ~/Prog/repo/guix/build-aux$ chmod +x ./pre-inst-env.in > user@machine ~/Prog/repo/guix/build-aux$ sudo -E ./pre-inst-env.in > guix-daemon --build-users-group=guixbuild Password: > ./pre-inst-env.in: line 33: cd: @abs_top_srcdir@: > there is no such file or directory > ./pre-inst-env.in: line 34: cd: > @abs_top_builddir@: there is no such file or directory > -------------------- > > And after that I couldn't run "guix > environment" anymore, it threw an error: > > guix environment: error: failed to connect to > `/var/guix/daemon-socket/socket': Connection refused > > Restarting the computer helps, but doing the same stuff breaks it > again, so guess it's reproducible. > > After doing it I ran the "history" command so you can know what I did > exactly (some commands were unfortunately run in an environment and I > can't provide them), here it is: > > 371 git clone --recurse-submodules > git://git.savannah.gnu.org/guix.git > 372 guix environment guix --pure > 373 sudo -E > 374 sudo --help > 375 guix environment guix --pure > 376 guix environment guix --pure --ad-hoc sudo > 377 ls > 378 cd guix/ > 379 ls > 380 cd build-aux/ > 381 ls > 382 . > 383 guix environment guix --pure > 384 chmod +x ./pre-inst-env.in > 385 sudo -E ./pre-inst-env.in guix-daemon > --build-users-group=guixbuild > 386 ls > 387 cd .. > 388 ./configure > 389 guix environment guix --pure > 390 history > > As stupid and complicated as it is, something is definitely broken > here. > > Sincerely, > Jan Wielkiewicz > > >
pre-inst-env.in is for generating the pre-inst-env script. Have you tried: ./bootstrap ./configure This should generate pre-inst-env for you. Also, make sure the guix daemon is running after you restart.