8 # arch to check package. irrelevant for actual arch
10 # branch: stable, beta, unstable. default: stable
17 echo "$0: Unknown branch: $branch. Supported branches: stable, beta, unstable." >&2
22 sourceurl=http://dl.google.com/linux/$product/rpm/stable/$arch
26 echo -n "Fetching latest version... "
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
33 wget -c $sourceurl/repodata/primary.xml.gz
34 zcat primary.xml.gz | perl -ne 'm{<name>google-'$product-$branch'</name>} and m{<version epoch="0" ver="([\d.]+)" rel="(\d+)"/>} and print "$1 $2"' > $t
36 set -- $(sed -re "s,^.+-([^-]+)-([^-]+).$arch$,\1 \2," $t)
43 # extract flash version
44 rpm=$name-$branch-$ver-$rev.$arch.rpm
45 wget -c $sourceurl/$rpm
47 echo ./opt/google/chrome/PepperFlash/manifest.json > $t
48 rpm2cpio $rpm | cpio -i -E $t --to-stdout > manifest.json
49 flashv=$(awk -F'"' '/version/{print $4}' manifest.json)
53 oldrev=$(awk '/^%define[ ]+svnrev[ ]+/{print $NF}' $specfile)
54 oldflash=$(awk '/^%define[ ]+flashv[ ]+/{print $NF}' $specfile)
55 if [ "$oldrev" != "$rev" -o "$oldflash" != "$flashv" ]; then
56 echo "Updating $specfile for $ver r$rev"
58 s/^\(%define[ \t]\+svnrev[ \t]\+\)[0-9]\+\$/\1$rev/
59 s/^\(%define[ \t]\+state[ \t]\+\)[a-z]\+\$/\1$branch/
60 s/^\(%define[ \t]\+flashv[ \t]\+\)[a-z]\+\$/\1$flashv/
61 s/^\(Version:[ \t]\+\)[.0-9]\+\$/\1$ver/
63 ../builder -ncs -g $specfile || :
64 ../builder -ncs -5 $specfile
66 echo "Already up to date"