Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 buildPythonPackage,
4 click,
5 fetchFromGitHub,
6 justbackoff,
7 pyserial-asyncio-fast,
8 pytest-asyncio,
9 pytestCheckHook,
10 setuptools,
11 setuptools-scm,
12}:
13
14buildPythonPackage rec {
15 pname = "nessclient";
16 version = "1.3.1";
17 pyproject = true;
18
19 src = fetchFromGitHub {
20 owner = "nickw444";
21 repo = "nessclient";
22 tag = version;
23 hash = "sha256-E4gkrhQzA1TDmjM+NPWl1Fyoagn/pLm7BRjGSpw6LXY=";
24 };
25
26 build-system = [
27 setuptools
28 setuptools-scm
29 ];
30
31 dependencies = [
32 justbackoff
33 pyserial-asyncio-fast
34 ];
35
36 optional-dependencies = {
37 cli = [ click ];
38 };
39
40 nativeCheckInputs = [
41 pytest-asyncio
42 pytestCheckHook
43 ];
44
45 pythonImportsCheck = [ "nessclient" ];
46
47 meta = {
48 description = "Python implementation/abstraction of the Ness D8x/D16x Serial Interface ASCII protocol";
49 homepage = "https://github.com/nickw444/nessclient";
50 changelog = "https://github.com/nickw444/nessclient/releases/tag/${src.tag}";
51 license = lib.licenses.mit;
52 maintainers = with lib.maintainers; [ fab ];
53 mainProgram = "ness-cli";
54 };
55}