fix[client]: use virtualbox with kvm

This commit is contained in:
Leon Schwarzäugl 2025-10-07 19:38:01 +02:00
parent f4d9a0e5d3
commit bddc0bedc7
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
2 changed files with 54 additions and 38 deletions

View file

@ -10362,27 +10362,35 @@ This sets the VirtualBox configuration. Guest should not be enabled if not direl
{ {
options.swarselmodules.optional.virtualbox = lib.mkEnableOption "optional VBox settings"; options.swarselmodules.optional.virtualbox = lib.mkEnableOption "optional VBox settings";
config = lib.mkIf config.swarselmodules.optional.virtualbox { config = lib.mkIf config.swarselmodules.optional.virtualbox {
specialisation = { # specialisation = {
VBox.configuration = { # VBox.configuration = {
virtualisation.virtualbox = { virtualisation.virtualbox = {
host = { host = {
enable = true; enable = true;
enableExtensionPack = true; enableKvm = true;
}; addNetworkInterface = lib.mkIf config.virtualisation.virtualbox.host.enableKvm false;
# leaving this here for future notice. setting guest.enable = true will make 'restarting sysinit-reactivation.target' take till timeout on nixos-rebuild switch package = pkgs.stable.virtualbox;
guest = { enableExtensionPack = true;
enable = false; };
}; # leaving this here for future notice. setting guest.enable = true will make 'restarting sysinit-reactivation.target' take till timeout on nixos-rebuild switch
}; guest = {
# run an older kernel to provide compatibility with windows vm enable = false;
boot = {
kernelPackages = lib.mkForce pkgs.stable24_05.linuxPackages;
# kernelParams = [
# "amd_iommu=on"
# ];
};
}; };
}; };
# run an older kernel to provide compatibility with windows vm
# boot = {
# kernelPackages = lib.mkForce pkgs.stable24_05.linuxPackages;
# # kernelParams = [
# # "amd_iommu=on"
# # ];
# };
# fixes the issue of running together with QEMU
# NOTE: once you start a QEMU VM (use kvm) VirtualBox will fail to start VMs
# boot.kernelParams = [ "kvm.enable_virt_at_load=0" ];
# };
# };
}; };
} }

View file

@ -2,27 +2,35 @@
{ {
options.swarselmodules.optional.virtualbox = lib.mkEnableOption "optional VBox settings"; options.swarselmodules.optional.virtualbox = lib.mkEnableOption "optional VBox settings";
config = lib.mkIf config.swarselmodules.optional.virtualbox { config = lib.mkIf config.swarselmodules.optional.virtualbox {
specialisation = { # specialisation = {
VBox.configuration = { # VBox.configuration = {
virtualisation.virtualbox = { virtualisation.virtualbox = {
host = { host = {
enable = true; enable = true;
enableExtensionPack = true; enableKvm = true;
}; addNetworkInterface = lib.mkIf config.virtualisation.virtualbox.host.enableKvm false;
# leaving this here for future notice. setting guest.enable = true will make 'restarting sysinit-reactivation.target' take till timeout on nixos-rebuild switch package = pkgs.stable.virtualbox;
guest = { enableExtensionPack = true;
enable = false; };
}; # leaving this here for future notice. setting guest.enable = true will make 'restarting sysinit-reactivation.target' take till timeout on nixos-rebuild switch
}; guest = {
# run an older kernel to provide compatibility with windows vm enable = false;
boot = {
kernelPackages = lib.mkForce pkgs.stable24_05.linuxPackages;
# kernelParams = [
# "amd_iommu=on"
# ];
};
}; };
}; };
# run an older kernel to provide compatibility with windows vm
# boot = {
# kernelPackages = lib.mkForce pkgs.stable24_05.linuxPackages;
# # kernelParams = [
# # "amd_iommu=on"
# # ];
# };
# fixes the issue of running together with QEMU
# NOTE: once you start a QEMU VM (use kvm) VirtualBox will fail to start VMs
# boot.kernelParams = [ "kvm.enable_virt_at_load=0" ];
# };
# };
}; };
} }