Provide libstdc++ to manylinux wheels in the Nix dev shell
Django CI/CD / test (push) Failing after 8m50s
Staging deployment / deploy (push) Successful in 24s
Staging deployment / teardown (push) Has been skipped
Django CI/CD / build-and-push (push) Has been skipped

greenlet (pulled in by pytest-playwright) ships a manylinux wheel whose
C extension links against libstdc++.so.6, which the nixpkgs Python
cannot resolve, breaking pytest at plugin-load time. Expose it via an
LD_LIBRARY_PATH scoped to the dev shell.

https://claude.ai/code/session_01BKurBhE3Qj25p7Bfsg7EeK
This commit is contained in:
Claude
2026-06-12 21:30:05 +00:00
parent b68a131bae
commit e7db7eb0e8
+6
View File
@@ -11,6 +11,12 @@ pkgs.mkShell {
pnpm pnpm
]; ];
# manylinux wheels with native extensions (greenlet, pulled in by
# pytest-playwright) link against libstdc++.so.6, which the nixpkgs
# Python cannot find on its default search path. Scoped to this dev
# shell only — a global LD_LIBRARY_PATH would leak into other programs.
LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath [ pkgs.stdenv.cc.cc.lib ];
shellHook = '' shellHook = ''
uv venv --clear uv venv --clear
. .venv/bin/activate . .venv/bin/activate