about summary refs log tree commit diff
path: root/pkgs/servers/mqtt
diff options
context:
space:
mode:
authorNikolay Korotkiy <sikmir@disroot.org>2023-02-18 19:02:33 +0300
committerNikolay Korotkiy <sikmir@disroot.org>2023-02-19 19:03:53 +0300
commitb681d0642d32c6a9d5790b2cd60bf656f0d4934e (patch)
treea95654e6f5b224786c8ac4de4d25ccfdfd8668c1 /pkgs/servers/mqtt
parentb9b35e4aa031cf882637b0a491149016ffa40d85 (diff)
nanomq: 0.15.1 → 0.15.5
Diffstat (limited to 'pkgs/servers/mqtt')
-rw-r--r--pkgs/servers/mqtt/nanomq/default.nix28
1 files changed, 22 insertions, 6 deletions
diff --git a/pkgs/servers/mqtt/nanomq/default.nix b/pkgs/servers/mqtt/nanomq/default.nix
index 5091f41b50f2e..482c274f2112a 100644
--- a/pkgs/servers/mqtt/nanomq/default.nix
+++ b/pkgs/servers/mqtt/nanomq/default.nix
@@ -1,32 +1,48 @@
-{ lib, stdenv, fetchFromGitHub, cmake, ninja, mbedtls, sqlite }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, ninja, pkg-config
+, cyclonedds, libmysqlclient, mariadb, mbedtls, sqlite, zeromq
+}:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "nanomq";
-  version = "0.15.1";
+  version = "0.15.5";
 
   src = fetchFromGitHub {
     owner = "emqx";
     repo = "nanomq";
     rev = finalAttrs.version;
-    hash = "sha256-h4TCorZfg9Sin4CZPRifUkqeg4F2V1DluolerSeREs4=";
+    hash = "sha256-eIwUsYPpRZMl1oCuuZeOj0SCBHDaJdmdWdoI4yuqxrg=";
     fetchSubmodules = true;
   };
 
+  patches = [
+    # Fix the conflict on function naming in ddsproxy
+    (fetchpatch {
+      url = "https://github.com/emqx/nanomq/commit/20f436a3b9d45f9809d7c7f0714905c657354631.patch";
+      hash = "sha256-ISMlf9QW73oogMTlifi/r08uSxBpzRYvBSJBB1hn2xY=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace CMakeLists.txt \
       --replace "DESTINATION /etc" "DESTINATION $out/etc"
   '';
 
-  nativeBuildInputs = [ cmake ninja ];
+  nativeBuildInputs = [ cmake ninja pkg-config ];
 
-  buildInputs = [ mbedtls sqlite ];
+  buildInputs = [ cyclonedds libmysqlclient mariadb mbedtls sqlite zeromq ];
 
   cmakeFlags = [
+    "-DBUILD_BENCH=ON"
+    "-DBUILD_DDS_PROXY=ON"
     "-DBUILD_NANOMQ_CLI=ON"
-    "-DNNG_ENABLE_TLS=ON"
+    "-DBUILD_ZMQ_GATEWAY=ON"
+    "-DENABLE_RULE_ENGINE=ON"
     "-DNNG_ENABLE_SQLITE=ON"
+    "-DNNG_ENABLE_TLS=ON"
   ];
 
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-return-type";
+
   meta = with lib; {
     description = "An ultra-lightweight and blazing-fast MQTT broker for IoT edge";
     homepage = "https://nanomq.io/";