acr-cli: init at 0.14 (#359508)
[NixPkgs.git] / pkgs / by-name / zu / zulip-term / package.nix
blob7c741216df11ad7f201352d7c9548acf28229fe9
1 { lib
2 , python3
3 , fetchFromGitHub
4 , glibcLocales
5 , libnotify
6 }:
8 let
9   py = python3.override {
10     self = py;
11     packageOverrides = self: super: {
13       # Requires "urwid~=2.1.2", otherwise some tests are failing
14       urwid = super.urwid.overridePythonAttrs (oldAttrs: rec {
15         version = "2.1.2";
16         src = fetchFromGitHub {
17           owner = "urwid";
18           repo = "urwid";
19           rev = "refs/tags/${version}";
20           hash = "sha256-oPb2h/+gaqkZTXIiESjExMfBNnOzDvoMkXvkZ/+KVwo=";
21         };
22         doCheck = false;
23       });
24     };
25   };
27 with py.pkgs;
29 buildPythonApplication rec {
30   pname = "zulip-term";
31   version = "0.7.0";
32   pyproject = true;
34   src = fetchFromGitHub {
35     owner = "zulip";
36     repo = "zulip-terminal";
37     rev = "refs/tags/${version}";
38     hash = "sha256-ZouUU4p1FSGMxPuzDo5P971R+rDXpBdJn2MqvkJO+Fw=";
39   };
41   patches = [
42     ./pytest-executable-name.patch
43   ];
45   nativeBuildInputs = with py.pkgs; [
46     setuptools
47   ];
49   propagatedBuildInputs = with py.pkgs; [
50     beautifulsoup4
51     lxml
52     pygments
53     pyperclip
54     python-dateutil
55     pytz
56     typing-extensions
57     tzlocal
58     urwid
59     urwid-readline
60     zulip
61   ];
63   nativeCheckInputs = [
64     glibcLocales
65   ] ++ (with python3.pkgs; [
66     pytestCheckHook
67     pytest-cov
68     pytest-mock
69   ]);
71   makeWrapperArgs = [
72     "--prefix" "PATH" ":" (lib.makeBinPath [ libnotify ])
73   ];
75   meta = with lib; {
76     description = "Zulip's official terminal client";
77     homepage = "https://github.com/zulip/zulip-terminal";
78     changelog = "https://github.com/zulip/zulip-terminal/releases/tag/${version}";
79     license = licenses.asl20;
80     maintainers = with maintainers; [ dotlambda ];
81   };