tis-treesizefree

4.7.3-23
TreeSize Free is a free disk space manager for Windows. The software shows you the sizes of folders including all subfolders
3944 downloads
Download
See build result See VirusTotal scan
tis-treesizefree icon
  • package : tis-treesizefree
  • name : TreeSize Free
  • version : 4.7.3-23
  • categories : System and network,Utilities
  • maintainer : WAPT Team,Tranquil IT,Jimmy PELÉ,Gaëtan SEGAT
  • editor : JAM Software
  • licence : proprietary_free,wapt_public
  • locale : all
  • target_os : windows
  • impacted_process : TreeSizeFree
  • architecture : x64
  • signature_date : 2024-11-30 12:00
  • size : 13.32 Mo
  • installed_size : 10.60 Mo
  • homepage : https://www.jam-software.com/treesize_free
package           : tis-treesizefree
version           : 4.7.3-23
architecture      : x64
section           : base
priority          : optional
name              : TreeSize Free
categories        : System and network,Utilities
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Gaëtan SEGAT
description       : TreeSize Free is a free disk space manager for Windows. The software shows you the sizes of folders including all subfolders
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.1
sources           : https://www.jam-software.com/treesize_free#different-versions-for-different-requirements
installed_size    : 10602173
impacted_process  : TreeSizeFree
description_fr    : TreeSize Free est un gestionnaire d'espace disque gratuit pour Windows. Le logiciel vous indique la taille des dossiers et de leurs sous-dossiers
description_pl    : TreeSize Free to darmowy menedżer przestrzeni dyskowej dla systemu Windows. Program pokazuje rozmiary folderów wraz ze wszystkimi podfolderami
description_de    : TreeSize Free ist ein kostenloser Speicherplatzmanager für Windows. Die Software zeigt Ihnen die Größe von Ordnern einschließlich aller Unterordner an
description_es    : TreeSize Free es un gestor de espacio en disco gratuito para Windows. El software le muestra los tamaños de las carpetas incluyendo todas las subcarpetas
description_pt    : O TreeSize Free é um gestor de espaço em disco gratuito para Windows. O software mostra-lhe o tamanho das pastas, incluindo todas as subpastas
description_it    : TreeSize Free è un gestore di spazio su disco gratuito per Windows. Il software mostra le dimensioni delle cartelle, comprese tutte le sottocartelle
description_nl    : TreeSize Free is een gratis schijfruimtebeheerder voor Windows. De software toont u de grootte van mappen inclusief alle submappen
description_ru    : TreeSize Free - это бесплатный менеджер дискового пространства для Windows. Программа показывает размеры папок, включая все вложенные папки
audit_schedule    : 
editor            : JAM Software
keywords          : treesize,treesizer,free,freespace,freeing,space,hdd,ssd,disk,hard,drive,solid,state,mft,scan,management,ntfs,file,files,folder,folders,find,seek
licence           : proprietary_free,wapt_public
homepage          : https://www.jam-software.com/treesize_free
package_uuid      : 38bbda6c-f5c1-4f43-bc26-1d385e9dd23d
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://www.jam-software.com/treesize_free/changes.shtml
min_os_version    : 6.2
max_os_version    : 
icon_sha256sum    : 3caece36b6a0823ffa11c9f0500d2bad6b99d9c452d1ab0468ca49296c3fe783
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2024-11-30T12:00:11.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : AUFk11jq2tsgZYqfZYWH9ksUiAOGRnKnsQxWPsF3MgAZs29dZKaqAP5kAlyKAtuYvhY2ryN8pTPHdV0C7SLDIdjIpNlMqzfB0AzD5f5F12cHeU92Y/XXJjpbbWJkgbEXXhXcX+a31Rs+I8FmNg9qvsRTasCqqvV0gn1wV4dI3mjH5utC3Db4qxhnIzl0K1o3v5as+z683MI0ucOZf24QaWZyXJ6cjkU1B32jFNF/xd1yiJ2ZW4/J4/Tu8W668rK4KfLur5ZRy27H2HIDz8bERWsCFkzemFWoIblHCz82IG2EERO65P7odYI5BTsxcnnrtuGmQxTl1nPFAoGSe5Veug==
# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
from xml.etree.ElementTree import parse


