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