diff --git a/pkgs/development/python-modules/wslink/default.nix b/pkgs/development/python-modules/wslink/default.nix new file mode 100644 index 000000000000..99efcdbb7357 --- /dev/null +++ b/pkgs/development/python-modules/wslink/default.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + aiohttp, + msgpack, + cryptography, +}: + +buildPythonPackage rec { + pname = "wslink"; + version = "2.3.4"; + pyproject = true; + + src = fetchFromGitHub { + owner = "kitware"; + repo = "wslink"; + tag = "v${version}"; + hash = "sha256-QTMEZgoV7Ua3x2C2E9Z1NsX35/JcfmpLZDjNd/HzDj8="; + }; + + sourceRoot = "${src.name}/python"; + + # add missing version string to dist-info + postPatch = '' + sed -i "/name *= */a\ version='${version}'," setup.py + ''; + + build-system = [ setuptools ]; + + dependencies = [ + aiohttp + msgpack + ]; + + optional-dependencies = { + ssl = [ cryptography ]; + }; + + pythonImportsCheck = [ "wslink" ]; + + # doCheck need interacting with the http server + doCheck = false; + + meta = { + description = "Python/JavaScript library for communicating over WebSocket"; + homepage = "https://github.com/Kitware/wslink"; + changelog = "https://github.com/Kitware/wslink/releases/tag/${src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ qbisi ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3ff83c7ab106..954c54da7583 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19431,6 +19431,8 @@ self: super: with self; { wsgitools = callPackage ../development/python-modules/wsgitools { }; + wslink = callPackage ../development/python-modules/wslink { }; + wsme = callPackage ../development/python-modules/wsme { }; wsproto = callPackage ../development/python-modules/wsproto { };