summaryrefslogtreecommitdiffstats
path: root/package/check-update-chromium.py
blob: 74942c5b0d46c32b34b3722cf24db7523b88b59a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env python3

from pkg_resources import parse_version
import json
import urllib.request


def get_upstream_version():
    url = 'http://omahaproxy.appspot.com/all?os=linux&channel=stable'
    data = urllib.request.urlopen(url).readall()
    return data.split(b'\n')[1].split(b',')[2].decode()

def get_package_version_cgit():
    cgit_plain_url = 'http://phantom.tfcis.org/~lantw44/cgit/copr-rpm-spec/plain/chromium/chromium/chromium.spec'
    spec = urllib.request.urlopen(cgit_plain_url).readall().decode()
    return spec.split('\nVersion:')[1].split()[0]

def get_package_version_copr():
    copr_api_url = 'https://copr.fedoraproject.org/api'
    url = copr_api_url + '/coprs/lantw44/chromium/monitor/'
    data = json.loads(urllib.request.urlopen(url).readall().decode())
    for pkg in data['packages']:
        if pkg['pkg_name'] == 'chromium':
            return pkg['pkg_version']

get_package_version = get_package_version_copr
latest = get_upstream_version()
current = get_package_version()

import sys
if len(sys.argv) >= 2:
    print('>>> latest = {}, packaged = {}'.format(latest, current))

if parse_version(current) < parse_version(latest):
    print('Please update the chromium package!')
    print('>>> latest = {}, packaged = {}'.format(latest, current))