def install():
    bin_name = glob.glob("TreeSizeFreeSetup*.exe")[0]
    app_uninstallkey = "TreeSize Free_is1"

    install_exe_if_needed(
        bin_name,
        silentflags="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-",
        key=app_uninstallkey,
        min_version=control.get_software_version(),
    )

    # Adding QuietUninstallString
    quiet_uninstall_string = installed_softwares(uninstallkey=app_uninstallkey)[0]["uninstall_string"] + " /VERYSILENT /SUPPRESSMSGBOXES /NORESTART"
    register_uninstall(app_uninstallkey, quiet_uninstall_string=quiet_uninstall_string)


def session_cleanup():
    print("Removing the TreeSize shortcut on user appdata")
    remove_user_programs_menu_shortcut('TreeSizeFree.exe')


def session_setup():
    print("Disabling: update check, pop-ups and context menu once")
    user_conf_dir = makepath(application_data, "JAM Software", "TreeSize Free")
    user_conf_file = makepath(user_conf_dir, "GlobalOptions.xml")

    user_conf_content = """<?xml version="1.0" encoding="UTF-8"?>
<GlobalOptions Version="3" AppVersion="0" Type="TGlobalOptions">
	<ContextMenuEntries>4</ContextMenuEntries>
	<AskForRestartAsAdministrator>False</AskForRestartAsAdministrator>
	<DoNotAskAgainList Type="TSerializableStringIntDictionary"></DoNotAskAgainList>
	<CheckForUpdateOptions Type="TCheckForUpdateOptions">
		<LatestOnlineVersion>0</LatestOnlineVersion>
		<LastAutomaticCheckForUpdate>0</LastAutomaticCheckForUpdate>
		<CheckForUpdatesAutomatically>False</CheckForUpdatesAutomatically>
	</CheckForUpdateOptions>
</GlobalOptions>
"""
    if not isdir(user_conf_dir):
        mkdirs(user_conf_dir)

    if isfile(user_conf_file) and os.path.getsize(user_conf_file) != 0:
        tree = parse(user_conf_file)
        root = tree.getroot()

        # Modify ContextMenuEntries
        context_menu_entries = root.find('ContextMenuEntries')
        if context_menu_entries is not None:
            context_menu_entries.text = '4'

        # Modify AskForRestartAsAdministrator
        ask_restart = root.find('AskForRestartAsAdministrator')
        if ask_restart is not None:
            ask_restart.text = 'False'

        # Modify CheckForUpdateOptions
        update_options = root.find('CheckForUpdateOptions')
        if update_options is not None:
            latest_version = update_options.find('LatestOnlineVersion')
            latest_version.text = '0'

            last_check = update_options.find('LastAutomaticCheckForUpdate')
            last_check.text = '0'

            auto_check = update_options.find('CheckForUpdatesAutomatically')
            auto_check.text = 'False'

        tree.write(user_conf_file, encoding='utf-8', xml_declaration=True)
    else:
        with open(user_conf_file, 'w') as xml_file:
            xml_file.write(user_conf_content)
# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import waptlicences


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    download_url = "https://downloads.jam-software.de/treesize_free/TreeSizeFreeSetup.exe"
    latest_bin = download_url.rsplit("/", 1)[-1]
    latest_bin_extension = latest_bin.rsplit(".", 1)[-1]

    print(f"Download URL is: {download_url}")
    if not isfile(latest_bin):
        print(f"Downloading: {latest_bin}")
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print(f"Binary is present: {latest_bin}")

    version = get_version_from_binary(latest_bin)
    print(f"Latest {app_name} version is: {version}")

    expected_issuer = "JAM Software GmbH"
    sign_name = waptlicences.check_msi_signature(latest_bin)[0]
    if sign_name != expected_issuer:
        error(f'Bad issuer {sign_name} != {expected_issuer} ')

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f'*.{latest_bin_extension}'):
        if f != latest_bin:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated
c685e16e86183d11c30407ee688dc5a6081e3ea1958d3b9b509bc36e3edbce07 : TreeSizeFreeSetup.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
468f7e69c792620c43bc495c74ed5fe4dba9b3f2c572fa7c2854ccd438585ea6 : WAPT/control
3caece36b6a0823ffa11c9f0500d2bad6b99d9c452d1ab0468ca49296c3fe783 : WAPT/icon.png
3db1042acca525d31bf73e4c956a78ed0dbf60f38f4dfb9189e65519b4b43ec7 : luti.json
5ddda86b03a5931be1ddeac04bcff6bfc42ad39af43d5da2baec6cfe834934e6 : setup.py
7a2335aad8b58d988f10afef9f88a0f15f0d202fa2e9d33f4ee6b3f7ee04af9e : update_package.py