Merge pull request #232475 from risicle/ris-nanomq-0.18.1
nanomq: 0.16.3 -> 0.18.2
This commit is contained in:
commit
4f4a905ef3
|
@ -1,16 +1,51 @@
|
|||
{ lib, stdenv, fetchFromGitHub, cmake, ninja, pkg-config
|
||||
, cyclonedds, libmysqlclient, mariadb, mbedtls, sqlite, zeromq
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, ninja
|
||||
, pkg-config
|
||||
, cyclonedds
|
||||
, libmysqlclient
|
||||
, mariadb
|
||||
, mbedtls
|
||||
, sqlite
|
||||
, zeromq
|
||||
, flex
|
||||
, bison
|
||||
|
||||
# for tests
|
||||
, python3
|
||||
, mosquitto
|
||||
, netcat-gnu
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
let
|
||||
|
||||
# exposing as full package in its own right would be a
|
||||
# bit absurd - repo doesn't even have a license.
|
||||
idl-serial = stdenv.mkDerivation {
|
||||
pname = "idl-serial";
|
||||
version = "unstable-2023-03-29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nanomq";
|
||||
repo = "idl-serial";
|
||||
rev = "908c364dab4c0dcdd77b8de698d29c8a0b6d3830";
|
||||
hash = "sha256-3DS9DuzHN7BevfgiekUmKKH9ej9wKTrt6Fuh427NC4I=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja flex bison ];
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "nanomq";
|
||||
version = "0.16.3";
|
||||
version = "0.18.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "emqx";
|
||||
repo = "nanomq";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-9w4afVxuJbYrkagpAe1diftDnjrRjunyhJdJ0BZq3K0=";
|
||||
hash = "sha256-XGJBBuRSL3InXUMGxOttdbt0zmI1APFlc4IvwC2up8g=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -19,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
--replace "DESTINATION /etc" "DESTINATION $out/etc"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake ninja pkg-config ];
|
||||
nativeBuildInputs = [ cmake ninja pkg-config idl-serial ];
|
||||
|
||||
buildInputs = [ cyclonedds libmysqlclient mariadb mbedtls sqlite zeromq ];
|
||||
|
||||
|
@ -35,6 +70,33 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-return-type";
|
||||
|
||||
# disabled by default - not 100% reliable and making nanomq depend on
|
||||
# mosquitto would annoy people
|
||||
doInstallCheck = false;
|
||||
nativeInstallCheckInputs = [
|
||||
mosquitto
|
||||
netcat-gnu
|
||||
(python3.withPackages (ps: with ps; [ jinja2 requests paho-mqtt ]))
|
||||
];
|
||||
installCheckPhase = ''
|
||||
runHook preInstallCheck
|
||||
|
||||
(
|
||||
cd ..
|
||||
|
||||
# effectively distable this test because it is slow
|
||||
echo > .github/scripts/fuzzy_test.txt
|
||||
|
||||
PATH="$PATH:$out/bin" python .github/scripts/test.py
|
||||
)
|
||||
|
||||
runHook postInstallCheck
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
withInstallChecks = finalAttrs.finalPackage.overrideAttrs (_: { doInstallCheck = true; });
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "An ultra-lightweight and blazing-fast MQTT broker for IoT edge";
|
||||
homepage = "https://nanomq.io/";
|
||||
|
|
Loading…
Reference in a new issue