feat: Add virtualbox module with kvm
This commit is contained in:
parent
edfa8b7746
commit
35db53aac0
2 changed files with 40 additions and 0 deletions
|
|
@ -33,6 +33,10 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
unixName = "david";
|
unixName = "david";
|
||||||
};
|
};
|
||||||
|
virtualbox = {
|
||||||
|
enable = true;
|
||||||
|
unixName = "david";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
programs = {
|
programs = {
|
||||||
bash.enable = true;
|
bash.enable = true;
|
||||||
|
|
|
||||||
36
nixos/modules/virtualisation/virtualbox.nix
Normal file
36
nixos/modules/virtualisation/virtualbox.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.youthlic.virtualisation.virtualbox;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
youthlic.virtualisation.virtualbox = {
|
||||||
|
enable = lib.mkEnableOption "virtualbox";
|
||||||
|
unixName = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
users.groups."vboxusers".members = [cfg.unixName];
|
||||||
|
virtualisation.virtualbox = {
|
||||||
|
host = {
|
||||||
|
enableKvm = true;
|
||||||
|
enableExtensionPack = true;
|
||||||
|
enable = true;
|
||||||
|
addNetworkInterface = false;
|
||||||
|
enableHardening = true;
|
||||||
|
};
|
||||||
|
guest = {
|
||||||
|
vboxsf = true;
|
||||||
|
use3rdPartyModules = true;
|
||||||
|
seamless = true;
|
||||||
|
enable = true;
|
||||||
|
dragAndDrop = true;
|
||||||
|
clipboard = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue