Hi,
Isn't `guix environment guix` equivalent to `guix shell -D guix`?
I think you are missing a -D there so it's adding a shell with guix and not 
with its development dependencies.

Hope that helps,
Ekaitz

[ElenQ Technology](https://elenq.tech)
Ethical Innovation

------- Original Message -------
On Saturday, July 9th, 2022 at 12:02 AM, Zelphir Kaltstahl 
<zelphirkaltst...@posteo.de> wrote:

> On 7/8/22 23:57, Zelphir Kaltstahl wrote:
>
>> Hello Guix developers!
>>
>> I am messing around again with updating a package and according to my own 
>> guide from previous adventures, I have to run the following command to 
>> generate the `pre-inst-env` script, in the root directory of the guix 
>> sources:
>>
>> ~~~~
>> guix environment guix -- ./bootstrap
>> ~~~~
>>
>> But then I remembered, that actually `guix shell` is the newer thing and 
>> changed it to:
>>
>> ~~~~
>> guix shell guix -- ./bootstrap
>> ~~~~
>>
>> However, this does not work. I get an error:
>>
>> ~~~~
>> $ guix shell guix -- ./bootstrap
>> + find po/doc -type f -name guix-manual*.po
>> + sed -e s,.*/guix-manual\.,,;s,\.po$,,
>> + langs=fr
>> ru
>> es
>> pt_BR
>> de
>> zh_CN
>> + [ ! -e doc/guix.fr.texi ]
>> + [ ! -e doc/guix.ru.texi ]
>> + [ ! -e doc/guix.es.texi ]
>> + [ ! -e doc/guix.pt_BR.texi ]
>> + [ ! -e doc/guix.de.texi ]
>> + [ ! -e doc/guix.zh_CN.texi ]
>> + find po/doc -type f -name guix-cookbook*.po
>> + sed -e s,.*/guix-cookbook\.,,;s,\.po$,,
>> + langs=de
>> fr
>> sk
>> ko
>> + [ ! -e doc/guix-cookbook.de.texi ]
>> + [ ! -e doc/guix-cookbook.fr.texi ]
>> + [ ! -e doc/guix-cookbook.sk.texi ]
>> + [ ! -e doc/guix-cookbook.ko.texi ]
>> + exec autoreconf -vfi
>> autoreconf: Entering directory `.'
>> autoreconf: running: autopoint --force
>> autoreconf: running: aclocal --force -I m4
>> autoreconf: configure.ac: tracing
>> autoreconf: configure.ac: not using Libtool
>> autoreconf: running: /usr/bin/autoconf --force
>> configure.ac:92: error: possibly undefined macro: GUILE_MODULE_AVAILABLE
>>       If this token and others are legitimate, please use m4_pattern_allow.
>>       See the Autoconf documentation.
>> configure.ac:99: error: possibly undefined macro: GUILE_PKG
>> configure.ac:100: error: possibly undefined macro: GUILE_PROGS
>> autoreconf: /usr/bin/autoconf failed with exit status: 1
>> ~~~~
>>
>> When I use `guix environment` it works:
>>
>> ~~~~
>>  guix environment guix -- ./bootstrap
>> + find po/doc -type f -name guix-manual*.po
>> + sed -e s,.*/guix-manual\.,,;s,\.po$,,
>> + langs=fr
>> ru
>> es
>> pt_BR
>> de
>> zh_CN
>> + [ ! -e doc/guix.fr.texi ]
>> + [ ! -e doc/guix.ru.texi ]
>> + [ ! -e doc/guix.es.texi ]
>> + [ ! -e doc/guix.pt_BR.texi ]
>> + [ ! -e doc/guix.de.texi ]
>> + [ ! -e doc/guix.zh_CN.texi ]
>> + find po/doc -type f -name guix-cookbook*.po
>> + sed -e s,.*/guix-cookbook\.,,;s,\.po$,,
>> + langs=de
>> fr
>> sk
>> ko
>> + [ ! -e doc/guix-cookbook.de.texi ]
>> + [ ! -e doc/guix-cookbook.fr.texi ]
>> + [ ! -e doc/guix-cookbook.sk.texi ]
>> + [ ! -e doc/guix-cookbook.ko.texi ]
>> + exec autoreconf -vfi
>> autoreconf: Entering directory `.'
>> autoreconf: running: autopoint --force
>> autoreconf: running: aclocal --force -I m4
>> autoreconf: configure.ac: tracing
>> autoreconf: configure.ac: not using Libtool
>> autoreconf: running: 
>> /gnu/store/km9l89sd4wm9jp358481v2z6qacwl2h9-autoconf-2.69/bin/autoconf 
>> --force
>> autoreconf: running: 
>> /gnu/store/km9l89sd4wm9jp358481v2z6qacwl2h9-autoconf-2.69/bin/autoheader 
>> --force
>> autoreconf: running: automake --add-missing --copy --force-missing
>> Makefile.am:816: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS
>> autoreconf: Leaving directory `.'
>> ~~~~
>>
>> I do not know, if this is intentional or not, but I thought that `guix 
>> environment` will be phased out or something.
>>
>> Here is my installed guix version:
>>
>> ~~~~
>> $ guix describe
>>   guix d7d2340
>>     repository URL:
>> https://git.savannah.gnu.org/git/guix.git
>> branch: master
>>     commit: d7d23407213247d0173eabd2c769f2b98cef4fe9
>>
>> $ guix --version
>> guix (GNU Guix) 0
>> Copyright (C) 2022 the Guix authors
>> License GPLv3+: GNU GPL version 3 or later
>> [<http://gnu.org/licenses/gpl.html>](http://gnu.org/licenses/gpl.html)
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.
>> ~~~~
>>
>> I did `guix pull && guix package -u` just a few minutes ago, so everything 
>> should be quite up-to-date.
>>
>> Best regards,
>> Zelphir
>>
>> --
>> repositories:
>> https://notabug.org/ZelphirKaltstahl
>
> Addendum:
>
> I just noticed, that also the next step `guix shell guix -- ./configure 
> --localstatedir=/var` does not work, but `guix environment guix -- 
> ./configure --localstatedir=/var` does work:
>
> ~~~~
> $ guix shell guix -- ./configure --localstatedir=/var
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether make supports nested variables... yes
> checking whether UID '1000' is supported by ustar format... yes
> checking whether GID '1000' is supported by ustar format... yes
> checking how to create a ustar tar archive... gnutar
> checking whether make supports nested variables... (cached) yes
> checking whether make supports the include directive... yes (GNU style)
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking whether gcc understands -c and -o together... yes
> checking dependency style of gcc... gcc3
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /usr/bin/grep
> checking for egrep... /usr/bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking minix/config.h usability... no
> checking minix/config.h presence... no
> checking for minix/config.h... no
> checking whether it is safe to define __EXTENSIONS__... yes
> checking for a sed that does not truncate output... /usr/bin/sed
> checking whether NLS is requested... yes
> checking for msgfmt... no
> checking for gmsgfmt... :
> checking for xgettext... no
> checking for msgmerge... no
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... x86_64-pc-linux-gnu
> checking for ld used by gcc... /usr/bin/ld
> checking if the linker (/usr/bin/ld) is GNU ld... yes
> checking for shared library run path origin... done
> checking for CFPreferencesCopyAppValue... no
> checking for CFLocaleCopyCurrent... no
> checking for GNU gettext in libc... yes
> checking whether to use NLS... yes
> checking where the gettext function comes from... libc
> checking for sed... (cached) /usr/bin/sed
> checking for the Guix system type... x86_64-linux
> checking for the store directory... /gnu/store
> checking the length of the installed socket file name... 30
> checking for unit test root directory... /home/xiaolong/dev/guix/test-tmp
> checking the length of the socket file name used in tests... 64
> checking the length of a typical hash bang line... 73
> checking the length of a hash bang line used in tests... 101
> checking for pkg-config... /usr/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> configure: checking for guile 3.0
> configure: error:
> No Guile development packages were found.
>
> Please verify that you have Guile installed.  If you installed Guile
> from a binary distribution, please verify that you have also installed
> the development packages.  If you installed it yourself, you might need
> to adjust your PKG_CONFIG_PATH; see the pkg-config man page for more.
>
> $ guix environment guix -- ./configure --localstatedir=/var
> checking for a BSD-compatible install... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether make supports nested variables... yes
> checking whether UID '1000' is supported by ustar format... yes
> checking whether GID '1000' is supported by ustar format... yes
> checking how to create a ustar tar archive... gnutar
> checking whether make supports nested variables... (cached) yes
> checking whether make supports the include directive... yes (GNU style)
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking whether gcc understands -c and -o together... yes
> checking dependency style of gcc... gcc3
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/grep
> checking for egrep... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking minix/config.h usability... no
> checking minix/config.h presence... no
> checking for minix/config.h... no
> checking whether it is safe to define __EXTENSIONS__... yes
> checking for a sed that does not truncate output... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/sed
> checking whether NLS is requested... yes
> checking for msgfmt... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/msgfmt
> checking for gmsgfmt... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/msgfmt
> checking for xgettext... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/xgettext
> checking for msgmerge... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/msgmerge
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... x86_64-pc-linux-gnu
> checking for ld used by gcc... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/ld
> checking if the linker 
> (/gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/ld) is GNU ld... yes
> checking for shared library run path origin... done
> checking for CFPreferencesCopyAppValue... no
> checking for CFLocaleCopyCurrent... no
> checking for GNU gettext in libc... yes
> checking whether to use NLS... yes
> checking where the gettext function comes from... libc
> checking for sed... (cached) 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/sed
> checking for the Guix system type... x86_64-linux
> checking for the store directory... /gnu/store
> checking the length of the installed socket file name... 30
> checking for unit test root directory... /home/xiaolong/dev/guix/test-tmp
> checking the length of the socket file name used in tests... 64
> checking the length of a typical hash bang line... 73
> checking the length of a hash bang line used in tests... 101
> checking for pkg-config... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> configure: checking for guile 3.0
> configure: found guile 3.0
> checking for guile-3.0... no
> checking for guile3.0... no
> checking for guile-3... no
> checking for guile3... no
> checking for guile... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile
> checking for Guile version >= 3.0... 3.0.8
> checking for guild... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guild
> checking for guile-config... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile-config
> checking for guile-3.0 >= 3.0.3... yes
> checking for guile-3.0... yes
> checking if (gnutls) is available... yes
> checking if (git) is available... yes
> checking whether Guile-JSON is available and recent enough... yes
> checking whether Guile-Sqlite3 is available and recent enough... yes
> checking whether Guile-Gcrypt is available and recent enough... yes
> checking whether Guile-Git is available and recent enough... yes
> checking if (htmlprag) exports `%strict-tokenizer?'... yes
> checking whether Guile-zlib is available and recent enough... yes
> checking if (lzlib) is available... yes
> checking if (avahi) is available... yes
> checking if (newt) is available... no
> checking whether 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile provides 
> feature 'regex'... yes
> checking whether 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile provides 
> feature 'posix'... yes
> checking whether 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile provides 
> feature 'socket'... yes
> checking whether 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile provides 
> feature 'net-db'... yes
> checking whether 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile provides 
> feature 'threads'... yes
> checking for a sed that does not truncate output... (cached) 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/sed
> checking for gzip... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/gzip
> checking for bzip2... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/bzip2
> checking for xz... /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/xz
> checking for libgcrypt-config... 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/libgcrypt-config
> checking libgcrypt's library directory... 
> /gnu/store/3kl94m3ksm45a880b6lnn3kagk857lj9-libgcrypt-1.8.8/lib
> checking whether Guile-SSH is available and recent enough... yes
> checking whether to build daemon... yes
> checking for g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking dependency style of g++... gcc3
> checking for ar... ar
> checking the archiver (ar) interface... ar
> checking whether g++ supports C++11... yes
> checking for ranlib... ranlib
> checking for special C compiler options needed for large files... no
> checking for _FILE_OFFSET_BITS value needed for large files... no
> checking for gzdopen in -lz... yes
> checking how to run the C++ preprocessor... g++ -E
> checking zlib.h usability... yes
> checking zlib.h presence... yes
> checking for zlib.h... yes
> checking for BZ2_bzWriteOpen in -lbz2... yes
> checking bzlib.h usability... yes
> checking bzlib.h presence... yes
> checking for bzlib.h... yes
> checking for sqlite3 >= 3.6.19... yes
> checking for gcry_md_open in -lgcrypt... yes
> checking gcrypt.h usability... yes
> checking gcrypt.h presence... yes
> checking for gcrypt.h... yes
> checking for chroot... yes
> checking for unshare... yes
> checking sched.h usability... yes
> checking sched.h presence... yes
> checking for sched.h... yes
> checking sys/param.h usability... yes
> checking sys/param.h presence... yes
> checking for sys/param.h... yes
> checking sys/mount.h usability... yes
> checking sys/mount.h presence... yes
> checking for sys/mount.h... yes
> checking sys/syscall.h usability... yes
> checking sys/syscall.h presence... yes
> checking for sys/syscall.h... yes
> checking for lutimes... yes
> checking for lchown... yes
> checking for posix_fallocate... yes
> checking for sched_setaffinity... yes
> checking for statvfs... yes
> checking for nanosleep... yes
> checking for strsignal... yes
> checking for statx... yes
> checking locale usability... yes
> checking locale presence... yes
> checking for locale... yes
> checking sys/personality.h usability... yes
> checking sys/personality.h presence... yes
> checking for sys/personality.h... yes
> checking for default substitute URLs...
> https://ci.guix.gnu.org
>
> https://bordeaux.guix.gnu.org
> checking whether Guile-SSH is available and recent enough... (cached) yes
> checking for unit test root directory... (cached) 
> /home/xiaolong/dev/guix/test-tmp
> checking for guile... (cached) 
> /gnu/store/18zvp6m7c63r66849g0pj20bxi3mc501-profile/bin/guile
> checking the current installation's localstatedir... none
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating po/guix/Makefile.in
> config.status: creating po/packages/Makefile.in
> config.status: creating etc/guix-daemon.cil
> config.status: creating guix/config.scm
> config.status: creating etc/committer.scm
> config.status: creating etc/teams.scm
> config.status: creating test-env
> config.status: creating pre-inst-env
> config.status: creating nix/config.h
> config.status: executing depfiles commands
> config.status: executing po-directories commands
> config.status: creating po/guix/POTFILES
> config.status: creating po/guix/Makefile
> config.status: creating po/packages/POTFILES
> config.status: creating po/packages/Makefile
> ~~~~
>
> --
> repositories:
> https://notabug.org/ZelphirKaltstahl

Reply via email to