!rWxyQqNqMUDLECdsIf:blad.is

Poetry2nix

319 Members
https://github.com/nix-community/poetry2nix62 Servers

Load older messages


SenderMessageTime
2 Jan 2024
@cameronraysmith:matrix.orgcameronraysmith *

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs may not be successful ( or possibly cmake needs to be provided elsewhere or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). The other option, which should both disable the wheel and include cmake in the nativeBuildInputs is below and in the thread.

09:16:26
@cameronraysmith:matrix.orgcameronraysmith * Right but preferWheel needs to be set with override ... so I'm missing something about how you combine those two successfully for a single package because it still fails when I compose them. I have tried the obvious constructions I am aware of but still receive the same error as if cmake is absent in the build environment for this package.09:19:42
@cameronraysmith:matrix.orgcameronraysmith * Right but preferWheel needs to be set with override ... so I'm missing something about how you combine those two successfully for a single package because it still fails when I compose them. I have tried the obvious constructions I am aware of but still receive the same error as if cmake is absent in the build environment for this package or the wheel is downloaded when the source should be instead.09:20:10
@das-g:matrix.orgdas-g changed their display name from das-g (DECT 4878) to das-g.11:09:59
@cameronraysmith:matrix.orgcameronraysmith *

Thank you! ... that seems like what I tried, but maybe I didn't get it quite right or there's a more subtle issue with this particular package ... I'll try again

For example

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above. I put a bit more context in the thread above.

15:59:16
@cameronraysmith:matrix.orgcameronraysmith *

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs may not be successful ( or possibly cmake needs to be provided elsewhere or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). The other option, which should both disable the wheel and include cmake in the nativeBuildInputs is below and in this thread.

16:00:04
@cameronraysmith:matrix.orgcameronraysmith *

Thank you! ... that seems like what I tried, but maybe I didn't get it quite right or there's a more subtle issue with this particular package ... I'll try again

For example

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above. I put a bit more of the usage context in the thread above.

16:00:34
@cameronraysmith:matrix.orgcameronraysmith *

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs may not be successful ( or possibly cmake needs to be provided elsewhere or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). The other option, which should both disable the wheel and include cmake in the nativeBuildInputs is below and in this thread.

16:01:35
@cameronraysmith:matrix.orgcameronraysmith *

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is below and in this thread.

16:03:58
@cameronraysmith:matrix.orgcameronraysmith *

Thank you! ... that seems like one of the variants I tried, but maybe I didn't get it quite right or there's a more subtle issue with this particular package ... I'll try again

For example

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above. I put a bit more of the usage context in the thread above.

16:04:52
@cameronraysmith:matrix.orgcameronraysmith *

Thank you! ... that seems like one of the variants I tried, but maybe I didn't get it quite right or there's a more subtle issue with this particular package ... I'll try again

I put a bit more of the intended usage context in the thread above.

16:05:58
@cameronraysmith:matrix.orgcameronraysmith *

For example

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above.

