about summary refs log tree commit diff
path: root/pkgs/applications/networking/opsdroid/default.nix
blob: 3ef92e059e05747887917252697050889cd77b4b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
{
  lib,
  fetchFromGitHub,
  python3Packages,
}:

python3Packages.buildPythonPackage rec {
  pname = "opsdroid";
  version = "0.30.0";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "opsdroid";
    repo = "opsdroid";
    rev = "refs/tags/v${version}";
    hash = "sha256-7H44wdhJD4Z6OP1sUmSGlepuvx+LlwKLq7iR8cwqR24=";
  };

  build-system = with python3Packages; [ setuptools ];

  dependencies = with python3Packages; [
    aiohttp
    aiohttp-middlewares
    aioredis
    aiosqlite
    appdirs
    arrow
    babel
    bitstring
    bleach
    # botbuilder-core, connector for teams
    certifi
    click
    # dialogflow, connector for Dialogflow
    dnspython
    emoji
    get-video-properties
    ibm-watson
    (matrix-nio.override { withOlm = true; })
    mattermostdriver
    motor
    multidict
    nbconvert
    nbformat
    opsdroid-get-image-size
    parse
    puremagic
    pycron
    python-olm
    pyyaml
    regex
    rich
    slack-sdk
    tailer
    voluptuous
    watchgod
    webexteamssdk
    wrapt
  ];

  passthru.python = python3Packages.python;

  # Tests are not included in releases
  doCheck = false;

  meta = with lib; {
    description = "Open source chat-ops bot framework";
    homepage = "https://opsdroid.dev";
    changelog = "https://github.com/opsdroid/opsdroid/releases/tag/v${version}";
    license = licenses.asl20;
    maintainers = with maintainers; [
      globin
      willibutz
    ];
    platforms = platforms.unix;
    mainProgram = "opsdroid";
  };
}