summary refs log tree commit diff
path: root/pkgs/build-support/release/rpm-build.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2012-05-31 13:50:47 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2012-05-31 13:50:47 +0000
commitc2fd3c184b0c44f92f35a82840eba267bafde9eb (patch)
tree1d9f8855fa7eb9f390bb99bf0a5b923a20f17b72 /pkgs/build-support/release/rpm-build.nix
parentf6b2f17bc3c397703ba55ad8572b3fd312b26a02 (diff)
downloadnixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar.gz
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar.bz2
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar.lz
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar.xz
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.tar.zst
nixpkgs-c2fd3c184b0c44f92f35a82840eba267bafde9eb.zip
* Install/uninstall all RPMs in one operation. This is necessary if
  the RPMs have dependencies between each other.

svn path=/nixpkgs/trunk/; revision=34303
Diffstat (limited to 'pkgs/build-support/release/rpm-build.nix')
-rw-r--r--pkgs/build-support/release/rpm-build.nix18
1 files changed, 8 insertions, 10 deletions
diff --git a/pkgs/build-support/release/rpm-build.nix b/pkgs/build-support/release/rpm-build.nix
index a3256769762..9ec9ace0757 100644
--- a/pkgs/build-support/release/rpm-build.nix
+++ b/pkgs/build-support/release/rpm-build.nix
@@ -26,24 +26,22 @@ vmTools.buildRPM (
     ''; # */
 
     postInstall = ''
+      declare -a rpms rpmNames
       for i in $out/rpms/*/*.rpm; do
         if echo $i | grep -vq "\.src\.rpm$"; then
           echo "file rpm $i" >> $out/nix-support/hydra-build-products
-          
-          echo "installing $i..."
-          rpm -ip "$i" --excludepath /nix/store
+          rpms+=($i)
+          rpmNames+=("$(rpm -qp "$i")")
         fi
       done
 
+      echo "installing ''${rpms[*]}..."
+      rpm -ip ''${rpms[*]} --excludepath /nix/store
+
       eval "$postRPMInstall"
       
-      for i in $out/rpms/*/*.rpm; do
-        if echo $i | grep -vq "\.src\.rpm$"; then
-          rpmName="$(rpm -qp "$i")"
-          echo "uninstalling $rpmName..."
-          rpm -e "$rpmName"
-        fi
-      done
+      echo "uninstalling ''${rpmNames[*]}..."
+      rpm -e ''${rpmNames[*]}
 
       for i in $out/rpms/*/*.src.rpm; do
         echo "file srpm $i" >> $out/nix-support/hydra-build-products