packaging: update scripts to run on OSX
Some command line options differ between the GNU and UNIX version of
base64, date and stat
Change-Id: I5d7ec0a3e797a1044e9acae3153caf9cb9eef00e
Tuleap: #634
diff --git a/sparkle/sparkle-xml-updater.sh b/sparkle/sparkle-xml-updater.sh
old mode 100644
new mode 100755
index d0dc91b..eb892dc
--- a/sparkle/sparkle-xml-updater.sh
+++ b/sparkle/sparkle-xml-updater.sh
@@ -2,11 +2,11 @@
# Take the package to add as argument ./sparkle-xml-updater.sh ring.dmg
-REPO_FOLDER=<dir>
-SPARKLE_FILE=<xml_filename>
-REPO_URL=<url>
-PACKAGE=$1
-DSA_KEY=<path_to_key_file>
+REPO_FOLDER=$1
+SPARKLE_FILE=$2
+REPO_URL=$3
+PACKAGE=$4
+DSA_KEY=$5
if [ ! -f ${PACKAGE} -o ! -f ${DSA_KEY} ]; then
echo "Can't find package or dsa key, aborting..."
@@ -14,7 +14,15 @@
fi
if [ -f ${REPO_FOLDER}/${SPARKLE_FILE} ]; then
- ITEMS=$(sed -n "/<item>/,/<\/item>/p" ${REPO_FOLDER}/${SPARKLE_FILE})
+ ITEMS=$(sed -n "/<item>/,/<\/item>/p" ${REPO_FOLDER}/${SPARKLE_FILE})
+fi
+
+if [[ `uname` == 'Darwin' ]]; then
+ PACKAGE_SIZE=`stat -f%z ${PACKAGE}`
+ DATE_RFC2822=`date "+%a, %d %b %Y %T %z"`
+else
+ PACKAGE_SIZE=`stat -c %s ${PACKAGE}`
+ DATE_RFC2822=`date -R`
fi
cat << EOFILE > ${REPO_FOLDER}/${SPARKLE_FILE}
@@ -27,8 +35,8 @@
<language>en</language>
<item>
<title>Ring nightly $(date "+%Y/%m/%d %H:%M")</title>
- <pubDate>$(date -R)</pubDate>
- <enclosure url="${REPO_URL}/$(basename ${PACKAGE})" sparkle:version="$(date +%Y%m%d%H%M)" sparkle:shortVersionString="nightly-$(date "+%Y%m%d")" length="$(stat -c %s ${PACKAGE})" type="application/octet-stream" sparkle:dsaSignature="$(/opt/joulupukki/mac_keys/sign_update.sh ${PACKAGE} ${DSA_KEY})" />
+ <pubDate>$DATE_RFC2822</pubDate>
+ <enclosure url="${REPO_URL}/$(basename ${PACKAGE})" sparkle:version="$(date +%Y%m%d%H%M)" sparkle:shortVersionString="nightly-$(date "+%Y%m%d")" length="$PACKAGE_SIZE" type="application/octet-stream" sparkle:dsaSignature="$(./sign_update.sh ${PACKAGE} ${DSA_KEY})" />
<sparkle:minimumSystemVersion>10.7</sparkle:minimumSystemVersion>
</item>
$(echo -e "${ITEMS}")