Merge pull request #107900 from mdlayher/mdl-corerad-toml

nixos/corerad: use pkgs.formats.toml to generate TOML configuration
This commit is contained in:
Silvan Mosberger 2020-12-30 00:37:08 +01:00 committed by GitHub
commit 24ee3830d2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,13 +4,7 @@ with lib;
let
cfg = config.services.corerad;
writeTOML = name: x:
pkgs.runCommandNoCCLocal name {
passAsFile = ["config"];
config = builtins.toJSON x;
buildInputs = [ pkgs.go-toml ];
} "jsontoml < $configPath > $out";
settingsFormat = pkgs.formats.toml {};
in {
meta.maintainers = with maintainers; [ mdlayher ];
@ -19,7 +13,7 @@ in {
enable = mkEnableOption "CoreRAD IPv6 NDP RA daemon";
settings = mkOption {
type = types.uniq types.attrs;
type = settingsFormat.type;
example = literalExample ''
{
interfaces = [
@ -64,7 +58,7 @@ in {
config = mkIf cfg.enable {
# Prefer the config file over settings if both are set.
services.corerad.configFile = mkDefault (writeTOML "corerad.toml" cfg.settings);
services.corerad.configFile = mkDefault (settingsFormat.generate "corerad.toml" cfg.settings);
systemd.services.corerad = {
description = "CoreRAD IPv6 NDP RA daemon";