Merge pull request #298641 from RaitoBezarius/netdata-45

netdata: 1.44.3 -> 1.45.3
This commit is contained in:
Ryan Lahfa 2024-06-21 16:04:11 +02:00 committed by GitHub
commit efcabaa056
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 258 additions and 230 deletions

View File

@ -13,6 +13,9 @@ let
ln -s /run/wrappers/bin/slabinfo.plugin $out/libexec/netdata/plugins.d/slabinfo.plugin
ln -s /run/wrappers/bin/freeipmi.plugin $out/libexec/netdata/plugins.d/freeipmi.plugin
ln -s /run/wrappers/bin/systemd-journal.plugin $out/libexec/netdata/plugins.d/systemd-journal.plugin
ln -s /run/wrappers/bin/logs-management.plugin $out/libexec/netdata/plugins.d/logs-management.plugin
ln -s /run/wrappers/bin/network-viewer.plugin $out/libexec/netdata/plugins.d/network-viewer.plugin
ln -s /run/wrappers/bin/debugfs.plugin $out/libexec/netdata/plugins.d/debugfs.plugin
'';
plugins = [
@ -47,6 +50,7 @@ let
defaultUser = "netdata";
isThereAnyWireGuardTunnels = config.networking.wireguard.enable || lib.any (c: lib.hasAttrByPath [ "netdevConfig" "Kind" ] c && c.netdevConfig.Kind == "wireguard") (builtins.attrValues config.systemd.network.netdevs);
in {
options = {
services.netdata = {
@ -86,6 +90,14 @@ in {
Whether to enable python-based plugins
'';
};
recommendedPythonPackages = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable a set of recommended Python plugins
by installing extra Python packages.
'';
};
extraPackages = mkOption {
type = types.functionTo (types.listOf types.package);
default = ps: [];
@ -198,13 +210,26 @@ in {
}
];
# Includes a set of recommended Python plugins in exchange of imperfect disk consumption.
services.netdata.python.extraPackages = lib.mkIf cfg.python.recommendedPythonPackages (ps: [
ps.requests
ps.pandas
ps.numpy
ps.psycopg2
ps.python-ldap
ps.netdata-pandas
ps.changefinder
]);
services.netdata.configDir.".opt-out-from-anonymous-statistics" = mkIf (!cfg.enableAnalyticsReporting) (pkgs.writeText ".opt-out-from-anonymous-statistics" "");
environment.etc."netdata/netdata.conf".source = configFile;
environment.etc."netdata/conf.d".source = configDirectory;
systemd.services.netdata = {
description = "Real time performance monitoring";
after = [ "network.target" ];
after = [ "network.target" "suid-sgid-wrappers.service" ];
# No wrapper means no "useful" netdata.
requires = [ "suid-sgid-wrappers.service" ];
wantedBy = [ "multi-user.target" ];
path = (with pkgs; [
curl
@ -213,10 +238,16 @@ in {
which
procps
bash
nvme-cli # for go.d
iw # for charts.d
apcupsd # for charts.d
# TODO: firehol # for FireQoS -- this requires more NixOS module support.
util-linux # provides logger command; required for syslog health alarms
])
++ lib.optional cfg.python.enable (pkgs.python3.withPackages cfg.python.extraPackages)
++ lib.optional config.virtualisation.libvirtd.enable (config.virtualisation.libvirtd.package);
++ lib.optional config.virtualisation.libvirtd.enable config.virtualisation.libvirtd.package
++ lib.optional config.virtualisation.docker.enable config.virtualisation.docker.package
++ lib.optionals config.virtualisation.podman.enable [ pkgs.jq config.virtualisation.podman.package ];
environment = {
PYTHONPATH = "${cfg.package}/libexec/netdata/python.d/python_modules";
NETDATA_PIPENAME = "/run/netdata/ipc";
@ -256,6 +287,8 @@ in {
# Configuration directory and mode
ConfigurationDirectory = "netdata";
ConfigurationDirectoryMode = "0755";
# AmbientCapabilities
AmbientCapabilities = lib.optional isThereAnyWireGuardTunnels "CAP_NET_ADMIN";
# Capabilities
CapabilityBoundingSet = [
"CAP_DAC_OVERRIDE" # is required for freeipmi and slabinfo plugins
@ -269,7 +302,7 @@ in {
"CAP_SYS_CHROOT" # is required for cgroups plugin
"CAP_SETUID" # is required for cgroups and cgroups-network plugins
"CAP_SYSLOG" # is required for systemd-journal plugin
];
] ++ lib.optional isThereAnyWireGuardTunnels "CAP_NET_ADMIN";
# Sandboxing
ProtectSystem = "full";
ProtectHome = "read-only";
@ -308,6 +341,14 @@ in {
permissions = "u+rx,g+x,o-rwx";
};
"debugfs.plugin" = {
source = "${cfg.package}/libexec/netdata/plugins.d/debugfs.plugin.org";
capabilities = "cap_dac_read_search+ep";
owner = cfg.user;
group = cfg.group;
permissions = "u+rx,g+x,o-rwx";
};
"cgroup-network" = {
source = "${cfg.package}/libexec/netdata/plugins.d/cgroup-network.org";
capabilities = "cap_setuid+ep";
@ -332,6 +373,14 @@ in {
permissions = "u+rx,g+x,o-rwx";
};
"logs-management.plugin" = {
source = "${cfg.package}/libexec/netdata/plugins.d/logs-management.plugin.org";
capabilities = "cap_dac_read_search,cap_syslog+ep";
owner = cfg.user;
group = cfg.group;
permissions = "u+rx,g+x,o-rwx";
};
"slabinfo.plugin" = {
source = "${cfg.package}/libexec/netdata/plugins.d/slabinfo.plugin.org";
capabilities = "cap_dac_override+ep";
@ -348,6 +397,14 @@ in {
group = cfg.group;
permissions = "u+rx,g+x,o-rwx";
};
} // optionalAttrs (cfg.package.withNetworkViewer) {
"network-viewer.plugin" = {
source = "${cfg.package}/libexec/netdata/plugins.d/network-viewer.plugin.org";
capabilities = "cap_sys_admin,cap_dac_read_search,cap_sys_ptrace+ep";
owner = cfg.user;
group = cfg.group;
permissions = "u+rx,g+x,o-rwx";
};
};
security.pam.loginLimits = [
@ -359,6 +416,8 @@ in {
${defaultUser} = {
group = defaultUser;
isSystemUser = true;
extraGroups = lib.optional config.virtualisation.docker.enable "docker"
++ lib.optional config.virtualisation.podman.enable "podman";
};
};

View File

@ -11,7 +11,10 @@ import ./make-test-python.nix ({ pkgs, ...} : {
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [ curl jq netdata ];
services.netdata.enable = true;
services.netdata = {
enable = true;
python.recommendedPythonPackages = true;
};
};
};

View File

@ -0,0 +1,40 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, setuptools
, numpy
, scipy
, statsmodels
}:
buildPythonPackage {
pname = "changefinder";
version = "unstable-2024-03-24";
pyproject = true;
src = fetchFromGitHub {
owner = "shunsukeaihara";
repo = "changefinder";
rev = "58c8c32f127b9e46f9823f36221f194bdb6f3f8b";
hash = "sha256-1If0gIsMU8673fKSSHVMvDgR1UnYgM/4HiyvZJ9T6VM=";
};
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
numpy
scipy
statsmodels
];
pythonImportsCheck = [ "changefinder" ];
meta = with lib; {
description = "Online Change-Point Detection library based on ChangeFinder algorithm";
homepage = "https://github.com/shunsukeaihara/changefinder";
license = licenses.mit;
maintainers = with maintainers; [ raitobezarius ];
};
}

View File

@ -0,0 +1,42 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, setuptools
, pandas
, requests
, trio
, asks
}:
buildPythonPackage rec {
pname = "netdata-pandas";
version = "0.0.41";
pyproject = true;
src = fetchFromGitHub {
owner = "netdata";
repo = "netdata-pandas";
rev = "v${version}";
hash = "sha256-AXt8BKWyM3glm5hrRryb+vBzs3z2x61HhbR6DDZkh9o=";
};
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
pandas
requests
trio
asks
];
pythonImportsCheck = [ "netdata_pandas" ];
meta = with lib; {
description = "A helper library to pull data from the netdata REST API into a pandas dataframe.";
homepage = "https://github.com/netdata/netdata-pandas";
license = licenses.asl20;
maintainers = with maintainers; [ raitobezarius ];
};
}

View File

@ -1,9 +1,9 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config, makeWrapper
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config, makeWrapper
, CoreFoundation, IOKit, libossp_uuid
, nixosTests
, netdata-go-plugins
, bash, curl, jemalloc, json_c, libuv, zlib, libyaml
, bash, curl, jemalloc, json_c, libuv, zlib, libyaml, libelf, libbpf
, libcap, libuuid, lm_sensors, protobuf
, go, buildGoModule, ninja
, withCups ? false, cups
, withDBengine ? true, lz4
, withIpmi ? (!stdenv.isDarwin), freeipmi
@ -15,11 +15,12 @@
, withSsl ? true, openssl
, withSystemdJournal ? (!stdenv.isDarwin), systemd
, withDebug ? false
, withEbpf ? false
, withNetworkViewer ? (!stdenv.isDarwin)
}:
stdenv.mkDerivation rec {
# Don't forget to update go.d.plugin.nix as well
version = "1.44.3";
version = "1.45.4";
pname = "netdata";
src = fetchFromGitHub {
@ -27,21 +28,22 @@ stdenv.mkDerivation rec {
repo = "netdata";
rev = "v${version}";
hash = if withCloudUi
then "sha256-ahWaq6geEoc6NZ2oU/Dqnb0bjRXd+q1zaRGOSIYVYok="
else "sha256-2Kvh2WuoJjJxsFKueMjCAbazqZdzoOTxakbPVsj9PBo=";
then "sha256-g/wxKtpNsDw/ZaUokdip39enQHMysJE6pYGsApuL4po="
# we delete the v2 GUI after fetching
else "sha256-Mkrmvdr19sWzFOkdpt46mcsbA3CNpXy4w8um95xaWlo=";
fetchSubmodules = true;
# Remove v2 dashboard distributed under NCUL1. Make sure an empty
# Makefile.am exists, as autoreconf will get confused otherwise.
postFetch = lib.optionalString (!withCloudUi) ''
rm -rf $out/web/gui/v2/*
touch $out/web/gui/v2/Makefile.am
rm -rf $out/src/web/gui/v2/*
touch $out/src/web/gui/v2/Makefile.am
'';
};
strictDeps = true;
nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper protobuf ];
nativeBuildInputs = [ cmake pkg-config makeWrapper go ninja ];
# bash is only used to rewrite shebangs
buildInputs = [ bash curl jemalloc json_c libuv zlib libyaml ]
++ lib.optionals stdenv.isDarwin [ CoreFoundation IOKit libossp_uuid ]
@ -52,23 +54,23 @@ stdenv.mkDerivation rec {
++ lib.optionals withNetfilter [ libmnl libnetfilter_acct ]
++ lib.optionals withConnPubSub [ google-cloud-cpp grpc ]
++ lib.optionals withConnPrometheus [ snappy ]
++ lib.optionals withEbpf [ libelf libbpf ]
++ lib.optionals (withCloud || withConnPrometheus) [ protobuf ]
++ lib.optionals withSystemdJournal [ systemd ]
++ lib.optionals withSsl [ openssl ];
patches = [
# required to prevent plugins from relying on /etc
# and /var
./no-files-in-etc-and-var.patch
# Avoid build-only inputs in closure leaked by configure command:
# https://github.com/NixOS/nixpkgs/issues/175693#issuecomment-1143344162
./skip-CONFIGURE_COMMAND.patch
# Allow building without non-free v2 dashboard.
(fetchpatch {
url = "https://github.com/peat-psuwit/netdata/commit/6ccbdd1500db2b205923968688d5f1777430a326.patch";
hash = "sha256-jAyk5HlxdjFn5IP6jOKP8/SXOraMQSA6r1krThe+s7g=";
url = "https://github.com/netdata/netdata/pull/17240/commits/b108df72281633234b731b223d99ec99f1d36adf.patch";
hash = "sha256-tgsnbNY0pxFU3bz1J1qPaAeVsozsk2bpHV2mNy8A9is=";
})
# Allow for go.d plugins to access the right directory.
# Can be removed once > v1.45.4 is released
# https://github.com/netdata/netdata/pull/17661
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/netdata/netdata/pull/17661.patch";
sha256 = "sha256-j+mrwkibQio2KO8UnV7sxzCoHmkcsalHNzP+YvrRz74=";
})
];
@ -83,8 +85,8 @@ stdenv.mkDerivation rec {
env.NIX_CFLAGS_COMPILE = lib.optionalString withDebug "-O1 -ggdb -DNETDATA_INTERNAL_CHECKS=1";
postInstall = ''
ln -s ${netdata-go-plugins}/lib/netdata/conf.d/* $out/lib/netdata/conf.d
ln -s ${netdata-go-plugins}/bin/godplugin $out/libexec/netdata/plugins.d/go.d.plugin
# Relocate one folder above.
mv $out/usr/* $out/
'' + lib.optionalString (!stdenv.isDarwin) ''
# rename this plugin so netdata will look for setuid wrapper
mv $out/libexec/netdata/plugins.d/apps.plugin \
@ -95,6 +97,10 @@ stdenv.mkDerivation rec {
$out/libexec/netdata/plugins.d/perf.plugin.org
mv $out/libexec/netdata/plugins.d/slabinfo.plugin \
$out/libexec/netdata/plugins.d/slabinfo.plugin.org
mv $out/libexec/netdata/plugins.d/debugfs.plugin \
$out/libexec/netdata/plugins.d/debugfs.plugin.org
mv $out/libexec/netdata/plugins.d/logs-management.plugin \
$out/libexec/netdata/plugins.d/logs-management.plugin.org
${lib.optionalString withSystemdJournal ''
mv $out/libexec/netdata/plugins.d/systemd-journal.plugin \
$out/libexec/netdata/plugins.d/systemd-journal.plugin.org
@ -103,53 +109,108 @@ stdenv.mkDerivation rec {
mv $out/libexec/netdata/plugins.d/freeipmi.plugin \
$out/libexec/netdata/plugins.d/freeipmi.plugin.org
''}
${lib.optionalString withNetworkViewer ''
mv $out/libexec/netdata/plugins.d/network-viewer.plugin \
$out/libexec/netdata/plugins.d/network-viewer.plugin.org
''}
${lib.optionalString (!withCloudUi) ''
rm -rf $out/share/netdata/web/index.html
cp $out/share/netdata/web/v1/index.html $out/share/netdata/web/index.html
''}
'';
preConfigure = lib.optionalString (!stdenv.isDarwin) ''
substituteInPlace collectors/python.d.plugin/python_modules/third_party/lm_sensors.py \
--replace 'ctypes.util.find_library("sensors")' '"${lm_sensors.out}/lib/libsensors${stdenv.hostPlatform.extensions.sharedLibrary}"'
substituteInPlace src/collectors/python.d.plugin/python_modules/third_party/lm_sensors.py \
--replace-fail 'ctypes.util.find_library("sensors")' '"${lm_sensors.out}/lib/libsensors${stdenv.hostPlatform.extensions.sharedLibrary}"'
'' + ''
export GOCACHE=$TMPDIR/go-cache
export GOPATH=$TMPDIR/go
export GOPROXY=file://${passthru.netdata-go-modules}
export GOSUMDB=off
# Prevent the path to be caught into the Nix store path.
substituteInPlace CMakeLists.txt \
--replace-fail 'set(CACHE_DIR "''${CMAKE_INSTALL_PREFIX}/var/cache/netdata")' 'set(CACHE_DIR "/var/cache/netdata")' \
--replace-fail 'set(CONFIG_DIR "''${CMAKE_INSTALL_PREFIX}/etc/netdata")' 'set(CONFIG_DIR "/etc/netdata")' \
--replace-fail 'set(LIBCONFIG_DIR "''${CMAKE_INSTALL_PREFIX}/usr/lib/netdata/conf.d")' 'set(LIBCONFIG_DIR "${placeholder "out"}/share/netdata/conf.d")' \
--replace-fail 'set(LOG_DIR "''${CMAKE_INSTALL_PREFIX}/var/log/netdata")' 'set(LOG_DIR "/var/log/netdata")' \
--replace-fail 'set(PLUGINS_DIR "''${CMAKE_INSTALL_PREFIX}/usr/libexec/netdata/plugins.d")' 'set(PLUGINS_DIR "${placeholder "out"}/libexec/netdata/plugins.d")' \
--replace-fail 'set(VARLIB_DIR "''${CMAKE_INSTALL_PREFIX}/var/lib/netdata")' 'set(VARLIB_DIR "/var/lib/netdata")' \
--replace-fail 'set(pkglibexecdir_POST "''${CMAKE_INSTALL_PREFIX}/usr/libexec/netdata")' 'set(pkglibexecdir_POST "${placeholder "out"}/libexec/netdata")' \
--replace-fail 'set(localstatedir_POST "''${CMAKE_INSTALL_PREFIX}/var")' 'set(localstatedir_POST "/var")' \
--replace-fail 'set(sbindir_POST "''${CMAKE_INSTALL_PREFIX}/usr/sbin")' 'set(sbindir_POST "${placeholder "out"}/bin")' \
--replace-fail 'set(configdir_POST "''${CMAKE_INSTALL_PREFIX}/etc/netdata")' 'set(configdir_POST "/etc/netdata")' \
--replace-fail 'set(libconfigdir_POST "''${CMAKE_INSTALL_PREFIX}/usr/lib/netdata/conf.d")' 'set(libconfigdir_POST "${placeholder "out"}/share/netdata/conf.d")' \
--replace-fail 'set(cachedir_POST "''${CMAKE_INSTALL_PREFIX}/var/cache/netdata")' 'set(libconfigdir_POST "/var/cache/netdata")' \
--replace-fail 'set(registrydir_POST "''${CMAKE_INSTALL_PREFIX}/var/lib/netdata/registry")' 'set(registrydir_POST "/var/lib/netdata/registry")' \
--replace-fail 'set(varlibdir_POST "''${CMAKE_INSTALL_PREFIX}/var/lib/netdata")' 'set(varlibdir_POST "/var/lib/netdata")'
'';
configureFlags = [
"--localstatedir=/var"
"--sysconfdir=/etc"
"--disable-ebpf"
"--with-jemalloc=${jemalloc}"
] ++ lib.optionals (withSystemdJournal) [
"--enable-plugin-systemd-journal"
] ++ lib.optionals (!withDBengine) [
"--disable-dbengine"
] ++ lib.optionals (!withCloud) [
"--disable-cloud"
] ++ lib.optionals (!withCloudUi) [
"--disable-cloud-ui"
cmakeFlags = [
"-DWEB_DIR=share/netdata/web"
(lib.cmakeBool "ENABLE_CLOUD" withCloud)
# ACLK is agent cloud link.
(lib.cmakeBool "ENABLE_ACLK" withCloud)
(lib.cmakeBool "ENABLE_DASHBOARD_V2" withCloudUi)
(lib.cmakeBool "ENABLE_DBENGINE" withDBengine)
(lib.cmakeBool "ENABLE_PLUGIN_FREEIPMI" withIpmi)
(lib.cmakeBool "ENABLE_PLUGIN_SYSTEMD_JOURNAL" withSystemdJournal)
(lib.cmakeBool "ENABLE_PLUGIN_NETWORK_VIEWER" withNetworkViewer)
(lib.cmakeBool "ENABLE_PLUGIN_EBPF" withEbpf)
(lib.cmakeBool "ENABLE_PLUGIN_XENSTAT" false)
(lib.cmakeBool "ENABLE_PLUGIN_CUPS" withCups)
(lib.cmakeBool "ENABLE_EXPORTER_PROMETHEUS_REMOTE_WRITE" withConnPrometheus)
(lib.cmakeBool "ENABLE_JEMALLOC" true)
# Suggested by upstream.
"-G Ninja"
];
postFixup = ''
# remove once https://github.com/netdata/netdata/pull/16300 merged
substituteInPlace $out/bin/netdata-claim.sh \
--replace /bin/echo echo
wrapProgram $out/bin/netdata-claim.sh --prefix PATH : ${lib.makeBinPath [ openssl ]}
wrapProgram $out/libexec/netdata/plugins.d/cgroup-network-helper.sh --prefix PATH : ${lib.makeBinPath [ bash ]}
wrapProgram $out/bin/netdatacli --set NETDATA_PIPENAME /run/netdata/ipc
# Time to cleanup the output directory.
unlink $out/sbin
cp $out/etc/netdata/edit-config $out/bin/netdata-edit-config
mv $out/lib/netdata/conf.d $out/share/netdata/conf.d
rm -rf $out/{var,usr,etc}
'';
enableParallelBuild = true;
passthru = {
inherit withIpmi;
passthru = rec {
netdata-go-modules = (buildGoModule {
pname = "netdata-go-plugins";
inherit version src;
sourceRoot = "${src.name}/src/go/collectors/go.d.plugin";
vendorHash = "sha256-KO+xMk6fpZCYRyxxKrsGfOHJ2bwjBaSmkgz1jIUHaZs=";
doCheck = false;
proxyVendor = true;
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
passthru.tests = tests;
meta = meta // {
description = "Netdata orchestrator for data collection modules written in Go";
mainProgram = "godplugin";
license = lib.licenses.gpl3Only;
};
}).goModules;
inherit withIpmi withNetworkViewer;
tests.netdata = nixosTests.netdata;
};
meta = with lib; {
broken = stdenv.isDarwin || stdenv.buildPlatform != stdenv.hostPlatform;
broken = stdenv.isDarwin || stdenv.buildPlatform != stdenv.hostPlatform || withEbpf;
description = "Real-time performance monitoring tool";
homepage = "https://www.netdata.cloud/";
changelog = "https://github.com/netdata/netdata/releases/tag/v${version}";
license = [ licenses.gpl3Plus ]
++ lib.optionals (withCloudUi) [ licenses.ncul1 ];
platforms = platforms.unix;
maintainers = with maintainers; [ raitobezarius ];
maintainers = [ ];
};
}

View File

@ -1,35 +0,0 @@
{ lib, fetchFromGitHub, buildGoModule, nixosTests }:
buildGoModule rec {
pname = "netdata-go-plugins";
version = "0.58.1";
src = fetchFromGitHub {
owner = "netdata";
repo = "go.d.plugin";
rev = "v${version}";
hash = "sha256-zzHm98jec7MXnzVsrLlYIk+ILA3Ei43853dM1LdFz5c=";
};
vendorHash = "sha256-eb+GRFhfWxDkfH4x2VF3ogyT5z4OcIoqHtEVJ1tGsdA=";
doCheck = false;
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
postInstall = ''
mkdir -p $out/lib/netdata/conf.d
cp -r config/* $out/lib/netdata/conf.d
'';
passthru.tests = { inherit (nixosTests) netdata; };
meta = with lib; {
description = "Netdata orchestrator for data collection modules written in go";
mainProgram = "godplugin";
homepage = "https://github.com/netdata/go.d.plugin";
changelog = "https://github.com/netdata/go.d.plugin/releases/tag/v${version}";
license = licenses.gpl3Only;
maintainers = [ maintainers.raitobezarius ];
};
}

View File

@ -1,128 +0,0 @@
diff --git c/collectors/Makefile.am i/collectors/Makefile.am
index 1bbb2e0ef..96c400d33 100644
--- c/collectors/Makefile.am
+++ i/collectors/Makefile.am
@@ -33,7 +33,7 @@ usercustompluginsconfigdir=$(configdir)/custom-plugins.d
usergoconfigdir=$(configdir)/go.d
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(usercustompluginsconfigdir)
$(INSTALL) -d $(DESTDIR)$(usergoconfigdir)
diff --git c/collectors/charts.d.plugin/Makefile.am i/collectors/charts.d.plugin/Makefile.am
index f82992fd4..4cac1ae4f 100644
--- c/collectors/charts.d.plugin/Makefile.am
+++ i/collectors/charts.d.plugin/Makefile.am
@@ -34,7 +34,7 @@ dist_userchartsconfig_DATA = \
$(NULL)
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userchartsconfigdir)
chartsconfigdir=$(libconfigdir)/charts.d
diff --git c/collectors/ebpf.plugin/Makefile.am i/collectors/ebpf.plugin/Makefile.am
index 2d5f92a6b..8b11c7502 100644
--- c/collectors/ebpf.plugin/Makefile.am
+++ i/collectors/ebpf.plugin/Makefile.am
@@ -9,7 +9,7 @@ SUFFIXES = .in
userebpfconfigdir=$(configdir)/ebpf.d
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userebpfconfigdir)
dist_noinst_DATA = \
diff --git c/collectors/python.d.plugin/Makefile.am i/collectors/python.d.plugin/Makefile.am
index ca49c1c02..1b9bcc446 100644
--- c/collectors/python.d.plugin/Makefile.am
+++ i/collectors/python.d.plugin/Makefile.am
@@ -32,7 +32,7 @@ dist_userpythonconfig_DATA = \
$(NULL)
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userpythonconfigdir)
pythonconfigdir=$(libconfigdir)/python.d
diff --git c/collectors/statsd.plugin/Makefile.am i/collectors/statsd.plugin/Makefile.am
index c8144c137..f8aaa89b6 100644
--- c/collectors/statsd.plugin/Makefile.am
+++ i/collectors/statsd.plugin/Makefile.am
@@ -19,5 +19,5 @@ dist_userstatsdconfig_DATA = \
$(NULL)
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userstatsdconfigdir)
diff --git c/health/Makefile.am i/health/Makefile.am
index 7d7bca4cc..3086876dd 100644
--- c/health/Makefile.am
+++ i/health/Makefile.am
@@ -19,7 +19,7 @@ dist_userhealthconfig_DATA = \
$(NULL)
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userhealthconfigdir)
healthconfigdir=$(libconfigdir)/health.d
diff --git c/logsmanagement/Makefile.am i/logsmanagement/Makefile.am
index 33f08d556..1f08cbae9 100644
--- c/logsmanagement/Makefile.am
+++ i/logsmanagement/Makefile.am
@@ -6,7 +6,7 @@ MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
userlogsmanagconfigdir=$(configdir)/logsmanagement.d
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(userlogsmanagconfigdir)
dist_libconfig_DATA = \
diff --git c/system/Makefile.am i/system/Makefile.am
index 1e96f6f4f..98122ecdc 100644
--- c/system/Makefile.am
+++ i/system/Makefile.am
@@ -22,12 +22,9 @@ include $(top_srcdir)/build/subst.inc
SUFFIXES = .in
dist_config_SCRIPTS = \
- edit-config \
$(NULL)
dist_config_DATA = \
- .install-type \
- netdata-updater.conf \
$(NULL)
libconfigvnodesdir=$(libconfigdir)/vnodes
@@ -47,7 +44,7 @@ libsysrunitdir=$(libsysdir)/runit
libsyssystemddir=$(libsysdir)/systemd
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(configdir)
$(INSTALL) -d $(DESTDIR)$(libsysdir)
$(INSTALL) -d $(DESTDIR)$(libsyscrondir)
diff --git c/web/Makefile.am i/web/Makefile.am
index be2c545c3..55f373114 100644
--- c/web/Makefile.am
+++ i/web/Makefile.am
@@ -13,7 +13,7 @@ SUBDIRS = \
usersslconfigdir=$(configdir)/ssl
# Explicitly install directories to avoid permission issues due to umask
-install-exec-local:
+no-install-exec-local:
$(INSTALL) -d $(DESTDIR)$(usersslconfigdir)
dist_noinst_DATA = \

View File

@ -1,16 +0,0 @@
Shrink closure size by avoiding paths embedded from configure call.
https://github.com/NixOS/nixpkgs/issues/175693
diff --git a/daemon/buildinfo.c b/daemon/buildinfo.c
index 56cde84fc..011e7579d 100644
--- a/daemon/buildinfo.c
+++ b/daemon/buildinfo.c
@@ -1040,7 +1040,7 @@ static void build_info_set_status(BUILD_INFO_SLOT slot, bool status) {
__attribute__((constructor)) void initialize_build_info(void) {
build_info_set_value(BIB_PACKAGING_NETDATA_VERSION, program_version);
- build_info_set_value(BIB_PACKAGING_CONFIGURE_OPTIONS, CONFIGURE_COMMAND);
+ build_info_set_value(BIB_PACKAGING_CONFIGURE_OPTIONS, "REMOVED FOR CLOSURE SIZE REASONS");
#ifdef COMPILED_FOR_LINUX
build_info_set_status(BIB_FEATURE_BUILT_FOR, true);

View File

@ -9932,8 +9932,6 @@ with pkgs;
withCloud = !stdenv.isDarwin;
withCloudUi = true;
};
# Exposed here so the bots can auto-upgrade it
netdata-go-plugins = callPackage ../tools/system/netdata/go.d.plugin.nix { };
netsurf = recurseIntoAttrs (callPackage ../applications/networking/browsers/netsurf { });
netsurf-browser = netsurf.browser;

View File

@ -2101,6 +2101,8 @@ self: super: with self; {
chameleon = callPackage ../development/python-modules/chameleon { };
changefinder = callPackage ../development/python-modules/changefinder { };
channels = callPackage ../development/python-modules/channels { };
channels-redis = callPackage ../development/python-modules/channels-redis { };
@ -8806,6 +8808,8 @@ self: super: with self; {
netdata = callPackage ../development/python-modules/netdata { };
netdata-pandas = callPackage ../development/python-modules/netdata-pandas { };
netdisco = callPackage ../development/python-modules/netdisco { };
nethsm = callPackage ../development/python-modules/nethsm { };