tis-snagit icon

Snagit

Paquet d’installation silencieuse pour Snagit

26.0.0-5

  • package: tis-snagit
  • name: Snagit
  • version: 26.0.0-5
  • maintainer: Amel FRADJ
  • licence: https://www.techsmith.com/snagit-eula.html
  • target_os: windows
  • impacted_process: SnagitCapture,SnagitEditor,SnagPriv,SnagitPI64
  • architecture: x64
  • signature_date:
  • size: 437.03 Mo
  • homepage : https://www.techsmith.com/screen-capture.html

package           : tis-snagit
version           : 26.0.0-5
architecture      : x64
section           : base
priority          : optional
name              : Snagit
categories        : 
maintainer        : Amel FRADJ
description       : Snagit is a image capture program from TechSmith
depends           : 
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : SnagitCapture,SnagitEditor,SnagPriv,SnagitPI64
description_fr    : Snagit est un programme de capture d'images de TechSmith
description_pl    : Snagit to program do przechwytywania obrazów od TechSmith
description_de    : Snagit ist ein Bildaufnahmeprogramm von TechSmith
description_es    : Snagit es un programa de captura de imágenes de TechSmith
description_pt    : Snagit é um programa de captura de imagens da TechSmith
description_it    : Snagit è un programma per l'acquisizione di immagini di TechSmith
description_nl    : Snagit is een programma voor het vastleggen van afbeeldingen van TechSmith
description_ru    : Snagit - программа для захвата изображений от TechSmith
audit_schedule    : 
editor            : 
keywords          : 
licence           : https://www.techsmith.com/snagit-eula.html
homepage          : https://www.techsmith.com/screen-capture.html
package_uuid      : 92341b28-fdf9-49fd-b6a6-5a54446cad03
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 10.0.19042
max_os_version    : 
icon_sha256sum    : 163f54280570b7a1390d7c09d425e2771f807c1d757f094514af8016a4e73eb3
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2026-01-20T14:11:17.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         : HBac0IxTF7jvdvFBeHrOC/iyMR9UKtWtoNFSAiKU1R7VlJWIAMkqNSbZ2e1KdBumdgN/qg/o0+A0MgCPYR4B8PjnJG79eqN+5s64oT/FL0Xuu6OdnunxRzlon7vs9vVrsxEgZTpVXRwZb0I+HveZFyOoShg14Up0Vnxd9Y/TzgdGpG6QAn1sYdhcqU+cBSdGfNf/MDDCXsHHdBoldKCkghXh3hMCwvzxpHYpGuFmFzpS0rNG73Rhowcr3cW08u493ZOP1xS/O/L7bvexpo+5OPzgv18HaC59oxe6esctRZgEnldKPpFr8CjOXE/AuUOJgXLDBraNNDS+iGYzN64qmA==

# -*- coding: utf-8 -*-
from setuphelpers import *


def install():
    # Uninstalling older version of the software that can remains
    for to_uninstall in installed_softwares(name="Snagit"):
        if Version(to_uninstall["version"]) < Version(control.get_software_version()):
            print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
            killalltasks(ensure_list(control.impacted_process))
            run(uninstall_cmd(to_uninstall["key"]))
            wait_uninstallkey_absent(to_uninstall["key"])

    # Installing the software
    install_msi_if_needed(
        'snagit.msi',
        min_version=control.get_software_version(),
        properties={
            'START_NOW': 0,
            'TSC_START_AUTO': 0,
            'TSC_HIDE_REGISTRATION_KEY': 1
        }
    )

def uninstall():
    # Uninstalling the software
    for to_uninstall in installed_softwares(name="Snagit"):
        print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])
    
    # Clean directories left
    users = glob.glob(makepath('C:', 'Users', '*'))

    print('Cleaning up folders')
    for user in users:
        if isdir(makepath('C:', 'Users', user, 'Documents', 'Snagit')):
            remove_tree(makepath('C:', 'Users', user, 'Documents', 'Snagit'))
        if isdir(makepath('C:', 'Users', user, 'TechSmith', 'Snagit')):
            remove_tree(makepath('C:', 'Users', user, 'TechSmith', 'Snagit'))

# -*- 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

    api_url = "https://updater.techsmith.com/api/v1/CheckForUpdates"
    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36'}
    data =  {
        "ProductName": "Snagit",
        "ProductVersion": "24.4.0",
        "ProductLanguage": "ENU",
        "ProductBitness": "64",
        "OSVersion": "10.0.26100.0",
        "DotNetVersion": "4.8.9032"
    }
    
    download_url = "https://download.techsmith.com/snagit/releases/snagit.msi"
    latest_bin = download_url.rsplit('/', 1)[-1]
    latest_bin_extension = latest_bin.rsplit('.', 1)[-1]
    version = json.loads(requests.post(api_url, json=data, headers=headers).content)['NextVersion']

    # Downloading latest binaries
    print(f"Latest {app_name} version is: {version}")
    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}")

    expected_issuer = "TechSmith Corporation"
    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(get_version_from_binary(latest_bin))
    control.save_control_to_wapt()

    return package_updated

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
394100ee1424a703fafed1b97d32c74ec8dccd62fb39f728b0ba5752c49d8cc5 : WAPT/control
163f54280570b7a1390d7c09d425e2771f807c1d757f094514af8016a4e73eb3 : WAPT/icon.png
d1845ea5c69ba7e30451d50251950f15ed54ef091f85421387356861de872188 : luti.json
8c2769ce341f5b5b2a555836a8423c041e50f7932edf314d075e05efde5c6423 : setup.py
9cffc863c8c294a896e435721ec3ac2af90d402afa4f7bf4517137cfed64f8ce : snagit.msi
2895dea4f059387d334edbc68799aab05df53dd0dd793f1585e72fdb2c82d367 : update_package.py