!UNVBThoJtlIiVwiDjU:nixos.org

Staging

372 Members
Staging merges | Find currently open staging-next PRs: https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+sort%3Aupdated-desc+head%3Astaging-next+head%3Astaging-next-21.05+is%3Aopen119 Servers

Load older messages


SenderMessageTime
24 Apr 2026
@matthewcroughan:defenestrate.itmatthewcroughanIt's kind of been sitting there for a bit, I wanted to speed it up, I can almost guarantee that if I do nothing it'll still be there in a week, and nobody will review it.14:13:51
@matthewcroughan:defenestrate.itmatthewcroughanWhich would be fine if it weren't such a trivial change14:15:05
@qyliss:fairydust.spaceAlyssa RossI think I need to start being less indirect when I'm writing commetns on your PRs :) In this case, what I meant is "if you confirm that your best guess is that upstream would probably consider it sensible to list this in their pyproject.toml dependencies, I would merge the PR if it were changed to do that"14:16:36
@matthewcroughan:defenestrate.itmatthewcroughanRather my understanding is that this mistake of putting pybind11 in nativeBuildInputs seems to be common throughout nixpkgs14:17:16
@qyliss:fairydust.spaceAlyssa RossI wonder why that specifically14:17:52
@matthewcroughan:defenestrate.itmatthewcroughan and that this is one example of a trivial fix, but I didn't understand what build-system mapped to until you commented 14:17:56
@matthewcroughan:defenestrate.itmatthewcroughanThere's another package I can test this on actually14:19:36
@matthewcroughan:defenestrate.itmatthewcroughan laszip 14:20:00
@matthewcroughan:defenestrate.itmatthewcroughan In that case, pybind11 is in build-system but cross works 14:20:12
@matthewcroughan:defenestrate.itmatthewcroughanOh, that doesn't seem to contain pybind, is my grep fscked up14:21:40
@matthewcroughan:defenestrate.itmatthewcroughan Uh no there is pkgs/by-name/la/laszip and pkgs/development/python-modules/laszip 14:22:28
@matthewcroughan:defenestrate.itmatthewcroughan is it considered an issue when there is a by-name package that name clashes with something in a package set? 14:22:42
@matthewcroughan:defenestrate.itmatthewcroughanSo ignore what I said.. let me try that again..14:23:01
@matthewcroughan:defenestrate.itmatthewcroughanYes! My assumptions are correct :)14:23:40
@matthewcroughan:defenestrate.itmatthewcroughan

nix-build -A pkgsCross.raspberryPi.python3Packages.laszip fails like:

CMake Error at /nix/store/y4ippakbr3qyk3kv6iskdwix6jha5hbb-python3.13-pybind11-3.0.1/share/cmake/pybind11/FindPythonLibsNew.cmake:224 (message):
  Python config failure: Python is 64-bit, chosen compiler is 32-bit
14:23:56
@matthewcroughan:defenestrate.itmatthewcroughanOr not, seems this has nothing to do with pybind, although it was a good candidate14:24:32
@matthewcroughan:defenestrate.itmatthewcroughanOh wait yes it does, pybind is containing the cmake file that is producing that error14:25:58
@matthewcroughan:defenestrate.itmatthewcroughan
if(NOT _PYBIND11_CROSSCOMPILING
   AND CMAKE_SIZEOF_VOID_P
   AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZEOF_VOID_P}"))
  if(PythonLibsNew_FIND_REQUIRED)
    math(EXPR _PYTHON_BITS "${PYTHON_SIZEOF_VOID_P} * 8")
    math(EXPR _CMAKE_BITS "${CMAKE_SIZEOF_VOID_P} * 8")
    message(FATAL_ERROR "Python config failure: Python is ${_PYTHON_BITS}-bit, "
                        "chosen compiler is  ${_CMAKE_BITS}-bit")
  endif()
  set(PYTHONLIBS_FOUND FALSE)
  set(PythonLibsNew_FOUND FALSE)
  return()
endif()

14:28:54
@matthewcroughan:defenestrate.itmatthewcroughanIt's checking the bits of the cmake binary14:29:16
@matthewcroughan:defenestrate.itmatthewcroughanand then saying that this represents the bits of the python interpreter14:29:29
@matthewcroughan:defenestrate.itmatthewcroughanwhich is not even remotely true :(14:29:32
@matthewcroughan:defenestrate.itmatthewcroughan so putting cmake into buildInputs instead of nativeBuildInputs fixed this case 14:29:49
@matthewcroughan:defenestrate.itmatthewcroughan* It's checking the bits of the cmake binary and the python interpreter14:31:24
@matthewcroughan:defenestrate.itmatthewcroughan* Maybe somehow it gets the path to the wrong python14:31:35
@matthewcroughan:defenestrate.itmatthewcroughan* whoops14:31:41
@matthewcroughan:defenestrate.itmatthewcroughanhow do you pass the path to all the right things without removing cmake from the nativeBuildInputs though14:32:11
@matthewcroughan:defenestrate.itmatthewcroughan this one is a weird one, because it passes dontUseCmakeConfigure = true, so what does it even need cmake for? Just to check the bits? 14:33:57
@matthewcroughan:defenestrate.itmatthewcroughanA similar issue exists here https://github.com/NixOS/nixpkgs/pull/511498/changes14:34:42
@matthewcroughan:defenestrate.itmatthewcroughan If you provide curl to the nativeBuildInputs, it provides some files that causes the build system to link to shared objects for the host arch, rather than the cross arch 14:35:17
@matthewcroughan:defenestrate.itmatthewcroughan so the solution is to read the build system code and see that you can pass an absolute path to the utility from ${curl.dev}/bin that it actually wanted 14:35:47

Show newer messages


Back to Room ListRoom Version: 6