feat(nixos): add distrobox module
This commit is contained in:
parent
386c7b18ef
commit
3ca4bd3f4b
3 changed files with 35 additions and 2 deletions
22
modules/nixos/machine/virtualisation/distrobox/default.nix
Normal file
22
modules/nixos/machine/virtualisation/distrobox/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkEnableOption singleton;
|
||||||
|
cfg = config.machine.virtualisation.distrobox;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.machine.virtualisation.distrobox = {
|
||||||
|
enable = mkEnableOption "";
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
machine.virtualisation.podman.enable = true;
|
||||||
|
home-manager.sharedModules = singleton {
|
||||||
|
home.packages = singleton pkgs.distrobox;
|
||||||
|
# persistDirs = [ ".local/share/containers" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -16,6 +16,17 @@ in
|
||||||
defaultNetwork.settings.dns_enabled = true;
|
defaultNetwork.settings.dns_enabled = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users."${config.mainUser.name}".extraGroups = [ "podman" ];
|
users.users."${config.mainUser.name}" = {
|
||||||
|
extraGroups = [ "podman" ];
|
||||||
|
# https://wiki.nixos.org/wiki/Distrobox
|
||||||
|
# subGidRanges = singleton {
|
||||||
|
# count = 65536;
|
||||||
|
# startGid = 1000;
|
||||||
|
# };
|
||||||
|
# subUidRanges = singleton {
|
||||||
|
# count = 65536;
|
||||||
|
# startUid = 1000;
|
||||||
|
# };
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434";
|
drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434";
|
||||||
ephemeralRoot = true;
|
ephemeralRoot = true;
|
||||||
};
|
};
|
||||||
virtualisation.podman.enable = true;
|
virtualisation.distrobox.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
desktop = {
|
desktop = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue