| 8 Nov 2023 |
adisbladis | I'd filter it out from triton but you can also just set it to null and hope for the best | 22:22:25 |
adisbladis | Yolo | 22:22:35 |
matthewcroughan - nix.how | path '/home/matthew/git/privateGPT/nix/safetensors/safetensors-0.4.0' does not contain a 'flake.nix', searching up
warning: Git tree '/home/matthew/git/privateGPT' is dirty
error:
… while calling the 'derivationStrict' builtin
at /builtin/derivation.nix:9:12: (source not available)
… while evaluating derivation 'python3-3.11.5-env'
whose name attribute is located at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/stdenv/generic/make-derivation.nix:311:7
… while evaluating attribute 'passAsFile' of derivation 'python3-3.11.5-env'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/build-support/trivial-builders/default.nix:88:7:
87| inherit buildCommand name;
88| passAsFile = [ "buildCommand" ]
| ^
89| ++ (derivationArgs.passAsFile or []);
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/wrapper.nix:20:13:
19| env = let
20| paths = requiredPythonModules (extraLibs ++ [ python ] ) ;
| ^
21| pythonPath = "${placeholder "out"}/${python.sitePackages}";
… while calling 'requiredPythonModules'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:57:27:
56| # Get list of required Python modules given a list of derivations.
57| requiredPythonModules = drvs: let
| ^
58| modules = lib.filter hasPythonModule drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:59:6:
58| modules = lib.filter hasPythonModule drvs;
59| in lib.unique ([python] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPythonModules" modules));
| ^
60|
… while calling 'foldl''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:139:5:
138| # The list to fold
139| list:
| ^
140|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/with-packages.nix:3:19:
2|
3| f: let packages = f pythonPackages; in buildEnv.override { extraLibs = packages; }
| ^
4|
… while calling anonymous lambda
at /nix/store/3mmgnzfgbj4v49apnjai25fd31bwi52a-source/default.nix:366:39:
365| in
366| poetryPython.python.withPackages (ps: envPkgs ++ (extraPackages ps));
| ^
367|
… from call site
at /nix/store/3mmgnzfgbj4v49apnjai25fd31bwi52a-source/default.nix:294:23:
293| */
294| storePackages = requiredPythonModules (builtins.foldl' (acc: v: acc ++ v) [ ] (lib.attrValues inputAttrs));
| ^
295| in
… while calling 'requiredPythonModules'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:57:27:
56| # Get list of required Python modules given a list of derivations.
57| requiredPythonModules = drvs: let
| ^
58| modules = lib.filter hasPythonModule drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:59:6:
58| modules = lib.filter hasPythonModule drvs;
59| in lib.unique ([python] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPythonModules" modules));
| ^
60|
… while calling 'foldl''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:139:5:
138| # The list to fold
139| list:
| ^
140|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:74:33:
73| pythonPath = [ ]; # Deprecated, for compatibility.
74| requiredPythonModules = requiredPythonModules drv.propagatedBuildInputs;
| ^
75| };
… while calling 'requiredPythonModules'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:57:27:
56| # Get list of required Python modules given a list of derivations.
57| requiredPythonModules = drvs: let
| ^
58| modules = lib.filter hasPythonModule drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:59:6:
58| modules = lib.filter hasPythonModule drvs;
59| in lib.unique ([python] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPythonModules" modules));
| ^
60|
… while calling 'foldl''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:139:5:
138| # The list to fold
139| list:
| ^
140|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:74:33:
73| pythonPath = [ ]; # Deprecated, for compatibility.
74| requiredPythonModules = requiredPythonModules drv.propagatedBuildInputs;
| ^
75| };
… while calling 'requiredPythonModules'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:57:27:
56| # Get list of required Python modules given a list of derivations.
57| requiredPythonModules = drvs: let
| ^
58| modules = lib.filter hasPythonModule drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:59:6:
58| modules = lib.filter hasPythonModule drvs;
59| in lib.unique ([python] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPythonModules" modules));
| ^
60|
… while calling 'foldl''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:139:5:
138| # The list to fold
139| list:
| ^
140|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:74:33:
73| pythonPath = [ ]; # Deprecated, for compatibility.
74| requiredPythonModules = requiredPythonModules drv.propagatedBuildInputs;
| ^
75| };
… while calling 'requiredPythonModules'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:57:27:
56| # Get list of required Python modules given a list of derivations.
57| requiredPythonModules = drvs: let
| ^
58| modules = lib.filter hasPythonModule drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/python-packages-base.nix:59:6:
58| modules = lib.filter hasPythonModule drvs;
59| in lib.unique ([python] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPythonModules" modules));
| ^
60|
… while calling 'foldl''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:139:5:
138| # The list to fold
139| list:
| ^
140|
… while calling 'chooseDevOutputs'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/attrsets.nix:1025:5:
1024| # List of packages to pick `dev` outputs from
1025| drvs:
| ^
1026| builtins.map getDev drvs;
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/stdenv/generic/make-derivation.nix:271:52:
270| (map (drv: drv.__spliced.hostHost or drv) (checkDependencyList "depsHostHostPropagated" depsHostHostPropagated))
271| (map (drv: drv.__spliced.hostTarget or drv) (checkDependencyList "propagatedBuildInputs" propagatedBuildInputs))
| ^
272| ]
… while calling 'checkDependencyList''
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/stdenv/generic/make-derivation.nix:224:43:
223| checkDependencyList = checkDependencyList' [];
224| checkDependencyList' = positions: name: deps: lib.flip lib.imap1 deps (index: dep:
| ^
225| if lib.isDerivation dep || dep == null || builtins.isString dep || builtins.isPath dep then dep
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/stdenv/generic/make-derivation.nix:224:49:
223| checkDependencyList = checkDependencyList' [];
224| checkDependencyList' = positions: name: deps: lib.flip lib.imap1 deps (index: dep:
| ^
225| if lib.isDerivation dep || dep == null || builtins.isString dep || builtins.isPath dep then dep
… while calling 'flip'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/trivial.nix:138:16:
137| */
138| flip = f: a: b: f b a;
| ^
139|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/trivial.nix:138:19:
137| */
138| flip = f: a: b: f b a;
| ^
139|
… while calling 'imap1'
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/lib/lists.nix:165:14:
164| */
165| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
| ^
166|
… from call site
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/mk-python-derivation.nix:254:29:
253|
254| propagatedBuildInputs = validatePythonMatches "propagatedBuildInputs" (propagatedBuildInputs ++ [
| ^
255| # we propagate python even for packages transformed with 'toPythonApplication'
… while calling anonymous lambda
at /nix/store/kcmipm57ph9bpzz8bs80iiijiwbyzwy3-source/pkgs/development/interpreters/python/mk-python-derivation.nix:178:8:
177|
178| in inputs: builtins.map (checkDrv) inputs;
| ^
179|
… while calling anonymous lambda
at /nix/store/3mmgnzfgbj4v49apnjai25fd31bwi52a-source/overrides/default.nix:3189:50:
3188| triton = super.triton.overridePythonAttrs (old: {
3189| propagatedBuildInputs = builtins.filter (e: e.pname != "torch") old.propagatedBuildInputs;
| ^
3190| pipInstallFlags = [ "--no-deps" ];
error: value is null while a set was expected
| 22:22:43 |
matthewcroughan - nix.how | here's the trace from when I set cmake to null which at least tells us why it's there | 22:22:55 |
matthewcroughan - nix.how | lol | 22:23:33 |
matthewcroughan - nix.how | as you said, more or less | 22:23:41 |
adisbladis | Yeah, just move the filtering to triton | 22:23:56 |
adisbladis | It's funny that they don't even publish sdists but still have cmake listed :P | 22:24:16 |
matthewcroughan - nix.how | ah, apparently I do need cmake for another reason | 22:25:43 |
matthewcroughan - nix.how | oh nvm, I just am too dumb to know what you mean by filtering it | 22:26:12 |
adisbladis | propagatedBuildInputs = builtins.filter (e: e.pname != "cmake") old.propagatedBuildInputs; | 22:26:45 |
matthewcroughan - nix.how | yeah that's what I did | 22:27:10 |
matthewcroughan - nix.how | guess it's not in propagated, native maybe | 22:27:14 |
matthewcroughan - nix.how | https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/development/python-modules/openai-triton/default.nix#L150 | 22:28:49 |
matthewcroughan - nix.how | openai-triton won't be being used by the overlay though, since of the naming mismatch | 22:29:07 |
matthewcroughan - nix.how | even though I think this is the correct one | 22:29:14 |
adisbladis | They do source builds https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/development/python-modules/openai-triton/default.nix#L57-L62 | 22:29:33 |
adisbladis | So it's correct for them to have cmake | 22:29:38 |
matthewcroughan - nix.how | right, so I do need cmake, and I need to fix cmake | 22:29:55 |
adisbladis | No, you don't | 22:30:12 |
adisbladis | Cmake is something you need when building from source | 22:30:19 |
matthewcroughan - nix.how | and in this case I have a dist but it is still trying to use cmake, and I'm trying to get rid of cmake | 22:30:36 |
adisbladis | Upstream has some buggy dependency definitions, like all other crappy "data science" packages | 22:30:44 |
matthewcroughan - nix.how | it's not in the propagatedBuildInputs, and I can't remove it from native because something in the list doesn't have pname | 22:30:51 |
adisbladis | The thing in the list that doesn't have pname is probably cmake which you just set to null | 22:31:18 |
adisbladis | matthewcroughan - nix.how: I think you'd benefit from calming down a bit and try and understand why the dependencies exist | 22:31:52 |
matthewcroughan - nix.how | I'm not angry? Lol | 22:31:58 |
adisbladis | No, but very hurried | 22:32:04 |
matthewcroughan - nix.how | Do you blame me? Is Python calming for you? | 22:32:31 |
matthewcroughan - nix.how | I had this thing working, then I found out about poetry groups, now I have 10 more overrides to make :D | 22:33:00 |