Make the VirtualBox guest services depend on /dev/vboxguest

Systemd #ftw
This commit is contained in:
Eelco Dolstra 2012-08-06 14:59:58 -04:00
parent b11c5d5991
commit 27f496c1ce

View File

@ -41,7 +41,9 @@ if (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) then
jobs.virtualbox =
{ description = "VirtualBox service";
startOn = "started udev";
wantedBy = [ "multi-user.target" ];
requires = [ "dev-vboxguest.device" ];
after = [ "dev-vboxguest.device" ];
exec = "${kernel.virtualboxGuestAdditions}/sbin/VBoxService --foreground";
};
@ -60,7 +62,7 @@ if (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) then
''
InputDevice "VBoxMouse"
'';
services.xserver.displayManager.sessionCommands =
''
PATH=${makeSearchPath "bin" [ pkgs.gnugrep pkgs.which pkgs.xorg.xorgserver ]}:$PATH \
@ -72,9 +74,12 @@ if (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) then
# /dev/vboxuser is necessary for VBoxClient to work. Maybe we
# should restrict this to logged-in users.
KERNEL=="vboxuser", OWNER="root", GROUP="root", MODE="0666"
# Allow systemd dependencies on vboxguest.
KERNEL=="vboxguest", TAG+="systemd"
'';
# Make the ACPI Shutdown command to do the right thing.
# Make the ACPI Shutdown command to do the right thing.
services.acpid.enable = true;
services.acpid.powerEventCommands = "poweroff";
};