about summary refs log tree commit diff
diff options
context:
space:
mode:
authorYury G. Kudryashov <urkud.urkud@gmail.com>2011-08-18 13:05:03 +0000
committerYury G. Kudryashov <urkud.urkud@gmail.com>2011-08-18 13:05:03 +0000
commit8e35598f6bfbba10180c4996edc81c36926c7ea6 (patch)
treec9a031e65fffb850c10fc979187695bc4ecef1f4
parent69f13c492280442dbd52b0e74c77700f522ab4af (diff)
lvm-2.02.87, patch udev rules backups/udev-173@28837
svn path=/nixpkgs/branches/udev-173/; revision=28661
-rw-r--r--pkgs/os-specific/linux/lvm2/default.nix13
-rw-r--r--pkgs/os-specific/linux/lvm2/purity.patch55
2 files changed, 63 insertions, 5 deletions
diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix
index ae4b962715c97..037a3d227c461 100644
--- a/pkgs/os-specific/linux/lvm2/default.nix
+++ b/pkgs/os-specific/linux/lvm2/default.nix
@@ -1,27 +1,30 @@
 { stdenv, fetchurl, pkgconfig, udev }:
 
 let
-  v = "2.02.86";
+  v = "2.02.87";
 in
 
 stdenv.mkDerivation {
   name = "lvm2-${v}";
-  
+
   src = fetchurl {
     url = "ftp://sources.redhat.com/pub/lvm2/old/LVM2.${v}.tgz";
-    sha256 = "0bam8ampdqn4xx2agrvh5vn4xdi0gb9lmfsm31fm302y52jsyz2m";
+    sha256 = "04d605dac9r0yz9khx9pq6a8jdsf9arda2rz1a2d1qr3jhlw4kvg";
   };
-  
+
   configureFlags =
     "--disable-readline --enable-udev_rules --enable-udev_sync --enable-pkgconfig --enable-applib";
 
   buildInputs = [ pkgconfig udev ];
-  
+
+  patches = [ ./purity.patch ];
+
   # To prevent make install from failing.
   preInstall = "installFlags=\"OWNER= GROUP= confdir=$out/etc\"";
 
   meta = {
     homepage = http://sourceware.org/lvm2/;
     descriptions = "Tools to support Logical Volume Management (LVM) on Linux";
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/lvm2/purity.patch b/pkgs/os-specific/linux/lvm2/purity.patch
new file mode 100644
index 0000000000000..8446e8e9ee9d6
--- /dev/null
+++ b/pkgs/os-specific/linux/lvm2/purity.patch
@@ -0,0 +1,55 @@
+TODO: fix path to blkid as well.
+
+Currently we set it to /sbin/blkid because in nixos we fix a lot of references
+to /sbin/blkid anyway.
+
+diff --git a/udev/10-dm.rules.in b/udev/10-dm.rules.in
+index 605e088..8865d54 100644
+--- a/udev/10-dm.rules.in
++++ b/udev/10-dm.rules.in
+@@ -19,9 +19,8 @@ KERNEL=="device-mapper", NAME="(DM_DIR)/control"
+ SUBSYSTEM!="block", GOTO="dm_end"
+ KERNEL!="dm-[0-9]*", GOTO="dm_end"
+ 
+-# Set proper sbin path, /sbin has higher priority than /usr/sbin.
+-ENV{DM_SBIN_PATH}="/sbin"
+-TEST!="$env{DM_SBIN_PATH}/dmsetup", ENV{DM_SBIN_PATH}="/usr/sbin"
++# Set proper sbin path. Exit if dmsetup is not present.
++ENV{DM_SBIN_PATH}="(sbindir)"
+ TEST!="$env{DM_SBIN_PATH}/dmsetup", GOTO="dm_end"
+ 
+ # Device created, major and minor number assigned - "add" event generated.
+diff --git a/udev/13-dm-disk.rules b/udev/13-dm-disk.rules
+index 271ca22..cdc583f 100644
+--- a/udev/13-dm-disk.rules
++++ b/udev/13-dm-disk.rules
+@@ -19,7 +19,7 @@ ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}"
+ 
+ ENV{DM_SUSPENDED}=="1", GOTO="dm_end"
+ 
+-IMPORT{program}="$env{DM_SBIN_PATH}/blkid -o udev -p $tempnode"
++IMPORT{program}="/sbin/blkid -o udev -p $tempnode"
+ ENV{DM_UDEV_LOW_PRIORITY_FLAG}=="1", OPTIONS="link_priority=-100"
+ ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
+ ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
+diff --git a/udev/Makefile.in b/udev/Makefile.in
+index 11635bb..49cf732 100644
+--- a/udev/Makefile.in
++++ b/udev/Makefile.in
+@@ -12,6 +12,7 @@
+ # Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ 
+ srcdir = @srcdir@
++sbindir = @sbindir@
+ top_srcdir = @top_srcdir@
+ top_builddir = @top_builddir@
+ 
+@@ -26,7 +27,7 @@ include $(top_builddir)/make.tmpl
+ vpath %.rules $(srcdir)
+ 
+ %.rules: %.rules.in
+-	$(SED) -e "s/(DM_DIR)/$(DM_DIR)/" $< >$@
++	$(SED) -e "s/(DM_DIR)/$(DM_DIR)/" -e "s|(sbindir)|$(sbindir)|" $< >$@
+ 
+ %_install: %.rules
+ 	$(INSTALL_DATA) -D $< $(udevdir)/$(<F)