tis-filezilla
3.47.0-1
FileZilla Client (FileZilla) is a FTP, FTPS and SFTP client
103757 downloads

Description
- package : tis-filezilla
- version : 3.47.0-1
- architecture : x64
- categories : System and network
- maintainer : WAPT Team,Jimmy PELÉ
- description : FileZilla Client (FileZilla) is a FTP, FTPS and SFTP client
- locale : all
- target_os : windows
- min_wapt_version : 1.5
- sources : https://filezilla-project.org/download.php?type=client
- installed_size : 29036544
- impacted_process : filezilla.exe
- description_fr : FileZilla Client (FileZilla) est un client FTP, FTPS et SFTP
- description_pl :
- description_de :
- description_es :
- description_pt :
- description_it :
- description_nl :
- description_ru :
- editor : Tim Kosse
- licence : GNU/GPLv2
- signature_date : 2020-02-27T21:32:05.002150
- Homepage : https://filezilla-project.org/
Setup.py
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
# Declaring specific app values (TO CHANGE)
bin_name_string = 'FileZilla_%s_win64-setup.exe'
file_arch = '_win64'
silent_args = '/S'
uninstallkey_app = 'FileZilla Client'
install_path = makepath(programfiles,'FileZilla FTP Client')
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)
# Installing the package
install_exe_if_needed(bin_name_string % package_version
,silentflags=silent_args
,key=uninstallkey_app
,min_version=package_version)
# Disabling auto update
if isdir(install_path):
filecopyto('fzdefaults.xml',install_path)
# 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 update_package():
print('Download/Update package content from upstream binary sources')
from waptpackage import PackageEntry
import requests
# Update transition from BeautifulSoup 3 to 4
try:
import bs4 as BeautifulSoup
except:
import BeautifulSoup
# Getting proxy informations from WAPT settings
proxy = {}
if isfile(makepath(application_data(),'waptconsole','waptconsole.ini')):
proxywapt = inifile_readstring(makepath(user_local_appdata(),'waptconsole','waptconsole.ini'),'global','http_proxy')
if proxywapt :
proxy = {'http':proxywapt,'https':proxywapt}
# Specific app values
app_name = control.name
url = control.sources
# Get latest version number from official website
page = requests.get(url,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 = bs.find('a',{'id':'quickdownloadbuttonlink'})
url_dl = (bs_raw_string['href']).replace('_win64_sponsored',file_arch)
version = url_dl.split('_')[1]
latest_bin = bin_name_string % version
print('Latest ' + app_name + ' version is: ' + version)
print('Download url is: ' + url_dl)
# Downloading latest binaries
if not isfile(latest_bin):
print('Downloading: ' + latest_bin)
wget(url_dl,latest_bin,proxies=proxy)
# 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()