From b44d846990d779f7201f114076a2f2bcacdc91c5 Mon Sep 17 00:00:00 2001 From: Vladimír Čunát Date: Sat, 3 Oct 2015 20:52:03 +0200 Subject: 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 --- nixos/modules/services/hardware/udev.nix | 4 ++-- nixos/modules/system/boot/stage-1.nix | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'nixos') diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix index 7ff13af15926..107e1012b88d 100644 --- a/nixos/modules/services/hardware/udev.nix +++ b/nixos/modules/services/hardware/udev.nix @@ -58,13 +58,13 @@ let --replace \"/bin/mount \"${pkgs.utillinux}/bin/mount done - echo -n "Checking that all programs called by relative paths in udev rules exist in ${pkgs.udev.out}/lib/udev... " + echo -n "Checking that all programs called by relative paths in udev rules exist in ${udev}/lib/udev... " import_progs=$(grep 'IMPORT{program}="[^/$]' $out/* | sed -e 's/.*IMPORT{program}="\([^ "]*\)[ "].*/\1/' | uniq) run_progs=$(grep -v '^[[:space:]]*#' $out/* | grep 'RUN+="[^/$]' | sed -e 's/.*RUN+="\([^ "]*\)[ "].*/\1/' | uniq) for i in $import_progs $run_progs; do - if [[ ! -x ${pkgs.udev.out}/lib/udev/$i && ! $i =~ socket:.* ]]; then + if [[ ! -x ${udev}/lib/udev/$i && ! $i =~ socket:.* ]]; then echo "FAIL" echo "$i is called in udev rules but not installed by udev" exit 1 diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index 6b722c4e1105..0759b10c00a5 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -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} -- cgit 1.4.1