# -*- coding: utf-8 -*-
from setuphelpers import *
import os
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_name = "zpaq.exe"
app_name = "zpaq"
app_dir = makepath(programfiles32, app_name)
app_path = makepath(app_dir, bin_name)
def install():
# Declaring local variables
package_version = control.get_software_version()
app_path = makepath(app_dir, bin_name)
# Getting installed software version
if isfile(app_path):
installed_version = get_version_from_binary(app_path)
else:
installed_version = None
# Installing software
print("Installing: %s" % app_name)
if installed_version is None or installed_version < package_version or force:
killalltasks(control.get_impacted_process_list())
mkdirs(app_dir)
if isfile(app_path):
remove_file(app_path)
print("Copying: %s to: %s" % (bin_name, app_dir))
filecopyto(bin_name, app_dir)
# Creating shortcuts
create_desktop_shortcut(app_name, app_path)
create_programs_menu_shortcut(app_name, app_path)
# adding to systempath
add_to_system_path(app_dir)
# Adding software to "list-registry"
print("Registering %s to Windows Registry" % app_name)
register_windows_uninstall(control, win64app=False)
register_uninstall(app_name, icon=app_path)
else:
print("%s already installed. Skipping" % app_name)
def uninstall():
# Uninstalling software
killalltasks(control.get_impacted_process_list())
if isdir(app_dir):
remove_tree(app_dir)
unregister_uninstall(app_name)
remove_from_system_path(app_dir)
# Removing shortcuts
remove_desktop_shortcut(app_name)
remove_programs_menu_shortcut(app_name)
def audit():
# Declaring local variables
if isdir(app_dir):
print("%s is installed )" % app_name)
return "OK"
else:
print("%s is not installed" % app_name)
return "ERROR"
def update_package():
download_url = "http://srvtemplates.ad.tranquil.it/binary_cache/zpaq.exe"
latest_bin = "zpaq.exe"
sha256 = "a0f127a70943b0262060498c1723c795a8e2980f1acf0c42ee8c1dae72ae54b5"
wget(download_url, latest_bin, sha256=sha256)