nixpkgs/modules/programs/virtualbox.nix
Eelco Dolstra 8884d445b7 * VirtualBox: create a vboxnet0 interface by default.
svn path=/nixos/trunk/; revision=33331
2012-03-21 12:28:14 +00:00

36 lines
955 B
Nix

{ config, pkgs, ... }:
with pkgs.lib;
let virtualbox = config.boot.kernelPackages.virtualbox; in
{
boot.kernelModules = [ "vboxdrv" "vboxnetadp" "vboxnetflt" ];
boot.extraModulePackages = [ virtualbox ];
environment.systemPackages = [ virtualbox ];
users.extraGroups = singleton { name = "vboxusers"; };
services.udev.extraRules =
''
KERNEL=="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"
KERNEL=="vboxnetctl", OWNER="root", GROUP="root", MODE="0600"
'';
# Since we lack the right setuid binaries, set up a host-only network by default.
jobs."create-vboxnet0" =
{ task = true;
path = [ virtualbox ];
startOn = "starting network-interfaces";
script =
''
if ! [ -e /sys/class/net/vboxnet0 ]; then
VBoxManage hostonlyif create
fi
'';
};
networking.interfaces = [ { name = "vboxnet0"; ipAddress = "192.168.56.1"; } ];
}