Skip to content

depthai-core: init at 3.5.0#500215

Draft
Amronos wants to merge 3 commits into
NixOS:masterfrom
Amronos:depthai
Draft

depthai-core: init at 3.5.0#500215
Amronos wants to merge 3 commits into
NixOS:masterfrom
Amronos:depthai

Conversation

@Amronos

@Amronos Amronos commented Mar 15, 2026

Copy link
Copy Markdown
Member

Link to package: https://github.com/luxonis/depthai-core

This PR continues from @phodina's work in #402019. Many of the review comments from that PR have been addressed, and the code cleaned up.

It's currently marked as a draft due to the following reasons:

  • Examples don't build successfully.
  • Tests don't build successfully.
  • Look into the DEPTHAI_ENABLE_CURL flag.
  • Look into the DEPTHAI_ENABLE_MP4V2 flag.
  • Some patches can be upstreamed.
  • Basalt support is untested.
  • Rtabmap support is untested.

If anyone would like to help, please start from the bottom of the list and work upward, as I will be continuing from the top. Feel free to make a PR to my repo.

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

@nixpkgs-ci nixpkgs-ci Bot added 8.has: package (new) This PR adds a new package 8.has: package (update) This PR updates a package to a newer version 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. labels Mar 15, 2026
@Amronos

This comment was marked as outdated.

@solonovamax solonovamax left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not too familiar with how nix does things, so some of my suggestions could be wrong, but I just wanted to mention them anyways.

Comment thread pkgs/by-name/de/depthai-data/package.nix
Comment thread pkgs/by-name/de/depthai-core/0001-all-patches.patch Outdated
Comment thread pkgs/by-name/de/depthai-core/0001-all-patches.patch Outdated
Comment thread pkgs/by-name/de/depthai-core/package.nix
Comment thread pkgs/by-name/de/depthai-core/package.nix
Comment thread pkgs/by-name/de/depthai-core/package.nix
Comment thread pkgs/by-name/de/depthai-core/0001-all-patches.patch Outdated
Comment thread pkgs/by-name/de/depthai-core/0001-all-patches.patch Outdated
Comment thread pkgs/by-name/de/depthai-core/0001-all-patches.patch Outdated
@Amronos

Amronos commented Mar 16, 2026

Copy link
Copy Markdown
Member Author

Thanks for the detailed review @solonovamax!

@Amronos Amronos changed the title depthai-core: init at 3.4.0 depthai-core: init at 3.5.0 Apr 15, 2026
@Amronos
Amronos requested a review from solonovamax April 15, 2026 17:47
@Amronos

This comment was marked as outdated.

@Amronos

Amronos commented Apr 16, 2026

Copy link
Copy Markdown
Member Author

nixpkgs-review result

Generated using nixpkgs-review-gha

Command: nixpkgs-review pr 500215
Commit: 876fedc7ccbe21f847ea8979f1bfa9df510158c5 (subsequent changes)
Merge: c7b54bdbfd893bbad157e77daaf4598abc0dc84e

Logs: https://github.com/Amronos/nixpkgs-review-gha/actions/runs/24491834345

Download packages from cache:
  • x86_64-linux
    nix-store -r --add-root nixpkgs-pr-500215-x86_64-linux \
      --option binary-caches 'https://cache.nixos.org/ https://amronos-nixpkgs-review-gha.cachix.org' \
      --option trusted-public-keys '
      cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
      amronos-nixpkgs-review-gha.cachix.org-1:Bq46H/mVBR/pqwGYVb2QY54AS8HdiLplaW1KqkAt5ik=
      ' \
      /nix/store/0xqdw8wvmwswcb15af9wsgv92jsfg7c7-depthai-core-3.5.0 \
      /nix/store/i4fllvpm9kadrpy92jbcnmn0cp629fm7-depthai-data-3.5.0 \
      /nix/store/knkiwqbh6xnngz0pvl3g34rglyhijapn-xlink-0-unstable-2026-02-03 \
      /nix/store/gz3mlwadibs7r0h7aqd0hx7ryvwhm0wr-xlink-0-unstable-2026-02-03-share
  • aarch64-linux
    nix-store -r --add-root nixpkgs-pr-500215-aarch64-linux \
      --option binary-caches 'https://cache.nixos.org/ https://amronos-nixpkgs-review-gha.cachix.org' \
      --option trusted-public-keys '
      cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
      amronos-nixpkgs-review-gha.cachix.org-1:Bq46H/mVBR/pqwGYVb2QY54AS8HdiLplaW1KqkAt5ik=
      ' \
      /nix/store/86smbhdlfv6w1bc48b59cdg3lb13xi00-depthai-core-3.5.0 \
      /nix/store/jpqwhlfl1lb7524wm51vmp1hw9ya8dj8-depthai-data-3.5.0 \
      /nix/store/imslfhpfwr6libpa915pjj917sib5vqw-xlink-0-unstable-2026-02-03 \
      /nix/store/1vbkfw37nmadldhhhb9q2lbk2d5vzhpa-xlink-0-unstable-2026-02-03-share
  • x86_64-darwin
    nix-store -r --add-root nixpkgs-pr-500215-x86_64-darwin \
      --option binary-caches 'https://cache.nixos.org/ https://amronos-nixpkgs-review-gha.cachix.org' \
      --option trusted-public-keys '
      cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
      amronos-nixpkgs-review-gha.cachix.org-1:Bq46H/mVBR/pqwGYVb2QY54AS8HdiLplaW1KqkAt5ik=
      ' \
      /nix/store/pvg0m9fsdzdzasgjhkc0m06gx3iw5gxj-depthai-data-3.5.0 \
      /nix/store/94j7kh1dl9655pxwihrbfvj3zvw64iwh-xlink-0-unstable-2026-02-03 \
      /nix/store/1h2fkg7b0xpqzhyabiivl5lfmpfgqav9-xlink-0-unstable-2026-02-03-share
  • aarch64-darwin
    nix-store -r --add-root nixpkgs-pr-500215-aarch64-darwin \
      --option binary-caches 'https://cache.nixos.org/ https://amronos-nixpkgs-review-gha.cachix.org' \
      --option trusted-public-keys '
      cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
      amronos-nixpkgs-review-gha.cachix.org-1:Bq46H/mVBR/pqwGYVb2QY54AS8HdiLplaW1KqkAt5ik=
      ' \
      /nix/store/sbvggwd3aw4skkgfa7ca032lzfd5c9ic-depthai-data-3.5.0 \
      /nix/store/67azca9hsnvlj9nsqkvin5c1n6g1n2bi-xlink-0-unstable-2026-02-03 \
      /nix/store/1d3j7pjh4vprgga2dvn0dyqkhfzk8yfa-xlink-0-unstable-2026-02-03-share

