nix-user-chroot
nix-user-chroot copied to clipboard
Nix cannot be install without `libcrypto.so.1.1` in the environment
During the installation of nix, it complains:
/nix/store/4vz8sh9ngx34ivi0bw5hlycxdhvy5hvz-nix-2.3.7/bin/nix-store: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
There are some other libcrypto.so in /usr/lib, but none of them end with .1.1
$ ls /usr/lib/libcrypto.so
libcrypto.so libcrypto.so.1.0.2k
libcrypto.so.0.9.8e libcrypto.so.6
libcrypto.so.10
Since I don't have the root privilige in that environment, is there some other way to install?
What Linux distribution should be used to reproduce the problem?
Normally Nix should come with its own version of libcrypto.
It's CentOS 7.8.2003.
Do you have libcrypto in the find /nix/store | grep libcrypto?
I don't see openssl directly in the rpath of nix-store:
patchelf --print-rpath $(which nix-store)
/nix/store/cc30c7sap0nlxgh18rwy78m9kwjdxdcr-nix-3.0pre20200829_f156513/lib:/nix/store/6p3zjf89q9p5yjr32dvjnfpr7rnvac83-libsodium-1.0.18/lib:/nix/store/hj11p6ayc6vllvxh5mwpxfkjwzmcz4rf-editline-1.17.0/lib:/nix/store/m38r4asgn7mjbrvzsn0nxaisdccvlgcw-boehm-gc-8.0.4/lib:/nix/store/2gci5q5yz717xycp444wyjxki4mbwwav-zlib-1.2.11/lib:/nix/store/jvjchabdmcxlwjhbiii5sy6d2hcg6z7r-glibc-2.31/lib:/nix/store/mijx85pw9jn3bhzii3jl0kv5m2sjq7zq-gcc-9.3.0-lib/lib
It is a dependency of libnixmain.so on my system:
nix-shell -p pax-utils --run 'lddtree $(which nix-store)'
...
libnixmain.so => /nix/store/cc30c7sap0nlxgh18rwy78m9kwjdxdcr-nix-3.0pre20200829_f156513/lib/libnixmain.so
libcrypto.so.1.1 => /nix/store/zcrf6m8p9di31vrj6qqzskdg9gx2sn5n-openssl-1.1.1g/lib/libcrypto.so.1.
...
Anyway, I suggest you to open an issue in nix itself as well. This might be a packaging bug.
$ find .nix | grep libcrypto
.nix/store/0x3bf23q5lmdq77x5icr7c0ngvz25ms3-openssl-1.1.1g/lib/libcrypto.so
I have just started a virtual machine with the live image of CentOS (KDE), but cannot reproduce the issue. The installation went successful.
Yet another clue: issue #17 "invalid cross-device link" happen on the machine, so I wrote sandbox = false in .nix/etc/nix/nix.conf
But I still cannot reproduce the issue on QEMU and CentOS live image with the above configuration.