1{
2 lib,
3 buildPythonPackage,
4 cython,
5 expandvars,
6 fetchPypi,
7 libssh,
8 pythonOlder,
9 setuptools,
10 setuptools-scm,
11 toml,
12 wheel,
13}:
14
15buildPythonPackage rec {
16 pname = "ansible-pylibssh";
17 version = "1.2.2";
18 pyproject = true;
19
20 disabled = pythonOlder "3.6";
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-dT5XDc3OtquONi6RzA1Zk77ryT0oe4gXjbVVCfZCOrU=";
25 };
26
27 # Remove after https://github.com/ansible/pylibssh/pull/502 is merged
28 postPatch = ''
29 sed -i "/setuptools_scm_git_archive/d" pyproject.toml
30 '';
31
32 build-system = [
33 cython
34 expandvars
35 setuptools
36 setuptools-scm
37 toml
38 wheel
39 ];
40
41 dependencies = [ libssh ];
42
43 pythonImportsCheck = [ "pylibsshext" ];
44
45 meta = with lib; {
46 description = "Python bindings to client functionality of libssh specific to Ansible use case";
47 homepage = "https://github.com/ansible/pylibssh";
48 changelog = "https://github.com/ansible/pylibssh/releases/tag/v${version}";
49 license = licenses.lgpl21Plus;
50 maintainers = with maintainers; [ geluk ];
51 };
52}