nixpkgs/pkgs/applications/networking/errbot/default.nix

54 lines
1.5 KiB
Nix
Raw Normal View History

2019-08-30 17:04:45 +00:00
{ lib, fetchFromGitHub, python, glibcLocales }:
let
# errbot requires markdown<3, and is not compatible with it either.
py = python.override {
packageOverrides = self: super: {
markdown = super.markdown.overridePythonAttrs (oldAttrs: rec {
version = "2.6.11";
src = super.fetchPypi {
pname = "Markdown";
inherit version;
sha256 = "108g80ryzykh8bj0i7jfp71510wrcixdi771lf2asyghgyf8cmm8";
};
});
};
};
2016-07-01 14:04:01 +00:00
2019-08-30 17:04:45 +00:00
in
py.pkgs.buildPythonApplication rec {
pname = "errbot";
2019-08-30 17:04:45 +00:00
version = "6.1.1";
2016-07-01 14:04:01 +00:00
2019-08-30 17:04:45 +00:00
src = fetchFromGitHub {
owner = "errbotio";
repo = "errbot";
rev = version;
sha256 = "1s4dl1za5imwsv6j3y7m47dy91hmqd5n221kkqm9ni4mpzgpffz0";
2016-07-01 14:04:01 +00:00
};
2017-08-27 23:56:16 +00:00
LC_ALL = "en_US.utf8";
buildInputs = [ glibcLocales ];
2019-08-30 17:04:45 +00:00
propagatedBuildInputs = with py.pkgs; [
webtest requests jinja2 flask dulwich
pyopenssl colorlog markdown ansi pygments
2016-07-01 14:04:01 +00:00
daemonize pygments-markdown-lexer telegram irc slackclient
2019-08-30 17:04:45 +00:00
sleekxmpp pyasn1 pyasn1-modules hypchat
2016-07-01 14:04:01 +00:00
];
2019-08-30 17:04:45 +00:00
checkInputs = with py.pkgs; [ mock pytest ];
# avoid tests that do network calls
checkPhase = ''
pytest tests -k 'not backup and not broken_plugin and not plugin_cycle'
'';
meta = with lib; {
2016-07-01 14:04:01 +00:00
description = "Chatbot designed to be simple to extend with plugins written in Python";
homepage = http://errbot.io/;
2016-09-28 17:26:47 +00:00
maintainers = with maintainers; [ fpletz globin ];
2016-07-01 14:04:01 +00:00
license = licenses.gpl3;
platforms = platforms.unix;
};
}