Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / entrance / default.nix
blob97ac60fa5083f0dcb7c7977cf844495868379e1a
1 { lib, fetchPypi, buildPythonPackage, pythonOlder, routerFeatures
2 , janus, ncclient, paramiko, pyyaml, sanic }:
4 let
5   # The `routerFeatures` flag optionally brings in some somewhat heavy
6   # dependencies, in order to enable interacting with routers
7   opts = if routerFeatures then {
8       prePatch = ''
9         substituteInPlace ./setup.py --replace "extra_deps = []" "extra_deps = router_feature_deps"
10       '';
11       extraBuildInputs = [ janus ncclient paramiko ];
12     } else {
13       prePatch = "";
14       extraBuildInputs = [];
15     };
19 buildPythonPackage rec {
20   pname = "entrance";
21   version = "1.1.20";
23   src = fetchPypi {
24     inherit pname version;
25     hash = "sha256-PvsP6HXCllW102h3o7abz9uC2AZTwvg5qIqP+rdkk6Y=";
26   };
28   # The versions of `sanic` and `websockets` in nixpkgs only support 3.6 or later
29   disabled = pythonOlder "3.6";
31   # No useful tests
32   doCheck = false;
34   propagatedBuildInputs = [ pyyaml sanic ] ++ opts.extraBuildInputs;
36   prePatch = opts.prePatch;
38   meta = with lib; {
39     description = "A server framework for web apps with an Elm frontend";
40     homepage = "https://github.com/ensoft/entrance";
41     license = licenses.mit;
42     maintainers = with maintainers; [ simonchatts ];
43   };