at master 1.3 kB view raw
1{ 2 lib, 3 async-timeout, 4 attrs, 5 buildPythonPackage, 6 faust-cchardet, 7 fetchFromGitHub, 8 httpx, 9 orjson, 10 packaging, 11 pythonOlder, 12 setuptools, 13 typing-extensions, 14 xmltodict, 15}: 16 17buildPythonPackage rec { 18 pname = "axis"; 19 version = "65"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.12"; 23 24 src = fetchFromGitHub { 25 owner = "Kane610"; 26 repo = "axis"; 27 tag = "v${version}"; 28 hash = "sha256-65njqnnahpYhx5CShjWOuNlkckQbt8tMjKf8OUCrmbw="; 29 }; 30 31 postPatch = '' 32 substituteInPlace pyproject.toml \ 33 --replace-fail "setuptools==80.9.0" "setuptools" \ 34 --replace-fail "wheel==0.46.1" "wheel" 35 ''; 36 37 build-system = [ setuptools ]; 38 39 dependencies = [ 40 async-timeout 41 attrs 42 faust-cchardet 43 httpx 44 orjson 45 packaging 46 typing-extensions 47 xmltodict 48 ]; 49 50 # Tests requires a server on localhost 51 doCheck = false; 52 53 pythonImportsCheck = [ "axis" ]; 54 55 meta = with lib; { 56 description = "Python library for communicating with devices from Axis Communications"; 57 homepage = "https://github.com/Kane610/axis"; 58 changelog = "https://github.com/Kane610/axis/releases/tag/v${version}"; 59 license = licenses.mit; 60 maintainers = with maintainers; [ fab ]; 61 mainProgram = "axis"; 62 }; 63}