Files
nixpkgs/pkgs/development/python-modules/bpycv/default.nix
T
Artturin e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00

68 lines
1.4 KiB
Nix

{
stdenv,
lib,
beautifulsoup4,
blender,
boxx,
buildPythonPackage,
fetchFromGitHub,
fetchPypi,
minexr,
opencv4,
requests,
runCommand,
zcs,
}:
buildPythonPackage rec {
pname = "bpycv";
version = "0.4.0";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-qqNGemDB0aagCXjrECuh6kLksf+KujPejpnXVqFG8GY=";
};
propagatedBuildInputs = [
beautifulsoup4
minexr
zcs
requests
opencv4
boxx
];
postPatch = ''
sed -i 's/opencv-python//g' requirements.txt
'';
# pythonImportsCheck = [ "bpycv" ]; # this import depends on bpy that is only available inside blender
doCheck = false;
passthru.tests = {
render =
runCommand "bpycv-render-test"
{
BPY_EXAMPLE_DATA = fetchFromGitHub {
owner = "DIYer22";
repo = "bpycv_example_data";
hash = "sha256-dGb6KvbXTGTu5f4AqhA+i4AwTqBoR5SdXk0vsMEcD3Q=";
rev = "6ce0e65c107d572011394da16ffdf851e988dbb4";
};
}
''
${blender.withPackages (ps: [ ps.bpycv ])}/bin/blender-wrapped -b -P ${./bpycv-test.py}
'';
};
meta = with lib; {
description = "Computer vision utils for Blender";
homepage = "https://github.com/DIYer22/bpycv";
license = licenses.mit;
maintainers = [ maintainers.lucasew ];
broken = stdenv.hostPlatform.isAarch64;
inherit (blender.meta) platforms;
};
}