summaryrefslogtreecommitdiff
path: root/modules/nixos/traits
diff options
context:
space:
mode:
Diffstat (limited to 'modules/nixos/traits')
-rw-r--r--modules/nixos/traits/containers.nix32
-rw-r--r--modules/nixos/traits/nvidia.nix4
2 files changed, 14 insertions, 22 deletions
diff --git a/modules/nixos/traits/containers.nix b/modules/nixos/traits/containers.nix
index 407ee51..b684803 100644
--- a/modules/nixos/traits/containers.nix
+++ b/modules/nixos/traits/containers.nix
@@ -10,29 +10,17 @@ in
{
options.traits.containers = {
enable = lib.mkEnableOption "support for containers";
- enableNvidia = lib.mkEnableOption "the use of nvidia-container-toolkit" // {
- default = lib.elem "nvidia" config.services.xserver.videoDrivers;
- defaultText = lib.literalExpression ''
- lib.elem "nvidia" config.services.xserver.videoDrivers
- '';
- };
};
- config = lib.mkIf cfg.enable (
- lib.mkMerge [
- {
- virtualisation = {
- podman = {
- enable = true;
- extraPackages = [ pkgs.podman-compose ];
- autoPrune.enable = true;
- };
-
- oci-containers.backend = "podman";
- };
- }
+ config = lib.mkIf cfg.enable {
+ virtualisation = {
+ podman = {
+ enable = true;
+ extraPackages = [ pkgs.podman-compose ];
+ autoPrune.enable = true;
+ };
- (lib.mkIf cfg.enableNvidia { hardware.nvidia-container-toolkit.enable = true; })
- ]
- );
+ oci-containers.backend = "podman";
+ };
+ };
}
diff --git a/modules/nixos/traits/nvidia.nix b/modules/nixos/traits/nvidia.nix
index dab26c8..bd57108 100644
--- a/modules/nixos/traits/nvidia.nix
+++ b/modules/nixos/traits/nvidia.nix
@@ -50,6 +50,10 @@ in
};
};
})
+
+ (lib.mkIf config.traits.containers.enable {
+ hardware.nvidia-container-toolkit.enable = true;
+ })
]
);
}