1{ lib 2, fetchFromGitHub 3, buildPythonPackage 4, cython 5, git 6, pkgconfig 7, pytest-runner 8, setuptools-scm 9, future 10, numpy 11, pyusb 12, mock 13, pytestCheckHook 14, zipp 15}: 16 17## Usage 18# In NixOS, add the package to services.udev.packages for non-root plugdev 19# users to get device access permission: 20# services.udev.packages = [ pkgs.python3Packages.seabreeze ]; 21 22buildPythonPackage rec { 23 pname = "seabreeze"; 24 version = "1.3.0"; 25 26 src = fetchFromGitHub { 27 owner = "ap--"; 28 repo = "python-seabreeze"; 29 rev = "v${version}"; 30 sha256 = "1hm9aalpb9sdp8s7ckn75xvyiacp5678pv9maybm5nz0z2h29ibq"; 31 leaveDotGit = true; 32 }; 33 34 nativeBuildInputs = [ 35 cython 36 git 37 pkgconfig 38 pytest-runner 39 setuptools-scm 40 ]; 41 42 propagatedBuildInputs = [ 43 future 44 numpy 45 pyusb 46 ]; 47 48 postInstall = '' 49 mkdir -p $out/etc/udev/rules.d 50 cp os_support/10-oceanoptics.rules $out/etc/udev/rules.d/10-oceanoptics.rules 51 ''; 52 53 # few backends enabled, but still some tests 54 checkInputs = [ 55 pytestCheckHook 56 mock 57 zipp 58 ]; 59 60 setupPyBuildFlags = [ "--without-cseabreeze" ]; 61 62 meta = with lib; { 63 homepage = "https://github.com/ap--/python-seabreeze"; 64 description = "A python library to access Ocean Optics spectrometers"; 65 maintainers = []; 66 license = licenses.mit; 67 }; 68}