1{ lib
2, fetchFromGitHub
3, python3
4}:
5
6python3.pkgs.buildPythonApplication rec {
7 pname = "errbot";
8 version = "6.1.9";
9
10 format = "setuptools";
11
12 src = fetchFromGitHub {
13 owner = "errbotio";
14 repo = "errbot";
15 rev = version;
16 hash = "sha256-BmHChLWWnrtg0p4WH8bANwpo+p4RTwjYbXfyPnz6mp8=";
17 };
18
19 nativeBuildInputs = with python3.pkgs; [
20 pythonRelaxDepsHook
21 ];
22
23 pythonRelaxDeps = true;
24
25 propagatedBuildInputs = with python3.pkgs; [
26 ansi
27 colorlog
28 daemonize
29 deepmerge
30 dulwich
31 flask
32 irc
33 jinja2
34 markdown
35 pyasn1
36 pyasn1-modules
37 pygments
38 pygments-markdown-lexer
39 pyopenssl
40 requests
41 slixmpp
42 python-telegram-bot
43 webtest
44 ];
45
46 nativeCheckInputs = with python3.pkgs; [
47 mock
48 pytestCheckHook
49 ];
50
51 # errbot-backend-slackv3 has not been packaged
52 pytestFlagsArray = [ "--ignore=tests/backend_tests/slack_test.py" ];
53
54 disabledTests = [
55 # require networking
56 "test_backup"
57 "test_broken_plugin"
58 "test_plugin_cycle"
59 ];
60
61 pythonImportsCheck = [ "errbot" ];
62
63 meta = with lib; {
64 changelog = "https://github.com/errbotio/errbot/blob/${version}/CHANGES.rst";
65 description = "Chatbot designed to be simple to extend with plugins written in Python";
66 homepage = "http://errbot.io/";
67 maintainers = with maintainers; [ ];
68 license = licenses.gpl3Plus;
69 platforms = platforms.linux;
70 # flaky on darwin, "RuntimeError: can't start new thread"
71 };
72}