diff options
Diffstat (limited to 'makefu/2configs/virtualisation')
-rw-r--r-- | makefu/2configs/virtualisation/docker.nix | 4 | ||||
-rw-r--r-- | makefu/2configs/virtualisation/libvirt.nix | 9 | ||||
-rw-r--r-- | makefu/2configs/virtualisation/virtualbox.nix | 26 |
3 files changed, 39 insertions, 0 deletions
diff --git a/makefu/2configs/virtualisation/docker.nix b/makefu/2configs/virtualisation/docker.nix new file mode 100644 index 000000000..98fd980cc --- /dev/null +++ b/makefu/2configs/virtualisation/docker.nix @@ -0,0 +1,4 @@ +{...}: +{ + virtualisation.docker.enable = true; +} diff --git a/makefu/2configs/virtualisation/libvirt.nix b/makefu/2configs/virtualisation/libvirt.nix new file mode 100644 index 000000000..b90467ab8 --- /dev/null +++ b/makefu/2configs/virtualisation/libvirt.nix @@ -0,0 +1,9 @@ +{ config, lib, pkgs, ... }: + +let + mainUser = config.krebs.build.user; +in { + virtualisation.libvirtd.enable = true; + users.extraUsers.${mainUser.name}.extraGroups = [ "libvirtd" ]; + networking.firewall.checkReversePath = false; # TODO: unsolved issue in nixpkgs:#9067 [bug] +} diff --git a/makefu/2configs/virtualisation/virtualbox.nix b/makefu/2configs/virtualisation/virtualbox.nix new file mode 100644 index 000000000..30de6e44a --- /dev/null +++ b/makefu/2configs/virtualisation/virtualbox.nix @@ -0,0 +1,26 @@ +{ config, lib, pkgs, ... }: + +let + mainUser = config.krebs.build.user; + vboxguestpkg = lib.stdenv.mkDerivation rec { + name = "Virtualbox-Extensions-${version}-${rev}"; + version = "5.0.20"; + rev = "106931"; + src = pkgs.fetchurl { + url = "http://download.virtualbox.org/virtualbox/${version}/Oracle_VM_VirtualBox_Extension_Pack-${version}-${rev}.vbox-extpack"; + sha256 = "1dc70x2m7x266zzw5vw36mxqj7xykkbk357fc77f9zrv4lylzvaf"; + }; + }; +in { + virtualisation.virtualbox.host.enable = true; + nixpkgs.config.virtualbox.enableExtensionPack = true; + virtualisation.virtualbox.host.enableHardening = false; + + users.extraGroups.vboxusers.members = [ "${mainUser.name}" ]; + nixpkgs.config.packageOverrides = super: { + boot.kernelPackages.virtualbox = super.boot.kernelPackages.virtualbox.override { + buildInputs = super.boot.kernelPackages.virtualBox.buildInputs + ++ [ vboxguestpkg ]; + }; + }; +} |