Support update_package

This commit is contained in:
Daniel Berteaud 2018-12-14 12:10:41 +01:00
parent 3b605402cd
commit 6fea3af40d
2 changed files with 25 additions and 1 deletions

View File

@ -1,5 +1,5 @@
package : fws-apple-mobile-device-support
version : 12.1.0.25-2
version : 12.1.0.25-4
architecture : all
section : base
priority : optional

View File

@ -6,3 +6,27 @@ uninstallkey = []
def install():
print('Installing Apple Mobile Device Support')
install_msi_if_needed('AppleMobileDeviceSupport64.msi' if iswin64() else 'AppleMobileDeviceSupport.msi')
def update_package():
print('Updating Apple Mobile Device Support package')
for arch in ['32','64']:
url = 'https://www.apple.com/itunes/download/win%s' % arch
mkdirs(makepath('temp',arch))
filename = makepath('temp', 'itunes%s' % arch)
if not isfile(filename):
print('Downloading %s' % url)
wget(url,filename)
print('Extracting %s' % filename)
run('"%s" e -y -o"%s" %s' % (makepath(programfiles,'7-Zip','7z.exe'),makepath('temp',arch),filename))
version = get_msi_properties(makepath('temp','64','AppleMobileDeviceSupport64.msi'))['ProductVersion']
print('Downloaded version is %s' % version)
pe = PackageEntry();
control = pe.load_control_from_wapt('.')
if Version(version) > Version(control['version'].split('-',1)[0]):
print('New Apple Mobile Device Support version %s' % version)
os.rename(makepath('temp','32','AppleMobileDeviceSupport.msi'),'AppleMobileDeviceSupport.msi')
os.rename(makepath('temp','64','AppleMobileDeviceSupport64.msi'),'AppleMobileDeviceSupport64.msi')
pe.version = version + '-0'
pe.save_control_to_wapt('.')
print('Removing temp files')
remove_tree('temp')