tis-peazip
6.9.2-3
PeaZip is a free and open-source file manager and file archiver
4013 downloads

Description
- package : tis-peazip
- version : 6.9.2-3
- architecture : x86
- categories : System and network
- maintainer : Tranquil IT,Jimmy PELÉ
- description : PeaZip is a free and open-source file manager and file archiver
- locale : all
- target_os : windows
- min_wapt_version : 1.5
- sources : https://github.com/giorgiotani/PeaZip/releases
- installed_size : 29573120
- impacted_process :
- description_fr : PeaZip est un logiciel libre permettant de compresser en divers formats (.zip, .7z, TAR…) tout type de fichiers
- description_pl :
- description_de :
- description_es :
- description_pt :
- description_it :
- description_nl :
- description_ru :
- editor : Giorgio Tani
- licence : GPL
- signature_date : 2020-02-27T21:39:29.916467
Setup.py
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
# Declaring specific app values (TO CHANGE)
bin_name_string = 'peazip-%s.WINDOWS.exe'
silent_inst_args = '/VERYSILENT'
uninstall_key = '{5A2BC38A-406C-4A5B-BF45-6991F9A05325}_is1'
install_path = makepath(programfiles32,'PeaZip')
def install():
print('installing %s' % control.asrequirement())
# Specific app values
package_version = control.version.split('-',1)[0]
# Getting the used storage on programfiles before installation (place it on the top)
get_disk_free_space_before = get_disk_free_space(programfiles)
install_exe_if_needed(bin_name_string % package_version
,silentflags=silent_inst_args
,key=uninstall_key
,min_version=package_version)
filecopyto('altconf.txt',makepath(install_path,'res'))
filecopyto('conf.txt',makepath(install_path,'res'))
# Return used storage of the program. (place it on the bottom)
get_disk_free_space_after = get_disk_free_space(programfiles)
free_space_after_diff = get_disk_free_space_before - get_disk_free_space_after
print ("Storage used: " + str(free_space_after_diff))
def uninstall():
print('uninstalling %s' % control.asrequirement())
remove_tree(install_path)
def update_package():
print('Update package content from upstream binary sources')
import requests,re
from waptpackage import PackageEntry
# Update transition from BeautifulSoup 3 to 4
try:
import bs4 as BeautifulSoup
except:
import BeautifulSoup
# Specific app values
app_name = control.name
url = control.sources
# Get Proxy informations from WAPT settings
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}
# Get latest version number from official website
page = requests.get(url + '/latest',headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64)'}).text
bs = BeautifulSoup.BeautifulSoup(page)
# bs = BeautifulSoup.BeautifulSoup(page,features="html.parser") # For bs4 only
bs_raw_string = str(bs.find('span',{'class':'css-truncate-target'}).text)
version = bs_raw_string
print('Latest ' + app_name + ' version is: ' + version)
url_dl = (url + '/download/' + version + '/' + bin_name_string % version)
print('Download url is: ' + url_dl)
latest_bin = bin_name_string % version
# Downloading latest binaires
if not isfile(latest_bin):
print('Downloading ' + latest_bin)
if not isfile(latest_bin):
wget(url_dl,latest_bin,proxies=proxies)
# Change version of the package
print ('Writing ' + version + '-0 in WAPT\\control')
pe = PackageEntry()
pe.load_control_from_wapt(os.getcwd())
pe.version = version + '-0'
pe.save_control_to_wapt(os.getcwd())
print ('Update package done. You can now build-upload your package')
else:
print ('This package is already up-to-date')
# Deleting outdated binaries
for bin_in_dir in glob.glob('*.exe') or glob.glob('*.msi'):
if bin_in_dir != latest_bin :
print('Outdated binary: ' + bin_in_dir + ' Deleted')
remove_file(bin_in_dir)
if __name__ == '__main__':
update_package()