diff --git a/pkgs/servers/monitoring/kapacitor/default.nix b/pkgs/servers/monitoring/kapacitor/default.nix index 4adaefa053cb9..fe1cf89fd2b44 100644 --- a/pkgs/servers/monitoring/kapacitor/default.nix +++ b/pkgs/servers/monitoring/kapacitor/default.nix @@ -20,6 +20,16 @@ let hash = "sha256-v9MUR+PcxAus91FiHYrMN9MbNOTWewh7MT6/t/QWQcM="; }; patches = [ + # This fixes a linting error due to an unneeded call to `.clone()` + # that gets enforced by a strict `deny(warnings)` build config. + # This is already fixed with newer versions of `libflux`, but it + # has been changed in a giant commit with a lot of autmated changes: + # https://github.com/influxdata/flux/commit/e7f7023848929e16ad5bd3b41d217847bd4fd72b#diff-96572e971d9e19b54290a434debbf7db054b21c9ce19035159542756ffb8ab87 + # + # Can be removed as soon as kapacitor depends on a newer version of `libflux`, cf: + # https://github.com/influxdata/kapacitor/blob/v1.7.0/go.mod#L26 + ./fix-linting-error-on-unneeded-clone.patch + # https://github.com/influxdata/flux/pull/5273 # fix compile error with Rust 1.64 (fetchpatch { @@ -82,6 +92,12 @@ buildGoModule rec { rm server/server_test.go ''; + # Tests start http servers which need to bind to local addresses, + # but that fails in the Darwin sandbox by default unless this option is turned on + # Error is: panic: httptest: failed to listen on a port: listen tcp6 [::1]:0: bind: operation not permitted + # See also https://github.com/NixOS/nix/pull/1646 + __darwinAllowLocalNetworking = true; + meta = with lib; { description = "Open source framework for processing, monitoring, and alerting on time series data"; homepage = "https://influxdata.com/time-series-platform/kapacitor/"; diff --git a/pkgs/servers/monitoring/kapacitor/fix-linting-error-on-unneeded-clone.patch b/pkgs/servers/monitoring/kapacitor/fix-linting-error-on-unneeded-clone.patch new file mode 100644 index 0000000000000..23391f0f4f384 --- /dev/null +++ b/pkgs/servers/monitoring/kapacitor/fix-linting-error-on-unneeded-clone.patch @@ -0,0 +1,13 @@ +diff --git a/flux-core/src/semantic/flatbuffers/types.rs b/flux-core/src/semantic/flatbuffers/types.rs +index c3eecf06..9baf4070 100644 +--- a/flux-core/src/semantic/flatbuffers/types.rs ++++ b/flux-core/src/semantic/flatbuffers/types.rs +@@ -715,7 +715,7 @@ mod tests { + + fn test_serde(expr: &'static str) { + // let want = parser::parse(expr).unwrap(); +- let mut p = parser::Parser::new(expr.clone()); ++ let mut p = parser::Parser::new(expr); + + let typ_expr = p.parse_type_expression(); + if let Err(err) = ast::check::check(ast::walk::Node::TypeExpression(&typ_expr)) {