From b6085fc0204f47886b5f0dea0d8b1e519a5b747a Mon Sep 17 00:00:00 2001 From: Henri Menke Date: Mon, 27 Apr 2026 15:49:35 +0200 Subject: [PATCH] nixos/vnstat: add RFC-42 settings --- nixos/modules/services/monitoring/vnstat.nix | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/nixos/modules/services/monitoring/vnstat.nix b/nixos/modules/services/monitoring/vnstat.nix index 062d181b059a..ea7181856c95 100644 --- a/nixos/modules/services/monitoring/vnstat.nix +++ b/nixos/modules/services/monitoring/vnstat.nix @@ -6,17 +6,32 @@ }: let cfg = config.services.vnstat; + settingsFormat = pkgs.formats.keyValue { }; in { options.services.vnstat = { enable = lib.mkEnableOption "update of network usage statistics via vnstatd"; package = lib.mkPackageOption pkgs "vnstat" { }; + settings = lib.mkOption { + type = lib.types.submodule { freeformType = settingsFormat.type; }; + default = { }; + description = '' + Configuration for vnstat. Refer to + [https://humdi.net/vnstat/man/vnstat.conf.html] + or {manpage}`vnstat.conf(5)` for more information. + ''; + example = { + AlwaysAddNewInterfaces = 1; + }; + }; }; config = lib.mkIf cfg.enable { environment.systemPackages = [ cfg.package ]; + environment.etc."vnstat.conf".source = settingsFormat.generate "vnstat.conf" cfg.settings; + users = { groups.vnstatd = { };