summary refs log tree commit diff
path: root/pkgs/tools/package-management/rpm/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/package-management/rpm/default.nix')
-rw-r--r--pkgs/tools/package-management/rpm/default.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/pkgs/tools/package-management/rpm/default.nix b/pkgs/tools/package-management/rpm/default.nix
new file mode 100644
index 00000000000..7d5a564b283
--- /dev/null
+++ b/pkgs/tools/package-management/rpm/default.nix
@@ -0,0 +1,36 @@
+{stdenv, fetchurl, cpio, zlib, bzip2, file, sqlite, beecrypt, neon, elfutils}:
+
+stdenv.mkDerivation {
+  name = "rpm-4.4.5";
+
+  src = fetchurl {
+    url = http://wraptastic.org/pub/rpm-4.4.x/rpm-4.4.8.tar.gz;
+    sha256 = "02ddf076bwcpxzxq9i0ii1fzw2r69fk0gjkk2yrzgzsmb01na230";
+  };
+
+  # Note: we don't add elfutils to buildInputs, since it provides a
+  # bad `ld' and other stuff.
+  buildInputs = [cpio zlib bzip2 file sqlite beecrypt neon];
+
+  NIX_CFLAGS_COMPILE = "-I${beecrypt}/include/beecrypt -I${neon}/include/neon -I${elfutils}/include";
+
+  NIX_CFLAGS_LINK = "-L${elfutils}/lib";
+
+  preConfigure = "
+    rm -rf zlib file sqlite
+
+    # Grrr, rpcgen can't find cpp. (NIXPKGS-48)
+    mkdir rpcgen
+    echo \"#! $shell\" > rpcgen/rpcgen
+    echo \"exec $(type -tp rpcgen) -Y $(dirname $(type -tp cpp)) \\\"\\$@\\\"\" >> rpcgen/rpcgen
+    chmod +x rpcgen/rpcgen
+    export PATH=$(pwd)/rpcgen:$PATH
+
+    substituteInPlace ./installplatform --replace /usr/bin/env $(type -tp env)
+    substituteInPlace Makefile.in --replace /var/tmp $(pwd)/dummy
+  ";
+
+  configureFlags = "--without-selinux --without-lua --without-python --without-perl";
+
+  patches = [./no-lua.patch];
+}