cpython: remove libxcrypt on 3.13 and newer

The 3.13 release dropped support for the crypt module, so this dependency
could have been dropped much earlier.

Drops the `withLibxcrypt` argument, because manging the default has
become quite a bit more complicated.
This commit is contained in:
Martin Weinelt
2025-08-13 21:31:46 +02:00
parent c52d7c9c7b
commit 8dbf0b3423
@@ -21,7 +21,6 @@
expat,
libffi,
libuuid,
withLibxcrypt ? !withMinimalDeps,
libxcrypt,
withMpdecimal ? !withMinimalDeps,
mpdecimal,
@@ -145,11 +144,16 @@ let
optionals
optionalString
replaceStrings
versionOlder
;
# mixes libc and libxcrypt headers and libs and causes segfaults on importing crypt
libxcrypt = if stdenv.hostPlatform.isFreeBSD && withMinimalDeps then null else inputs.libxcrypt;
withLibxcrypt =
(!withMinimalDeps)
&&
# mixes libc and libxcrypt headers and libs and causes segfaults on importing crypt
(!stdenv.hostPlatform.isFreeBSD)
&&
# crypt module was removed in 3.13
passthru.pythonOlder "3.13";
buildPackages = pkgsBuildHost;
inherit (passthru) pythonOnBuildForHost;