]> git.pld-linux.org Git - packages/google-chrome.git/blame - update-source.sh
fetch x86_64, it's updated sooner than i386
[packages/google-chrome.git] / update-source.sh
CommitLineData
fa196e82 1#!/bin/sh
9af080da
ER
2# product name
3product=chrome
4# name
5name=google-$product
6# this package
7specfile=$name.spec
e2c2e846 8# arch to check package. irrelevant for actual arch
22df2dd7 9arch=x86_64
e2c2e846 10# branch: stable, beta, unstable. default: stable
c8c83709 11branch=${1:-stable}
81efd66c
AM
12
13case "${branch}" in
14 stable|beta|unstable)
15 ;;
16 *)
17 echo "$0: Unknown branch: $branch. Supported branches: stable, beta, unstable." >&2
18 exit 1
19 ;;
20esac
21
9af080da 22sourceurl=http://dl.google.com/linux/$product/rpm/stable/$arch
48f5d819 23
fa196e82
ER
24set -e
25
26echo -n "Fetching latest version... "
27t=$(mktemp)
eb239aaf 28
b419095f
ER
29# poldek is buggy, see https://bugs.launchpad.net/poldek/+bug/1026762
30#poldek -q --st=metadata --source "$sourceurl/" --update
31#poldek -q --skip-installed --st=metadata --source "$sourceurl/" --cmd "ls google-chrome-$branch" > $t
32
fa227df9
ER
33repodata=primary-$branch-$(date +%Y%m%d).xml
34test -e $repodata || {
35 wget -c $sourceurl/repodata/primary.xml.gz
4187e117 36 gzip -dc primary.xml.gz > $repodata || test -s $repodata
fa227df9
ER
37}
38perl -ne 'm{<name>google-'$product-$branch'</name>} and m{<version epoch="0" ver="([\d.]+)" rel="(\d+)"/>} and print "$1 $2"' > $t < $repodata
eb239aaf
ER
39
40set -- $(sed -re "s,^.+-([^-]+)-([^-]+).$arch$,\1 \2," $t)
41
eb239aaf
ER
42ver=$1
43rev=$2
44
9af080da
ER
45# extract flash version
46rpm=$name-$branch-$ver-$rev.$arch.rpm
fa227df9
ER
47manifest=manifest-$ver.json
48test -e $rpm || wget -c $sourceurl/$rpm
49test -e $manifest || {
50 echo ./opt/google/chrome/PepperFlash/manifest.json > $t
51 rpm2cpio $rpm | cpio -i -E $t --to-stdout > manifest-$ver.json
52}
53flashv=$(awk -F'"' '/version/{print $4}' manifest-$ver.json)
9af080da 54
fa227df9 55rm -f $t
fa196e82
ER
56echo "$ver-$rev"
57
fa196e82 58oldrev=$(awk '/^%define[ ]+svnrev[ ]+/{print $NF}' $specfile)
9af080da 59oldflash=$(awk '/^%define[ ]+flashv[ ]+/{print $NF}' $specfile)
57c5ccb3 60if [ "$oldrev" = "$rev" -a "$oldflash" = "$flashv" ]; then
fa196e82 61 echo "Already up to date"
57c5ccb3 62 exit 0
fa196e82 63fi
57c5ccb3
ER
64
65echo "Updating $specfile for $ver r$rev"
66sed -i -e "
67 s/^\(%define[ \t]\+svnrev[ \t]\+\)[0-9]\+\$/\1$rev/
68 s/^\(%define[ \t]\+state[ \t]\+\)[a-z]\+\$/\1$branch/
69 s/^\(%define[ \t]\+flashv[ \t]\+\)[0-9.]\+\$/\1$flashv/
70 s/^\(Version:[ \t]\+\)[.0-9]\+\$/\1$ver/
71" $specfile
72../builder -ncs -g $specfile || :
73../builder -ncs -5 $specfile
This page took 0.094955 seconds and 4 git commands to generate.