nixos/shadowsocks: add extraConfig

This commit is contained in:
Henri Menke 2020-09-09 09:50:00 +12:00 committed by Benno Fünfstück
parent 0023908b4e
commit e587b5a8a8

View File

@ -17,7 +17,7 @@ let
plugin_opts = cfg.pluginOpts;
} // optionalAttrs (cfg.password != null) {
password = cfg.password;
};
} // cfg.extraConfig;
configFile = pkgs.writeText "shadowsocks.json" (builtins.toJSON opts);
@ -112,6 +112,24 @@ in
Options to pass to the plugin if one was specified
'';
};
extraConfig = mkOption {
type = types.attrs;
default = {};
example = ''
{
nameserver = "8.8.8.8";
}
'';
description = ''
Additional configuration for shadowsocks that is not covered by the
provided options. The provided attrset will be serialized to JSON and
has to contain valid shadowsocks options. Unfortunately most
additional options are undocumented but it's easy to find out what is
available by looking into the source code of
<link xlink:href="https://github.com/shadowsocks/shadowsocks-libev/blob/master/src/jconf.c"/>
'';
};
};
};