| 7 May 2025 |
K900 | Are you trying to do Canadian cross | 21:09:37 |
K900 | Also can we PLEASE kill targetPlatform | 21:09:43 |
K900 | Yes I will keep bringing this up | 21:09:50 |
szlend | I'm trying to wire up a spliced package set with makeScopeWithSplicing that is not overlayed on top of pkgs. Usually you would wire it up with generateSplicesForMkScope, but that's not an option here. You can wire up otherSplices naively with recursion, but that explodes evaluation very quickly, as it unnecessarily evaluates against the same pkgs<host><target> instances. | 21:20:43 |
SomeoneSerge (back on matrix) | I was very stupidly confused about this even though there are only two kinds of "offsets" in the end. I just couldn't figure out which sense is meant in any particular place. TLDR: Offsets in Nixpkgs manual are points, but {host,target}Offsets in setup-hooks are vectors | 21:21:51 |
szlend | This is my understanding of how perspective shifts, but I could be very wrong: https://gist.github.com/szlend/62bfa710ff89b7dc3a871693ca34c94c | 21:22:38 |
szlend | So I kinda wanna confirm it :D | 21:22:45 |
SomeoneSerge (back on matrix) | Does root refer to the current derivation? | 21:25:44 |
K900 | Can you not overlay it on pkgs? | 21:27:35 |
szlend | I'm thinking about it like root == pkgsCross.<platform> == pkgsCross.<platform>.pkgsHostTarget (assuming those are equivalent) | 21:27:44 |
szlend | so pkgsCross.<platform>.pkgsBuildHost.pkgsBuildTarget == pkgsCross.<platform>.pkgsHostHost | 21:28:39 |
szlend | * so pkgsCross.<platform>.pkgsBuildHost.pkgsTargetTarget == pkgsCross.<platform>.pkgsHostHost | 21:28:57 |
szlend | or maybe root.pkgsBuildHost.pkgsTargetTarget == root.pkgsHostTarget (since targetTarget is +1,+1) | 21:36:15 |
SomeoneSerge (back on matrix) | It's the former, because ps: ps.pkgsTargetTarget translates by the vector of (1, 0), which is how you get from the point (0, 1) (pkgs = pkgsHostTarget) to the point (1, 1) (pkgs.pkgsTargetTarget) | 21:41:55 |
SomeoneSerge (back on matrix) | Setup-hooks here print the accumulated vectors, but not the result of translating the current' derivation's platforms (0, 1) by that vector | 21:44:01 |
szlend | I see yeah, thanks! I think I actually got it then | 21:48:52 |
| 8 May 2025 |
| 98765abc changed their profile picture. | 11:35:04 |
@curid:matrix.org | Redacted or Malformed Event | 19:03:13 |
@curid:matrix.org | Is there a better way to write this?
NIX_CFLAGS_COMPILE = if pkgs.system == "aarch64-unknown-linux-gnu" then "" else "-msse4.2" | 19:14:52 |
K900 | if !stdenv.hostPlatform.isx86 | 19:17:58 |
K900 | Or rather | 19:18:10 |
K900 | lib.optionalString stdenv.hostPlatform.isx86 "-msse4.2" | 19:18:21 |
| 9 May 2025 |
@curid:matrix.org | let
# latest unstable
pkgs = (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/b3582c75c7f21ce0b429898980eddbbf05c68e55.tar.gz")
{
crossSystem = "aarch64-unknown-linux-gnu";
}).__splicedPackages;
in pkgs.mkShell {
buildInputs = [ pkgs.cpuid ];
}
src/x86/cpuid.c:138:10: fatal error: cpuid.h: No such file or directory
138 | #include <cpuid.h>
It seems to build x86 specific files https://github.com/pytorch/cpuinfo/blob/main/CMakeLists.txt
| 16:15:48 |
Tristan Ross |
- Use
packages
- Add
cmake (& optionally ninja) to packages
| 16:24:51 |
@curid:matrix.org | I'm stupid, the cpuid package has nothing to do with cpuid.h | 16:37:11 |
@curid:matrix.org | 🤔
> CMake Error at CMakeLists.txt:71 (MESSAGE):
> Unrecognized CMAKE_SYSTEM_PROCESSOR value "x86_64"
https://github.com/google/XNNPACK/blob/659147817805d17c7be2d60bd7bbca7e780f9c82/CMakeLists.txt#L71
| 18:30:29 |
| 10 May 2025 |
@curid:matrix.org | How can I tell mkDerivation that the CMakeLists.txt isn't in the root dir? https://github.com/google/gemmlowp/tree/master/contrib | 17:16:18 |
@curid:matrix.org | I'd ask in the main room if I could join it | 17:16:23 |
K900 | sourceRoot | 17:16:35 |
K900 | Also invited to the main room | 17:16:50 |