diff --git a/pkgs/development/python-modules/raspyrfm-client/default.nix b/pkgs/development/python-modules/raspyrfm-client/default.nix new file mode 100644 index 000000000000..25bd389e83f7 --- /dev/null +++ b/pkgs/development/python-modules/raspyrfm-client/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + rstr, + python, +}: + +buildPythonPackage rec { + pname = "raspyrfm-client"; + version = "1.2.8"; + pyproject = true; + + src = fetchFromGitHub { + owner = "markusressel"; + repo = "raspyrfm-client"; + tag = "v${version}"; + hash = "sha256-WiL69bb4h8xVdMYxAVU0NHEfTWyW2NVR86zigsr5dmk="; + }; + + # while we may not actually be on master, the script needs a git branch to function + # and master here is better than beta or pre-alpha + postPatch = '' + substituteInPlace ./setup.py \ + --replace-fail 'subprocess.check_output(["git", "rev-parse", "--abbrev-ref", "HEAD"])' '"master"' \ + --replace-fail 'GIT_BRANCH.decode()' '"master"' \ + --replace-fail 'GIT_BRANCH.rstrip()' '"master"' + ''; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "raspyrfm_client" ]; + + nativeCheckInputs = [ rstr ]; + + # pytestCheckHook does not auto detect the only test, run manually + checkPhase = '' + runHook preCheck + + ${python.interpreter} tests/automatic_tests.py + + runHook postCheck + ''; + + meta = { + description = "Send rc signals with the RaspyRFM module"; + homepage = "https://github.com/markusressel/raspyrfm-client"; + changelog = "https://github.com/markusressel/raspyrfm-client/releases/tag/v${version}"; + maintainers = with lib.maintainers; [ ethancedwards8 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 897ed22dd676..c8bb001fbef7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15489,6 +15489,8 @@ self: super: with self; { rarfile = callPackage ../development/python-modules/rarfile { inherit (pkgs) libarchive; }; + raspyrfm-client = callPackage ../development/python-modules/raspyrfm-client { }; + rasterio = callPackage ../development/python-modules/rasterio { }; ratarmount = callPackage ../development/python-modules/ratarmount { };