tis-stretchly icon

Stretchly

Silent install package for Stretchly

1.19.0-2
Office
Office

  • package: tis-stretchly
  • name: Stretchly
  • version: 1.19.0-2
  • categories: Office
  • maintainer: WAPT Team,Tranquil IT,Ingrid TALBOT
  • editor: Jan Hovancik
  • licence: opensource_free,cpe:/a:bsd:bsd_license,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: Stretchly
  • architecture: x64
  • signature_date:
  • size: 148.80 Mo
  • installed_size: 349.54 Mo
  • homepage : https://hovancik.net/stretchly/

package           : tis-stretchly
version           : 1.19.0-2
architecture      : x64
section           : base
priority          : optional
name              : Stretchly
categories        : Office
maintainer        : WAPT Team,Tranquil IT,Ingrid TALBOT
description       : Stretchly is a cross-platform open source app that reminds you to take breaks when working on your computer
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : 
installed_size    : 349538632
impacted_process  : Stretchly
description_fr    : Stretchly est une application open source multiplateforme qui vous rappelle de faire des pauses lorsque vous travaillez sur votre ordinateur
description_pl    : Stretchly to wieloplatformowa aplikacja open source, która przypomina o robieniu przerw podczas pracy na komputerze
description_de    : Stretchly ist eine plattformübergreifende Open-Source-Anwendung, die Sie daran erinnert, Pausen zu machen, wenn Sie an Ihrem Computer arbeiten
description_es    : Stretchly es una aplicación multiplataforma de código abierto que te recuerda que debes hacer pausas cuando trabajas con el ordenador
description_pt    : Stretchly é uma aplicação de código aberto multiplataforma que o lembra de fazer pausas quando trabalha no seu computador
description_it    : Stretchly è un'applicazione open source multipiattaforma che ricorda di fare delle pause quando si lavora al computer
description_nl    : Stretchly is een cross-platform open source app die je eraan herinnert om pauzes te nemen als je op je computer werkt
description_ru    : Stretchly - это кроссплатформенное приложение с открытым исходным кодом, которое напоминает вам о необходимости делать перерывы при работе за компьютером
audit_schedule    : 
editor            : Jan Hovancik
keywords          : breaks,working,computer
licence           : opensource_free,cpe:/a:bsd:bsd_license,wapt_public
homepage          : https://hovancik.net/stretchly/
package_uuid      : ec20f7cd-ee5d-4d2a-80ad-959687da2084
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://github.com/hovancik/stretchly/releases
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 42ea98667b44ce66296cf55f8dd2fa9dbff86f69793e967fc8a6786e21519706
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-11-18T17:06:45.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         : W6EEjYj2aVf2mgiNr4HnibvGz0c149mL64LhBcpmWRc8zuzmfBhFppeLeiIgCoAxgUaxSO59nChN0yXNtcrRq5n9h0SEV53/uaycjLo8Mcj4pMP68nagNcKoisEVqgv7QK2RaynuZhKz/LK+fRgkxhi7zqHDTNJKd+tWBcO7yo3f0rL63nrznXkRJeAgz4oF/S2fiup3DS3iSQN/ccR2BLNOW8aooHWbRN6hruFFkKTrSnG/3lJY2ZDTgQVk4EAQRLHMr07yux29CXSLKR0l1GEA/LRKy33ae74h8m0nK+nN4gBDqd+UchqlpxaqTwxma3Y/GoYxrUUMJAR7p2clvQ==

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

install_path = makepath(programfiles, "Stretchly")


def install():
    bin_name = glob.glob("Stretchly-Setup-*.exe")[0]
    install_exe_if_needed(
        bin_name,
        silentflags=" /allusers /S",
        key="4f357cc2-fcfb-5fb1-89af-67446d29eff0",
        min_version=control.get_software_version(),
    )


def uninstall():
    for to_uninstall in installed_softwares("Stretchly"):
        print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])
        if isdir(install_path):
            remove_tree(install_path)

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


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://api.github.com/repos/hovancik/stretchly/releases/latest"
    latest_release = wgets(api_url, proxies=proxies, as_json=True)
    version = latest_release['tag_name'].replace('v', '')

    download_dict = {
	'windows-x64': f'Stretchly-Setup-{version}.exe',
        'macos-x64': f'Stretchly-{version}.dmg',
        'macos-arm': f'Stretchly-{version}-arm64.dmg',
    }
    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]

    for asset in latest_release["assets"]:
        if asset["name"] == download_dict[os_type]:
            download_url = asset["browser_download_url"]
            latest_bin = asset["name"]
            latest_bin_extension = latest_bin.rsplit(".", 1)[-1]
            break

    # 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}")

    # 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

20a2ee5295a8a61e648be06d971d5a51273c28bddb41aa8e53e733c57d0b7e4b : Stretchly-Setup-1.19.0.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
f82841258cb3449dcf27e7529eb8c2b087c1230956792cb9013a4c0d8128611b : WAPT/control
42ea98667b44ce66296cf55f8dd2fa9dbff86f69793e967fc8a6786e21519706 : WAPT/icon.png
d2e53141d6b5f88d49ae27632c3cfdbffd98863d38efe41c8e9305245e137932 : luti.json
3bf314eb6cea8453d270c22563d8a3b4cbea1b2f9c84a9c02819b179e50281d6 : setup.py
b38dd445d96a89993fd115c12996e00d6e30c98c7a0748c1c7aee2b756529e60 : update_package.py