udev: complete rework

- systemd puts all into one output now (except for man),
  because I wasn't able to fix all systemd/udev refernces
  for NixOS to work well
- libudev is now by default *copied* into another path,
  which is what most packages will use as build input :-)
- pkgs.udev = [ libudev.out libudev.dev ]; because there are too many
  references that just put `udev` into build inputs (to rewrite them all),
  also this made "${udev}/foo" fail at *evaluation* time
  so it's easier to catch and change to something more specific
This commit is contained in:
Vladimír Čunát
2015-10-04 10:03:53 +02:00
parent ec7a4ddd92
commit b44d846990
23 changed files with 115 additions and 62 deletions
+6 -6
View File
@@ -60,9 +60,9 @@ let
copy_bin_and_libs ${pkgs.mdadm}/sbin/mdadm
# Copy udev.
copy_bin_and_libs ${udev.out}/lib/systemd/systemd-udevd
copy_bin_and_libs ${udev.out}/bin/udevadm
for BIN in ${udev.libudev}/lib/udev/*_id; do
copy_bin_and_libs ${udev}/lib/systemd/systemd-udevd
copy_bin_and_libs ${udev}/bin/udevadm
for BIN in ${udev}/lib/udev/*_id; do
copy_bin_and_libs $BIN
done
@@ -146,9 +146,9 @@ let
echo 'ENV{LD_LIBRARY_PATH}="${extraUtils}/lib"' > $out/00-env.rules
cp -v ${udev.out}/lib/udev/rules.d/60-cdrom_id.rules $out/
cp -v ${udev.out}/lib/udev/rules.d/60-persistent-storage.rules $out/
cp -v ${udev.out}/lib/udev/rules.d/80-drivers.rules $out/
cp -v ${udev}/lib/udev/rules.d/60-cdrom_id.rules $out/
cp -v ${udev}/lib/udev/rules.d/60-persistent-storage.rules $out/
cp -v ${udev}/lib/udev/rules.d/80-drivers.rules $out/
cp -v ${pkgs.lvm2}/lib/udev/rules.d/*.rules $out/
${config.boot.initrd.extraUdevRulesCommands}