From 48fdc931a4ee497979db40f57f3bccca57bf889c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 Jun 2010 12:39:50 +0000 Subject: [PATCH] * Run udevtrigger in a separate job. This speeds up booting because it allows the `mountall' task to start mounting filesystems as soon as udev is running and devices become available (i.e. it doesn't have to wait for all devices). This means that some jobs should depend on "stopped udevtrigger" instead of "started udev". svn path=/nixos/branches/boot-order/; revision=22167 --- modules/services/hardware/udev.nix | 11 ++++++++--- modules/services/x11/xserver.nix | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/modules/services/hardware/udev.nix b/modules/services/hardware/udev.nix index d5955f88fbdf..f730e0c1f17c 100644 --- a/modules/services/hardware/udev.nix +++ b/modules/services/hardware/udev.nix @@ -185,8 +185,14 @@ in daemonType = "fork"; exec = "${udev}/sbin/udevd --daemon"; + }; - postStart = + jobs.udevtrigger = + { startOn = "started udev"; + + task = true; + + script = '' # Let udev create device nodes for all modules that have already # been loaded into the kernel (or for which support is built into @@ -200,9 +206,8 @@ in initctl emit -n new-devices ''; - }; - + }; } diff --git a/modules/services/x11/xserver.nix b/modules/services/x11/xserver.nix index a5a4c908befa..97c96ef8be93 100644 --- a/modules/services/x11/xserver.nix +++ b/modules/services/x11/xserver.nix @@ -408,7 +408,7 @@ in optional (elem "virtualbox" driverNames) kernelPackages.virtualboxGuestAdditions; jobs.xserver = - { startOn = if cfg.autorun then "started udev and started hal" else ""; + { startOn = if cfg.autorun then "filesystem and stopped udevtrigger and started hal" else ""; environment = { FONTCONFIG_FILE = "/etc/fonts/fonts.conf"; # !!! cleanup