1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 construct,
7 paho-mqtt,
8 pyserial-asyncio,
9 pytestCheckHook,
10}:
11
12buildPythonPackage rec {
13 pname = "amshan";
14 version = "2.1.1";
15 pyproject = true;
16
17 src = fetchFromGitHub {
18 owner = "toreamun";
19 repo = "amshan";
20 rev = version;
21 hash = "sha256-aw0wTqb2s84STVUN55h6L926pXwaMSppBCfXZVb87w0=";
22 };
23
24 build-system = [
25 setuptools
26 ];
27
28 dependencies = [
29 construct
30 paho-mqtt
31 pyserial-asyncio
32 ];
33
34 nativeCheckInputs = [
35 pytestCheckHook
36 ];
37
38 pythonImportsCheck = [ "han" ];
39
40 # 2021.12.1 is an older version
41 passthru.skipBulkUpdate = true;
42
43 meta = {
44 description = "Decode smart power meter data stream of Cosem HDLC frames used by MBUS";
45 longDescription = ''
46 The package has special support of formats for Aidon, Kaifa and Kamstrup
47 meters used in Norway and Sweden (AMS HAN).
48 '';
49 homepage = "https://github.com/toreamun/amshan";
50 license = lib.licenses.mit;
51 maintainers = with lib.maintainers; [ bjornfor ];
52 };
53}