Author: eelco
Date: Wed Apr 20 15:17:01 2011
New Revision: 26906
URL: https://svn.nixos.org/websvn/nix/?rev=26906&sc=1

Log:
* Download all ISOs, generate a .htaccess with some symbolic redirects to the 
latest
  release.

Modified:
   release/trunk/mirror/mirror-nixos-isos.sh

Modified: release/trunk/mirror/mirror-nixos-isos.sh
==============================================================================
--- release/trunk/mirror/mirror-nixos-isos.sh   Wed Apr 20 14:04:54 2011        
(r26905)
+++ release/trunk/mirror/mirror-nixos-isos.sh   Wed Apr 20 15:17:01 2011        
(r26906)
@@ -1,8 +1,11 @@
 #! /bin/sh -e
 
+# This script downloads the latest NixOS ISO images from the "tested"
+# view in Hydra to $mirrorDir (http://nixos.org/releases/nixos).
+
 curl="curl --silent --show-error --fail"
 
-mirrorDir=/tmp/nixos-isos
+mirrorDir=/data/releases/nixos
 
 url=$($curl --head http://hydra.nixos.org/view/nixos/tested/latest | sed 
's/Location: \(.*\)/\1/; t; d')
 
@@ -21,17 +24,33 @@
 if [ -d $releaseDir ]; then
     echo "Release already exists"
 else
-    
-    mkdir -p $releaseDir
 
-    cd $releaseDir
+    tmpDir=$mirrorDir/.tmp-$release-$$
+    mkdir -p $tmpDir
+
+    wget --directory=$tmpDir $url/tarball/download
+    wget --directory=$tmpDir $url/iso_minimal-i686-linux/download
+    wget --directory=$tmpDir $url/iso_minimal-x86_64-linux/download
+    wget --directory=$tmpDir $url/iso_graphical-i686-linux/download
+    wget --directory=$tmpDir $url/iso_graphical-x86_64-linux/download
 
-    wget --directory=$releaseDir $url/tarball/download
-    wget --directory=$releaseDir $url/iso_minimal-i686-linux/download
-    wget --directory=$releaseDir $url/iso_minimal-x86_64-linux/download
-    #wget --directory=$releaseDir $url/iso_graphical-i686-linux/download
-    #wget --directory=$releaseDir $url/iso_graphical-x86_64-linux/download
+    mv $tmpDir $releaseDir
 
 fi
 
-ln -sfn $release $mirrorDir/latest
+#ln -sfn $release $mirrorDir/latest
+
+# Generate a .htaccess with some symbolic redirects to the latest version.
+htaccess=$mirrorDir/.htaccess
+
+echo "Redirect /releases/nixos/latest 
http://nixos.org/releases/nixos/$release"; > $htaccess.tmp
+fn=$(cd $releaseDir && echo nixos-minimal-*-i686-linux.iso)
+echo "Redirect /releases/nixos/latest-iso-minimal-i686-linux 
http://nixos.org/releases/nixos/$release/$fn"; >> $htaccess.tmp
+fn=$(cd $releaseDir && echo nixos-minimal-*-x86_64-linux.iso)
+echo "Redirect /releases/nixos/latest-iso-minimal-x86_64-linux 
http://nixos.org/releases/nixos/$release/$fn"; >> $htaccess.tmp
+fn=$(cd $releaseDir && echo nixos-graphical-*-i686-linux.iso)
+echo "Redirect /releases/nixos/latest-iso-graphical-i686-linux 
http://nixos.org/releases/nixos/$release/$fn"; >> $htaccess.tmp
+fn=$(cd $releaseDir && echo nixos-graphical-*-x86_64-linux.iso)
+echo "Redirect /releases/nixos/latest-iso-graphical-x86_64-linux 
http://nixos.org/releases/nixos/$release/$fn"; >> $htaccess.tmp
+
+mv $htaccess.tmp $htaccess
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to