mirror of
https://github.com/tuxdotrs/nix-config.git
synced 2026-09-20 00:59:04 +05:30
30 lines
733 B
Nix
30 lines
733 B
Nix
{
|
|
flake.modules.nixos.virtualisation = {
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
userName,
|
|
...
|
|
}: let
|
|
cfg = config.tnix.virtualisation;
|
|
in {
|
|
options.tnix.virtualisation.docker = {
|
|
enable = lib.mkEnableOption "Docker container runtime";
|
|
nvidia = {
|
|
enable = lib.mkEnableOption "NVIDIA Container Toolkit for Docker";
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf cfg.docker.enable {
|
|
virtualisation = {
|
|
oci-containers.backend = "docker";
|
|
docker.enable = true;
|
|
};
|
|
|
|
hardware.nvidia-container-toolkit.enable = lib.mkIf cfg.docker.nvidia.enable true;
|
|
environment.systemPackages = with pkgs; [lazydocker];
|
|
users.users.${userName}.extraGroups = ["docker"];
|
|
};
|
|
};
|
|
}
|