kinect_fetch_fw: install the firmware as UACFirmware
[kinect-audio-setup.git] / kinect_fetch_fw
index a358327..7c84cf1 100755 (executable)
@@ -12,6 +12,9 @@
 #
 # wget and 7z from p7zip-full are needed, they can be installed with
 #   sudo aptitude install wget p7zip-full
+#
+# NOTE: p7zip-full >= 9.20 is required in order to extract .msi files
+#       correctly
 
 set -e
 
@@ -19,7 +22,7 @@ SDK_URL=${SDK_URL:-"http://download.microsoft.com/download/F/9/9/F99791F2-D5BE-4
 SDK_MD5="40764fe9e00911bda5095e5be777e311"
 
 [ $# -lt 1 ] && { echo "usage: $(basename "$0") <firmware destdir> [<path of kinect_upload_fw binary>]" 1>&2; exit 1; }
-FW_DESTDIR=$(readlink -f $1)
+FW_DESTDIR=$(readlink -m $1)
 LOADER_PATH=${2:-"/usr/local/sbin/kinect_upload_fw"}
 
 command -v wget >/dev/null 2>&1 || { echo "$(basename "$0"): command 'wget' is needed." 1>&2 ; exit 1; }
@@ -36,7 +39,7 @@ Kinect Sensor device from the Microsoft Kinect for Windows SDK:
 http://kinectforwindows.org/
 
 The full license of the SDK can be found at:
-http://www.kinectforwindows.org/download/EULA.htm
+http://research.microsoft.com/en-us/um/legal/kinectsdk-tou_noncommercial.htm
 
 EOM
 
@@ -56,15 +59,14 @@ echo -n "Extracting the UAC firmware..."
 echo " done."
 
 FW_FILE=$(ls UACFirmware.* | cut -d ' ' -f 1)
+FIRMWARE_PATH="${FW_DESTDIR}/UACFirmware"
 
-install -d "${DESTDIR}${FW_DESTDIR}"
-install -m 644 "$FW_FILE" "${DESTDIR}${FW_DESTDIR}"
-
-FIRMWARE_PATH=$FW_DESTDIR/$(basename "$FW_FILE")
+install -d "$FW_DESTDIR"
+install -m 644 "$FW_FILE" "$FIRMWARE_PATH"
 
-if [ -f "${DESTDIR}/lib/udev/rules.d/55-kinect_audio.rules" ];
+if [ -f "/lib/udev/rules.d/55-kinect_audio.rules" ];
 then
-  sed -e "s|@LOADER_PATH@|$LOADER_PATH|g" \
-      -e "s|@FIRMWARE_PATH@|$FIRMWARE_PATH|g" \
-      -i "${DESTDIR}/lib/udev/rules.d/55-kinect_audio.rules"
+  sed -e "s|@LOADER_PATH@|${LOADER_PATH}|g" \
+      -e "s|@FIRMWARE_PATH@|${FIRMWARE_PATH}|g" \
+      -i "/lib/udev/rules.d/55-kinect_audio.rules"
 fi