wapt-virtio-guest-tools/setup.py

50 lines
1.6 KiB
Python

# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
def install():
print('Installing VirtIO Win guest tools')
version = control['version'].split('-',1)[0]
parameters = '/install /quiet /norestart'
install_exe_if_needed('virtio-win-guest-tools-%s.exe' % version, parameters, key='{8CACB657-08E1-49D1-A100-FBEB759152E5}', min_version=version)
def update_package():
print('Updating Virtio Guest tools package')
import requests,re
from waptpackage import PackageEntry
download = requests.get('https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/')
try:
results = re.search('virtio-win-(\d+(\.\d+)*)-(\d+)', download.url)
except:
error('Version not found')
version = results.group(1)
release = results.group(3)
print('Latest version is %s-%s' % (version, release))
pe = PackageEntry();
control = pe.load_control_from_wapt('.')
filename = 'virtio-win-guest-tools-%s.exe' % version
url = 'https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-%s-%s/virtio-win-guest-tools.exe' % (version, release)
if not isfile(filename):
print('Downloading VirtIO Win guest tools %s-%s from %s' % (version, release, url))
wget(url, filename)
if Version(version) > Version(control['version'].split('-',1)[0]):
print('Updating control file with new version %s' % version)
pe.version = version + '-0'
pe.maturity = 'PREPROD'
pe.save_control_to_wapt('.')
if __name__ == '__main__':
update_package()