1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pexpect,
6 pillow,
7 pycryptodomex,
8 pytestCheckHook,
9 pythonOlder,
10 pyvirtualdisplay,
11 setuptools,
12 twisted,
13}:
14
15buildPythonPackage rec {
16 pname = "vncdo";
17 version = "1.2.0";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchFromGitHub {
23 owner = "sibson";
24 repo = "vncdotool";
25 tag = "v${version}";
26 hash = "sha256-QrD6z/g85FwaZCJ1PRn8CBKCOQcbVjQ9g0NpPIxguqk=";
27 };
28
29 nativeBuildInputs = [ setuptools ];
30
31 propagatedBuildInputs = [
32 pillow
33 pycryptodomex
34 twisted
35 ];
36
37 nativeCheckInputs = [
38 pexpect
39 pytestCheckHook
40 pyvirtualdisplay
41 ];
42
43 pythonImportsCheck = [ "vncdotool" ];
44
45 meta = with lib; {
46 description = "Command line VNC client and Python library";
47 homepage = "https://github.com/sibson/vncdotool";
48 changelog = "https://github.com/sibson/vncdotool/releases/tag/v${version}";
49 license = licenses.mit;
50 maintainers = with maintainers; [ elitak ];
51 mainProgram = "vncdo";
52 platforms = with platforms; linux ++ darwin;
53 };
54}