nur-packages

My NUR packages
git clone git://git.sikmir.ru/nur-packages
Log | Files | Refs | README | LICENSE

commit d1baf84477d286100101951deecff6ad19325003
parent 08a811ac1423b8581a2f4e3026b68e6c5224e10f
Author: Nikolay Korotkiy <sikmir@disroot.org>
Date:   Thu, 20 Feb 2025 23:17:27 +0400

Add mqttwarn

Diffstat:
Mpkgs/default.nix | 1+
Apkgs/mqtt/mqttwarn/default.nix | 74++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apkgs/mqtt/mqttwarn/version.patch | 16++++++++++++++++
3 files changed, 91 insertions(+), 0 deletions(-)

diff --git a/pkgs/default.nix b/pkgs/default.nix @@ -448,6 +448,7 @@ lib.makeScope newScope ( mqtt-stats = callPackage ./mqtt/mqtt-stats { }; mqtt-to-influxdb = callPackage ./mqtt/mqtt-to-influxdb { }; mqtt-to-influxdb-forwarder = callPackage ./mqtt/mqtt-to-influxdb-forwarder { }; + mqttwarn = callPackage ./mqtt/mqttwarn { }; nanosdk = callPackage ./mqtt/nanosdk { }; pytest-mqtt = callPackage ./mqtt/pytest-mqtt { }; rmqtt = callPackage ./mqtt/rmqtt { }; diff --git a/pkgs/mqtt/mqttwarn/default.nix b/pkgs/mqtt/mqttwarn/default.nix @@ -0,0 +1,74 @@ +{ + lib, + stdenv, + fetchFromGitHub, + python3Packages, + substituteAll, +}: + +python3Packages.buildPythonApplication rec { + pname = "mqttwarn"; + version = "0.35.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mqtt-tools"; + repo = "mqttwarn"; + tag = version; + hash = "sha256-jdQNCmfGs1k52VKzcF132mmUSWkcdcsjx+AHxM+MRdw="; + }; + + patches = [ + (substituteAll { + src = ./version.patch; + inherit version; + }) + ]; + + build-system = with python3Packages; [ + setuptools + versioningit + ]; + + dependencies = with python3Packages; [ + attrs + docopt + funcy + future + jinja2 + paho-mqtt + requests + six + ]; + + pythonRelaxDeps = [ + "attrs" + "future" + "paho-mqtt" + ]; + + optional-dependencies = with python3Packages; { + apprise = [ apprise ]; + celery = [ celery ]; + chromecast = [ pychromecast ]; + dnsupdate = [ dnspython ]; + serial = [ pyserial ]; + ssh = [ paramiko ]; + tootpaste = [ mastodon-py ]; + websocket = [ websocket-client ]; + }; + + doCheck = false; + + nativeCheckInputs = [ + python3Packages.pytestCheckHook + ] ++ lib.flatten (lib.attrValues optional-dependencies); + + meta = { + description = "A highly configurable MQTT message router, where the routing targets are notification plugins"; + homepage = "https://guthub.com/mqtt-tools/mqttwarn"; + license = lib.licenses.epl20; + maintainers = [ lib.maintainers.sikmir ]; + mainProgram = "mqttwarn"; + }; +} diff --git a/pkgs/mqtt/mqttwarn/version.patch b/pkgs/mqtt/mqttwarn/version.patch @@ -0,0 +1,16 @@ +diff --git i/pyproject.toml w/pyproject.toml +index 29498ae..51c9406 100644 +--- i/pyproject.toml ++++ w/pyproject.toml +@@ -11,10 +11,7 @@ build-backend = "setuptools.build_meta" + + + [tool.versioningit] +- +-[tool.versioningit.vcs] +-method = "git" +-default-tag = "0.0.0" ++default-version = "@version@" + + + # =========================