summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Hensing <robert@roberthensing.nl>2021-05-27 13:00:09 +0200
committerRobert Hensing <robert@roberthensing.nl>2021-06-02 10:20:11 +0200
commitf28df17dfa98b32737bd309e71d7ca04bf6722e7 (patch)
tree6d3bd2d4534709ff4688aa4fa5e03262c122992b
parentdnsname-cni: Use wrapper instead of patch for dnsmasq (diff)
downloadnixpkgs-f28df17dfa98b32737bd309e71d7ca04bf6722e7.tar.gz
nixos/containers: Add virtualisation.containers.containersConf.cniPlugins
(cherry picked from commit efba949352271ec77d9d5e7d54f2d16b9c53ee4f)
-rw-r--r--nixos/modules/virtualisation/containers.nix22
1 files changed, 21 insertions, 1 deletions
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 3974caf2233b..45d4f877ae5b 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -48,6 +48,23 @@ in
description = "containers.conf configuration";
};
+ containersConf.cniPlugins = mkOption {
+ type = types.listOf types.package;
+ defaultText = ''
+ [
+ pkgs.cni-plugins
+ ]
+ '';
+ example = lib.literalExample ''
+ [
+ pkgs.cniPlugins.dnsname
+ ]
+ '';
+ description = ''
+ CNI plugins to install on the system.
+ '';
+ };
+
registries = {
search = mkOption {
type = types.listOf types.str;
@@ -97,8 +114,11 @@ in
};
config = lib.mkIf cfg.enable {
+
+ virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ];
+
virtualisation.containers.containersConf.settings = {
- network.cni_plugin_dirs = [ "${pkgs.cni-plugins}/bin/" ];
+ network.cni_plugin_dirs = map (p: "${lib.getBin p}/bin") cfg.containersConf.cniPlugins;
engine = {
init_path = "${pkgs.catatonit}/bin/catatonit";
} // lib.optionalAttrs cfg.ociSeccompBpfHook.enable {