summary refs log tree commit diff
path: root/shell.nix
diff options
context:
space:
mode:
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix8
1 files changed, 8 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
index 4701c83bb6..a96aa840de 100644
--- a/shell.nix
+++ b/shell.nix
@@ -29,6 +29,14 @@ let
   pythonEnv = poetry2nix.mkPoetryEnv {
     projectDir = ./util/nix;
     overrides = poetry2nix.overrides.withDefaults (self: super: {
+      pillow = super.pillow.overridePythonAttrs(old: {
+        # Use preConfigure from nixpkgs to fix library detection issues and
+        # impurities which can break the build process; this also requires
+        # adding propagatedBuildInputs and buildInputs from the same source.
+        propagatedBuildInputs = (old.buildInputs or []) ++ pkgs.python3.pkgs.pillow.propagatedBuildInputs;
+        buildInputs = (old.buildInputs or []) ++ pkgs.python3.pkgs.pillow.buildInputs;
+        preConfigure = (old.preConfigure or "") + pkgs.python3.pkgs.pillow.preConfigure;
+      });
       qmk = super.qmk.overridePythonAttrs(old: {
         # Allow QMK CLI to run "qmk" as a subprocess (the wrapper changes
         # $PATH and breaks these invocations).