forked from mirrors/nixpkgs
b44d846990
- 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
59 lines
1.8 KiB
Nix
59 lines
1.8 KiB
Nix
{ stdenv, fetchurl, pkgconfig, libudev, systemd, utillinux, coreutils }:
|
|
|
|
let
|
|
v = "2.02.106";
|
|
in
|
|
|
|
stdenv.mkDerivation {
|
|
name = "lvm2-${v}";
|
|
|
|
src = fetchurl {
|
|
url = "ftp://sources.redhat.com/pub/lvm2/releases/LVM2.${v}.tgz";
|
|
sha256 = "0nr833bl0q4zq52drjxmmpf7bs6kqxwa5kahwwxm9411khkxz0vc";
|
|
};
|
|
|
|
configureFlags =
|
|
"--disable-readline --enable-udev_rules --enable-udev_sync --enable-pkgconfig --enable-applib";
|
|
|
|
buildInputs = [ pkgconfig libudev ];
|
|
|
|
preConfigure =
|
|
''
|
|
substituteInPlace scripts/lvmdump.sh \
|
|
--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 ${systemd.udev.bin}/bin/udevadm
|
|
|
|
sed -i /DEFAULT_SYS_DIR/d Makefile.in
|
|
sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in
|
|
'';
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
#patches = [ ./purity.patch ];
|
|
|
|
# To prevent make install from failing.
|
|
preInstall = "installFlags=\"OWNER= GROUP= confdir=$out/etc\"";
|
|
|
|
# Install systemd stuff.
|
|
#installTargets = "install install_systemd_generators install_systemd_units install_tmpfiles_configuration";
|
|
|
|
postInstall =
|
|
''
|
|
substituteInPlace $out/lib/udev/rules.d/13-dm-disk.rules \
|
|
--replace $out/sbin/blkid ${utillinux.bin}/sbin/blkid
|
|
|
|
# Systemd stuff
|
|
mkdir -p $out/etc/systemd/system $out/lib/systemd/system-generators
|
|
cp scripts/blk_availability_systemd_red_hat.service $out/etc/systemd/system
|
|
cp scripts/lvm2_activation_generator_systemd_red_hat $out/lib/systemd/system-generators
|
|
'';
|
|
|
|
meta = {
|
|
homepage = http://sourceware.org/lvm2/;
|
|
descriptions = "Tools to support Logical Volume Management (LVM) on Linux";
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|