rye: Can't install on WSL2 (libcrypt.so.1)

Steps to Reproduce

I tried to install rye on WSL2 (Linux) but it failed. I tried on two different machines. I also tried after installing libcrypt by following commands but didn’t affect.

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libcrypt1:i386

And

sudo apt-get install libxcrypt-source

Expected Result

Installed successfully.

Actual Result

image

Version Info

WSL2, Windows 11 (Version 22H2, OS Build 22622.575)

$ uname -a
Linux sn-slack 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
$  bash --version
GNU bash, version 5.0.16(1)-release (x86_64-pc-linux-gnu)
$  curl --version
curl 7.87.0 (x86_64-pc-linux-gnu) libcurl/7.87.0 OpenSSL/1.1.1s zlib/1.2.13 brotli/1.0.9 zstd/1.5.2 libidn2/2.3.4 libssh2/1.10.0 nghttp2/1.51.0 librtmp/2.3

Stacktrace

No response

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 21 (4 by maintainers)

Most upvoted comments

Thanks. I documented this case, hopefully next person running into this finds a solution. Other forms of distribution might be an option in the future, for now I want to avoid additional sources of divergence until rye stabilizes.

It sounds like the check on WSL for libcrypt.so.1 might be wrong then. This is where this check is happening: https://github.com/mitsuhiko/rye/blob/d4a63e984d14edf9818d3488bc0c42415f87c522/rye/src/bootstrap.rs#L433-L467

Maybe ldd is lying on WSL, in which case this needs to be either corrected or the check needs to be taken out.

I wonder if the actual problem here is in fact the detection via ldd? I wonder if it would actually work if you were to run the python interpreter directly. Can you try to run ~/.rye/py/cpython@3.11.3/install/bin/python or whatever it tried to put there?

Sorry just to be clear: the library in question is libcrypt.so.1. And in ubuntu it should be in libcrypt1: https://packages.ubuntu.com/mantic/libcrypt1