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
+3 -3
View File
@@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, udev, utillinux, coreutils, enable_dmeventd ? false }:
{ stdenv, fetchurl, pkgconfig, systemd, libudev, utillinux, coreutils, enable_dmeventd ? false }:
let
version = "2.02.132";
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd";
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ udev ];
buildInputs = [ libudev ];
preConfigure =
''
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
--replace /usr/bin/tr ${coreutils}/bin/tr
substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \
--replace /usr/sbin/lvm $out/sbin/lvm \
--replace /usr/bin/udevadm ${udev.out}/bin/udevadm
--replace /usr/bin/udevadm ${systemd.udev.bin}/bin/udevadm
sed -i /DEFAULT_SYS_DIR/d Makefile.in
sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in