x86_64-linux

✅ 4 packages built:
  • depthai-core
  • depthai-data
  • xlink
  • xlink.share

aarch64-linux

✅ 4 packages built:
  • depthai-core
  • depthai-data
  • xlink
  • xlink.share

x86_64-darwin (sandbox = relaxed)

❌ 1 package failed to build:
  • depthai-core
✅ 3 packages built:
  • depthai-data
  • xlink
  • xlink.share

Error logs: `x86_64-darwin`
depthai-core
      dai::node::AutoCalibration::AutoCalibration() in Pipeline.cpp.o
      dai::DeviceNodeCRTP<dai::DeviceNode, dai::node::AutoCalibration, dai::AutoCalibrationProperties>::DeviceNodeCRTP() in Pipeline.cpp.o
      dai::node::AutoCalibration::AutoCalibration(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
      dai::DeviceNodeCRTP<dai::DeviceNode, dai::node::AutoCalibration, dai::AutoCalibrationProperties>::DeviceNodeCRTP(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::DynamicCalibrationProperties", referenced from:
      dai::node::DynamicCalibration::DynamicCalibration() in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::node::AutoCalibration", referenced from:
      dai::node::AutoCalibration::AutoCalibration() in Pipeline.cpp.o
      dai::node::AutoCalibration::AutoCalibration(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::node::DynamicCalibration", referenced from:
      dai::node::DynamicCalibration::DynamicCalibration() in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
ld: symbol(s) not found for architecture x86_64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [CMakeFiles/depthai-core.dir/build.make:2689: libdepthai-core.dylib] Error 1
make[1]: *** [CMakeFiles/Makefile2:226: CMakeFiles/depthai-core.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

aarch64-darwin (sandbox = relaxed)

❌ 1 package failed to build:
  • depthai-core
✅ 3 packages built:
  • depthai-data
  • xlink
  • xlink.share

Error logs: `aarch64-darwin`
depthai-core
      dai::node::AutoCalibration::AutoCalibration() in Pipeline.cpp.o
      dai::DeviceNodeCRTP<dai::DeviceNode, dai::node::AutoCalibration, dai::AutoCalibrationProperties>::DeviceNodeCRTP() in Pipeline.cpp.o
      dai::node::AutoCalibration::AutoCalibration(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
      dai::DeviceNodeCRTP<dai::DeviceNode, dai::node::AutoCalibration, dai::AutoCalibrationProperties>::DeviceNodeCRTP(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::DynamicCalibrationProperties", referenced from:
      dai::node::DynamicCalibration::DynamicCalibration() in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::node::AutoCalibration", referenced from:
      dai::node::AutoCalibration::AutoCalibration() in Pipeline.cpp.o
      dai::node::AutoCalibration::AutoCalibration(std::__1::shared_ptr<dai::Device> const&) in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for dai::node::DynamicCalibration", referenced from:
      dai::node::DynamicCalibration::DynamicCalibration() in Pipeline.cpp.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [CMakeFiles/depthai-core.dir/build.make:2689: libdepthai-core.dylib] Error 1
make[1]: *** [CMakeFiles/Makefile2:226: CMakeFiles/depthai-core.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

8.has: package (new) This PR adds a new package 8.has: package (update) This PR updates a package to a newer version 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants