nixos/netdata: add module package option
This commit is contained in:
parent
32d9e5c27b
commit
b42babd160
@ -12,7 +12,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
plugins = [
|
plugins = [
|
||||||
"${pkgs.netdata}/libexec/netdata/plugins.d"
|
"${cfg.package}/libexec/netdata/plugins.d"
|
||||||
"${wrappedPlugins}/libexec/netdata/plugins.d"
|
"${wrappedPlugins}/libexec/netdata/plugins.d"
|
||||||
] ++ cfg.extraPluginPaths;
|
] ++ cfg.extraPluginPaths;
|
||||||
|
|
||||||
@ -35,6 +35,13 @@ in {
|
|||||||
services.netdata = {
|
services.netdata = {
|
||||||
enable = mkEnableOption "netdata";
|
enable = mkEnableOption "netdata";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.netdata;
|
||||||
|
defaultText = "pkgs.netdata";
|
||||||
|
description = "Netdata package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
user = mkOption {
|
user = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "netdata";
|
default = "netdata";
|
||||||
@ -141,8 +148,8 @@ in {
|
|||||||
path = (with pkgs; [ curl gawk which ]) ++ lib.optional cfg.python.enable
|
path = (with pkgs; [ curl gawk which ]) ++ lib.optional cfg.python.enable
|
||||||
(pkgs.python3.withPackages cfg.python.extraPackages);
|
(pkgs.python3.withPackages cfg.python.extraPackages);
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Environment="PYTHONPATH=${pkgs.netdata}/libexec/netdata/python.d/python_modules";
|
Environment="PYTHONPATH=${cfg.package}/libexec/netdata/python.d/python_modules";
|
||||||
ExecStart = "${pkgs.netdata}/bin/netdata -P /run/netdata/netdata.pid -D -c ${configFile}";
|
ExecStart = "${cfg.package}/bin/netdata -P /run/netdata/netdata.pid -D -c ${configFile}";
|
||||||
ExecReload = "${pkgs.utillinux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID";
|
ExecReload = "${pkgs.utillinux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID";
|
||||||
TimeoutStopSec = 60;
|
TimeoutStopSec = 60;
|
||||||
# User and group
|
# User and group
|
||||||
@ -159,7 +166,7 @@ in {
|
|||||||
systemd.enableCgroupAccounting = true;
|
systemd.enableCgroupAccounting = true;
|
||||||
|
|
||||||
security.wrappers."apps.plugin" = {
|
security.wrappers."apps.plugin" = {
|
||||||
source = "${pkgs.netdata}/libexec/netdata/plugins.d/apps.plugin.org";
|
source = "${cfg.package}/libexec/netdata/plugins.d/apps.plugin.org";
|
||||||
capabilities = "cap_dac_read_search,cap_sys_ptrace+ep";
|
capabilities = "cap_dac_read_search,cap_sys_ptrace+ep";
|
||||||
owner = cfg.user;
|
owner = cfg.user;
|
||||||
group = cfg.group;
|
group = cfg.group;
|
||||||
@ -167,7 +174,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
security.wrappers."freeipmi.plugin" = {
|
security.wrappers."freeipmi.plugin" = {
|
||||||
source = "${pkgs.netdata}/libexec/netdata/plugins.d/freeipmi.plugin.org";
|
source = "${cfg.package}/libexec/netdata/plugins.d/freeipmi.plugin.org";
|
||||||
capabilities = "cap_dac_override,cap_fowner+ep";
|
capabilities = "cap_dac_override,cap_fowner+ep";
|
||||||
owner = cfg.user;
|
owner = cfg.user;
|
||||||
group = cfg.group;
|
group = cfg.group;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user