here's a little more context for the attempted usage

        pyPkgsBuildRequirements = {
          cloudpickle = ["flit-core"];
          feather-format = ["setuptools"];
          hydra-core = ["setuptools"];
          hydra-joblib-launcher = ["setuptools"];
          hydra-zen = ["setuptools"];
          marshmallow-jsonschema = ["setuptools"];
          numba = [pkgs.tbb_2021_8];
          session-info = ["setuptools"];
          xdoctest = ["setuptools"];
        };

        poetry2nixOverrides = pkgs.poetry2nix.overrides.withDefaults (
          self: super: let
            buildInputsOverrides =
              builtins.mapAttrs (
                package: buildRequirements:
                  (builtins.getAttr package super).overridePythonAttrs (old: {
                    buildInputs =
                      (old.buildInputs or [])
                      ++ (builtins.map (pkg:
                        if builtins.isString pkg
                        then builtins.getAttr pkg super
                        else pkg)
                      buildRequirements);
                  })
              )
              pyPkgsBuildRequirements;
            conditionalOverrides =
              if pkgs.stdenv.isDarwin
              then {
                grpcio = super.grpcio.override {preferWheel = false;};
              }
              else {};
          in
            buildInputsOverrides
            // {
              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );
              mkdocs-material = super.mkdocs-material.override {preferWheel = false;};
              optax = super.optax.overridePythonAttrs (
                _old: {
                  postInstall = ''
                    rm -f $out/lib/python3.10/site-packages/docs/conf.py
                    rm -fr $out/lib/python3.10/site-packages/docs/__pycache__
                  '';
                }
              );
            }
            // conditionalOverrides
        );

        mkPoetryAttrs = {
          projectDir = ./.;
          overrides = poetry2nixOverrides;
          python = pkgs.python310;
    
          preferWheels = true;
          groups = [
            "test"
          ];
          checkGroups = ["test"];
          extras = [];
        };

        poetryEnv = pkgs.poetry2nix.mkPoetryEnv (
          mkPoetryAttrs
          // {
            extraPackages = ps:
              with pkgs; [
                python310Packages.pip
              ];
          }
        );
16:06:23
@cameronraysmith:matrix.orgcameronraysmith *

Using what K900 ⚡️ suggested below

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above.

here's a little more context for the attempted usage

        pyPkgsBuildRequirements = {
          cloudpickle = ["flit-core"];
          feather-format = ["setuptools"];
          hydra-core = ["setuptools"];
          hydra-joblib-launcher = ["setuptools"];
          hydra-zen = ["setuptools"];
          marshmallow-jsonschema = ["setuptools"];
          numba = [pkgs.tbb_2021_8];
          session-info = ["setuptools"];
          xdoctest = ["setuptools"];
        };

        poetry2nixOverrides = pkgs.poetry2nix.overrides.withDefaults (
          self: super: let
            buildInputsOverrides =
              builtins.mapAttrs (
                package: buildRequirements:
                  (builtins.getAttr package super).overridePythonAttrs (old: {
                    buildInputs =
                      (old.buildInputs or [])
                      ++ (builtins.map (pkg:
                        if builtins.isString pkg
                        then builtins.getAttr pkg super
                        else pkg)
                      buildRequirements);
                  })
              )
              pyPkgsBuildRequirements;
            conditionalOverrides =
              if pkgs.stdenv.isDarwin
              then {
                grpcio = super.grpcio.override {preferWheel = false;};
              }
              else {};
          in
            buildInputsOverrides
            // {
              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );
              mkdocs-material = super.mkdocs-material.override {preferWheel = false;};
              optax = super.optax.overridePythonAttrs (
                _old: {
                  postInstall = ''
                    rm -f $out/lib/python3.10/site-packages/docs/conf.py
                    rm -fr $out/lib/python3.10/site-packages/docs/__pycache__
                  '';
                }
              );
            }
            // conditionalOverrides
        );

        mkPoetryAttrs = {
          projectDir = ./.;
          overrides = poetry2nixOverrides;
          python = pkgs.python310;
    
          preferWheels = true;
          groups = [
            "test"
          ];
          checkGroups = ["test"];
          extras = [];
        };

        poetryEnv = pkgs.poetry2nix.mkPoetryEnv (
          mkPoetryAttrs
          // {
            extraPackages = ps:
              with pkgs; [
                python310Packages.pip
              ];
          }
        );
16:07:39
@cameronraysmith:matrix.orgcameronraysmith *

Using what K900 ⚡️ suggested below

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with "does not appear to contain CMakeLists.txt" because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked above.

16:08:21
@cameronraysmith:matrix.orgcameronraysmith

