Skip to content

Commit

Permalink
python3: break infinite recursion
Browse files Browse the repository at this point in the history
Checking if openssl is a derivation requires evaluating stdenv.cc, which
depends on mlibc when cross compiling to a mlibc platform, which depends
on meson, which depends on Python.

See previous commit 0070883 on why the recursion break happens in the
Python expression.
  • Loading branch information
Artturin authored and lzcunt committed Jan 5, 2025
1 parent 8be6be6 commit 9a4715a
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions pkgs/development/interpreters/python/cpython/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ let

passthru = let
# When we override the interpreter we also need to override the spliced versions of the interpreter
# bluez is excluded manually to break an infinite recursion.
inputs' = lib.filterAttrs (n: v: n != "bluez" && n != "passthruFun" && ! lib.isDerivation v) inputs;
# bluez and openssl are excluded manually to break infinite recursion errors.
inputs' = lib.filterAttrs (n: v: n != "bluez" && n != "openssl" && n != "passthruFun" && ! lib.isDerivation v) inputs;
override = attr: let python = attr.override (inputs' // { self = python; }); in python;
in passthruFun rec {
inherit self sourceVersion packageOverrides;
Expand Down

0 comments on commit 9a4715a

Please sign in to comment.