50 lines
1.6 KiB
Python
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()
|
|
|