Here's a little more context for the attempted usage

        pyPkgsBuildRequirements = {
          cloudpickle = ["flit-core"];
          feather-format = ["setuptools"];
          hydra-core = ["setuptools"];
          hydra-joblib-launcher = ["setuptools"];
          hydra-zen = ["setuptools"];
          marshmallow-jsonschema = ["setuptools"];
          numba = [pkgs.tbb_2021_8];
          session-info = ["setuptools"];
          xdoctest = ["setuptools"];
        };

        poetry2nixOverrides = pkgs.poetry2nix.overrides.withDefaults (
          self: super: let
            buildInputsOverrides =
              builtins.mapAttrs (
                package: buildRequirements:
                  (builtins.getAttr package super).overridePythonAttrs (old: {
                    buildInputs =
                      (old.buildInputs or [])
                      ++ (builtins.map (pkg:
                        if builtins.isString pkg
                        then builtins.getAttr pkg super
                        else pkg)
                      buildRequirements);
                  })
              )
              pyPkgsBuildRequirements;
            conditionalOverrides =
              if pkgs.stdenv.isDarwin
              then {
                grpcio = super.grpcio.override {preferWheel = false;};
              }
              else {};
          in
            buildInputsOverrides
            // {
              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );
              mkdocs-material = super.mkdocs-material.override {preferWheel = false;};
              optax = super.optax.overridePythonAttrs (
                _old: {
                  postInstall = ''
                    rm -f $out/lib/python3.10/site-packages/docs/conf.py
                    rm -fr $out/lib/python3.10/site-packages/docs/__pycache__
                  '';
                }
              );
            }
            // conditionalOverrides
        );

        mkPoetryAttrs = {
          projectDir = ./.;
          overrides = poetry2nixOverrides;
          python = pkgs.python310;
    
          preferWheels = true;
          groups = [
            "test"
          ];
          checkGroups = ["test"];
          extras = [];
        };

        poetryEnv = pkgs.poetry2nix.mkPoetryEnv (
          mkPoetryAttrs
          // {
            extraPackages = ps:
              with pkgs; [
                python310Packages.pip
              ];
          }
        );
16:08:25
@cameronraysmith:matrix.orgcameronraysmith *

Using what K900 ⚡️ suggested below

              dm-tree = (super.dm-tree.override {preferWheel = false;}).overridePythonAttrs (
                old: {
                  nativeBuildInputs = (old.nativeBuildInputs or []) ++ [pkgs.cmake];
                }
              );

persists in downloading the wheel and fails with does not appear to contain CMakeLists.txt because it has downloaded the wheel instead of the source. That is successfully disabled, leading to the source download with ONLY dm-tree = super.dm-tree.override {preferWheel = false;}, but then the latter lacks cmake in the build env and fails for that reason at the point linked from the top of the thread.

16:09:13
@cameronraysmith:matrix.orgcameronraysmith * Right but preferWheel needs to be set with override ... so I'm missing something about how you combine those two successfully for a single package because it fails to download the source when I compose them. I have tried the obvious constructions I am aware of but still receive the same error as if cmake is absent in the build environment for this package or the wheel is downloaded when the source should be instead.16:10:04
@cameronraysmith:matrix.orgcameronraysmith *

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

16:11:17
@cameronraysmith:matrix.orgcameronraysmith * Right but preferWheel needs to be set with override ... so I'm missing something about how you combine those two successfully for a single package because it fails to download the source when I compose them. I have tried the obvious constructions I am aware of but still receive the same error related to cmake being absent in the build environment for this package or the wheel is downloaded when the source should be instead. 16:40:48
@cameronraysmith:matrix.orgcameronraysmith * Right but preferWheel needs to be set with override ... so I'm missing something about how you combine those two successfully for a single package because it fails to download the source when I compose them. I have tried the obvious constructions I am aware of but still receive the same error related to cmake being absent in the build environment for this package or the wheel is downloaded prior to running cmake when the source should be instead. 16:41:09
@cameronraysmith:matrix.orgcameronraysmith

