guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bootstrap script only works with guix environment, not with guix she


From: Ekaitz Zarraga
Subject: Re: Bootstrap script only works with guix environment, not with guix shell
Date: Fri, 08 Jul 2022 22:07:34 +0000

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
Ethical Innovation

------- Original Message -------
On Saturday, July 9th, 2022 at 12:02 AM, Zelphir Kaltstahl <zelphirkaltstahl@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>
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

[Prev in Thread] Current Thread [Next in Thread]