
Snagit
Silent install package for Snagit
25.1.0-1
- package: tis-snagit
- name: Snagit
- version: 25.1.0-1
- maintainer: Amel FRADJ
- licence: https://www.techsmith.com/snagit-eula.html
- target_os: windows
- architecture: x64
- signature_date:
- size: 436.27 Mo
- homepage : https://www.techsmith.com/screen-capture.html
package : tis-snagit
version : 25.1.0-1
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 :
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 : 183b8dc7-dba0-4c81-a347-dad03456e49a
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version : 10.0
max_os_version :
icon_sha256sum : 163f54280570b7a1390d7c09d425e2771f807c1d757f094514af8016a4e73eb3
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date : 2025-04-01T17:52:14.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 : o2eHlde0cV7yinqZrw4mlTjHH/BpFAyulFTAf0aky39C1cMYV+U9xafVjyonRECly95RPSuoWGs4N1NSjZqKz7nTs4Ookwj+W3Q3QDneH4KgRJiFMDH2ZYeOzvtGsXZ+BJh/LLJ98yvdXBMaLZW01UKQkAXda3Ad0LFl8nADYQ6HxS8e/YJ5TgEZ4Ql1XWQgnkeFyHSkcqtrbtRMVELn/xxrrY0jxZ8KG9FzEQdaHP1wm6bg7q1ROAtCGKdyeZMK9K1EB1X4tL94cOktP9V/bsscznLtXNFHF/OUEOHfWVqhignUCCBacvj/9jUPXkEKHT1UN5MWVehMzXAs4ElBhw==
# -*- coding: utf-8 -*-
from setuphelpers import *
r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()
"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
def install():
# Declaring local variables
# 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
print("Installing: snagit.msi")
install_msi_if_needed('snagit.msi')
# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import glob
import requests
import os
def get_headers(url, proxies=None):
response = requests.head(url, allow_redirects=True, proxies=proxies)
return response.headers
def update_package():
# Declaring local variables
package_updated = False
proxies = get_proxies_from_wapt_console()
if not proxies:
proxies = get_proxies()
url_base = "https://download.techsmith.com/snagit/releases/snagit.msi"
latest_bin = "snagit.msi"
headers_file = "last_headers.txt"
# Get current headers from the URL
current_headers = get_headers(url_base, proxies)
current_etag = current_headers.get('ETag')
current_last_modified = current_headers.get('Last-Modified')
# Load previous headers
previous_etag = None
previous_last_modified = None
if os.path.isfile(headers_file):
with open(headers_file, 'r') as f:
previous_etag = f.readline().strip()
previous_last_modified = f.readline().strip()
# Check if there is an update
download_url = url_base
if (current_etag and current_etag != previous_etag) or (current_last_modified and current_last_modified != previous_last_modified):
print("A new version is available. Downloading the latest version.")
package_updated = True
elif not os.path.isfile(latest_bin):
print("File does not exist locally. Downloading the file.")
package_updated = True
else:
print("The current version is up to date. No need to download.")
# Downloading latest binaries if needed
if package_updated:
print(f"Downloading: {latest_bin}")
wget(download_url, latest_bin, proxies=proxies)
# Save the current headers for future comparison
with open(headers_file, 'w') as f:
if current_etag:
f.write(current_etag + '\n')
if current_last_modified:
f.write(current_last_modified + '\n')
# Delete outdated binaries
for f in glob.glob('*.msi'):
if f != latest_bin:
remove_file(f)
# Update the package if there is a new version
version = get_version_from_binary(latest_bin)
control.set_software_version(version)
control.save_control_to_wapt()
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
10569fd9952dffbcc9d1fc24ff4c829860959dadcc18277e31e765792e3f5490 : WAPT/control
163f54280570b7a1390d7c09d425e2771f807c1d757f094514af8016a4e73eb3 : WAPT/icon.png
cb4af2405d113cf27caec86d9a8bf48f1811d4a4da457426229abf9edb651fe3 : last_headers.txt
2664c400e7fcb081c52400229cead79c9e8ebcf7c13f1eaef43aedbd086226c7 : luti.json
0024067d36cebf504ea2644caaa2c2bf1963efa06317a8d93251045c85a81579 : setup.py
397143f0a8508659805955a34a21afd2301b9cd4adda49398241ce29635a3723 : snagit.msi
1efb4fa943041f3272bd8244b6ed4c9a825beb6d8a8722a0d7c07c11228c2d4c : update_package.py