61 lines
2.1 KiB
Python
61 lines
2.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
from setuphelpers import *
|
|
import zipfile
|
|
|
|
uninstallkey = []
|
|
|
|
qownnotes_path = makepath(programfiles32,'QOwnNotes')
|
|
|
|
def install():
|
|
print('installing %s' % control.asrequirement())
|
|
mkdirs(qownnotes_path)
|
|
|
|
with zipfile.ZipFile('QOwnNotes.zip', 'r') as zip_ref:
|
|
zip_ref.extractall(qownnotes_path)
|
|
|
|
create_desktop_shortcut('QOwnNotes',qownnotes_path + '\QOwnNotes.exe')
|
|
|
|
|
|
def uninstall():
|
|
print('uninstalling %s' % control.asrequirement())
|
|
remove_desktop_shortcut('QOwnNotes')
|
|
remove_tree(qownnotes_path)
|
|
|
|
|
|
def update_package():
|
|
import json
|
|
|
|
pe = PackageEntry()
|
|
pe.load_control_from_wapt(os.getcwd())
|
|
package_version = pe.version.split('-')[0]
|
|
|
|
proxies = {}
|
|
if isfile(makepath(application_data(),'waptconsole','waptconsole.ini')):
|
|
proxywapt = inifile_readstring(makepath(user_local_appdata(),'waptconsole','waptconsole.ini'),'global','http_proxy')
|
|
if proxywapt :
|
|
proxies = {'http':proxywapt,'https':proxywapt}
|
|
|
|
filename,url = [(str(p['name']),str(p['browser_download_url'])) for p in json.loads(wgets('https://api.github.com/repos/pbek/QOwnNotes/releases/latest',proxies=proxies))['assets'] if 'QOwnNotes.zip' in p['name']][0]
|
|
last_version = json.loads(wgets('https://api.github.com/repos/pbek/QOwnNotes/releases/latest',proxies=proxies))['tag_name'][1:]
|
|
|
|
if Version(last_version) > Version(package_version):
|
|
|
|
for fileexe in glob.glob('qownnotes.zip'):
|
|
if fileexe != filename :
|
|
print('Delete ' + fileexe)
|
|
remove_file(fileexe)
|
|
|
|
if not isfile(filename):
|
|
print('Download ' + url)
|
|
wget(url,filename,proxies=proxies)
|
|
else:
|
|
print('Skip - %s already exist' % filename)
|
|
|
|
package_name = pe.package
|
|
pe.version = last_version + '-0'
|
|
pe.save_control_to_wapt(os.getcwd())
|
|
|
|
print('Update package content from upstream binary sources.')
|
|
|
|
else:
|
|
print ('This package is already in the latest version.') |