I guess my framing of this problem has been a red herring as even if I globally disable wheels I get

Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing pypa-install-hook
Using pypaInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing pip-build-hook
Using pipBuildPhase
Using pipShellHook
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/4wbq0jwhc0hcx499ma4q8ks88shfim2l-dm-tree-0.1.8.tar.gz
source root is dm-tree-0.1.8
setting SOURCE_DATE_EPOCH to timestamp 1671356145 of file dm-tree-0.1.8/setup.cfg
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
fixing cmake files...
cmake flags: -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF -DCMAKE_INSTALL_LOCALEDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/share/doc/dm-tree -DCMAKE_INSTALL_INFODIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/share/man -DCMAKE_INSTALL_OLDINCLUDEDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/include -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/include -DCMAKE_INSTALL_SBINDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_OSX_SYSROOT= -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_STRIP=/nix/store/zh206nri10wwp68g7qf9ccya1irynx5g-clang-wrapper-16.0.6/bin/strip -DCMAKE_RANLIB=/nix/store/zh206nri10wwp68g7qf9ccya1irynx5g-clang-wrapper-16.0.6/bin/ranlib -DCMAKE_AR=/nix/store/zh206nri10wwp68g7qf9ccya1irynx5g-clang-wrapper-16.0.6/bin/ar -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_INSTALL_PREFIX=/nix/store/pgvqbia6i26hbnah9spgcw4sbhsa1zfx-python3.10-dm-tree-0.1.8  
CMake Warning:
  Ignoring extra path from command line:

   ".."


CMake Error: The source directory "/tmp/nix-build-python3.10-dm-tree-0.1.8.drv-0/dm-tree-0.1.8" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
17:00:45
@cameronraysmith:matrix.orgcameronraysmith

which

cmakeFlags = (old.cmakeFlags or [ ]) ++ ["-S ./../tree"];

helps to progress to a new error

17:08:34
@cameronraysmith:matrix.orgcameronraysmithI guess I should've looked upstream first https://github.com/NixOS/nixpkgs/blob/4e44fb9c2673c5b58c44deb7e05bcf312a5862cf/pkgs/development/python-modules/dm-tree/default.nix#L1517:14:00
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

17:29:45
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

17:30:14
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package

since this is broken on darwin, probably one of the better approaches is to ensure chex>=0.1.82 and avoid dm-tree if possible

Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

18:09:58
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package

since this is broken on darwin, probably one of the better approaches is to ensure chex>=0.1.82 and avoid dm-tree if not otherwise essential


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

18:10:30
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package

since this is broken on darwin, if you need crossplatform compatibility, probably one of the better approaches is to ensure chex>=0.1.82 and avoid dm-tree if not otherwise essential


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

18:10:57
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package

since even there this is broken on darwin, if you need crossplatform compatibility, probably one of the better approaches is to ensure chex>=0.1.82 and avoid dm-tree if not otherwise essential


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

18:12:23
@cameronraysmith:matrix.orgcameronraysmith *

tl; dr: should've looked upstream first regarding this particular package

since even after a heroic effort there this is broken on darwin, if you need crossplatform compatibility, probably one of the better approaches is to ensure chex>=0.1.82 and avoid dm-tree if not otherwise essential


Since it's essential to use override instead of overridePythonAttrs to set the value of preferWheel as described in #948, how can you successfully override both preferWheel and, for example, nativeBuildInputs? In this case

              dm-tree = super.dm-tree.override (
                old: {
                  preferWheel = false;
                  nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.cmake ];
                }
              );

successfully disables the global setting of preferWheels = true for the target package but it seems nativeBuildInputs is disregarded in several formulations ( or possibly cmake needs to be provided elsewhere and/or with additional configuration since the build fails where the target package setup.py calls cmake via subprocess to check that cmake is available on the PATH ). Attempting to disable the wheel with override and include cmake in the overridePythonAttrs nativeBuildInputs is further down in this thread.

18:12:42

Show newer messages


Back to Room ListRoom Version: 6