tis-duplicati icon

duplicati

Paquet d’installation silencieuse pour duplicati

2.1.0.101-1

  • package: tis-duplicati
  • name: duplicati
  • version: 2.1.0.101-1
  • maintainer: Amel FRADJ
  • licence: LGPL
  • target_os: windows
  • architecture: x86
  • signature_date:
  • size: 83.38 Mo
  • homepage : https://duplicati.com/

package           : tis-duplicati
version           : 2.1.0.101-1
architecture      : x86
section           : base
priority          : optional
name              : duplicati
categories        : 
maintainer        : Amel FRADJ
description       : Duplicati is a free, open source, backup client that securely stores encrypted, incremental, compressed backups on cloud storage services and remote file servers
depends           : 
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : https://github.com/duplicati/duplicati/releases
installed_size    : 
impacted_process  : 
description_fr    : Duplicati est un client de sauvegarde gratuit et open source qui stocke en toute sécurité des sauvegardes cryptées, incrémentielles et compressées sur des services de stockage en nuage et des serveurs de fichiers distants
description_pl    : Duplicati to darmowy, otwarty klient kopii zapasowych, który bezpiecznie przechowuje zaszyfrowane, przyrostowe, skompresowane kopie zapasowe w usługach przechowywania w chmurze i na zdalnych serwerach plików
description_de    : Duplicati ist ein kostenloser Open-Source-Backup-Client, der verschlüsselte, inkrementelle und komprimierte Backups sicher auf Cloud-Speicherdiensten und Remote-Dateiservern speichert
description_es    : Duplicati es un cliente de copia de seguridad gratuito y de código abierto que almacena de forma segura copias de seguridad cifradas, incrementales y comprimidas en servicios de almacenamiento en la nube y servidores de archivos remotos
description_pt    : O Duplicati é um cliente de cópia de segurança gratuito e de código aberto que armazena de forma segura cópias de segurança encriptadas, incrementais e comprimidas em serviços de armazenamento na nuvem e servidores de ficheiros remotos
description_it    : Duplicati è un client di backup gratuito e open source che archivia in modo sicuro backup crittografati, incrementali e compressi su servizi di cloud storage e file server remoti
description_nl    : Duplicati is een gratis, open source back-upclient die veilig versleutelde, incrementele, gecomprimeerde back-ups opslaat op cloudopslagdiensten en externe bestandsservers
description_ru    : Duplicati - это бесплатный клиент резервного копирования с открытым исходным кодом, который надежно сохраняет зашифрованные, инкрементные, сжатые резервные копии на облачных сервисах хранения и удаленных файловых серверах
audit_schedule    : 
editor            : 
keywords          : 
licence           : LGPL
homepage          : https://duplicati.com/
package_uuid      : 5dd008fe-9e82-4853-94c4-abcc9125b8e8
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : fee169d7067d3c0b88d575f55ee9d0b83472203f1c50938efd6b6e4ed697ecb9
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-08-13T23:02:51.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         : QwxELRPNyDxsMOSdRBdNJnpQd57WhAHdepdbGetwv/mvNYMXO6lJBiRePCC83cQSo9T/ApF1y2qXFM+An765dc/q8X0jQ3fjf/UW0DjqSO+CSCyixYjhcYtuTfK6etrrBryBkuO9GCRb5F8ywH5f6Y5XN6/Md4bdvk2y/MJ1kW+VzdjuDwGaz9YuFtsGxjtaZGCCmM2VZbiVfGvfjExiHFPD9dLxD+7ZqjLkvcd2D34s3APMXuAd8ectF4uYYlMYbfVqCOmhdqeLz+gorqYlhhQwNNWkiqo+s+wtwjbFV4srnfJeukKBjGD4gZaFMMQuFLQjbO41BcTSbtrozKRBUA==

# -*- 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():

    # Uninstalling older version of the software that can remains
    for to_uninstall in installed_softwares(name="Duplicati"):
      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"])
        
    # Declaring local variables
    bin_name = glob.glob('duplicati-*-win-x86-gui.msi')[0]
    # Installing the software
    install_msi_if_needed(bin_name)



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

# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls


def update_package():
    result = False
    proxies = get_proxies()

    if not proxies:
        proxies = get_proxies_from_wapt_console()
    dict_arch = {
        "x64":"-x64-gui.msi",
        "x86" : "-x86-gui.msi"    }
    git_repo = "duplicati/duplicati"
    url_api = "https://api.github.com/repos/%s/releases" % git_repo   
    # Getting latest version information from official source
    print("API used is: %s" % url_api)
    json_load = json.loads(wgets(url_api, proxies=proxies))

    # Vérifier que json_load est une liste
    if isinstance(json_load, list):
        # Itérer à travers chaque release
        for release in json_load:

            # Vérifier que la release contient une clé "assets" et que c'est une liste
            if "assets" in release and isinstance(release["assets"], list):
                found_valid_asset = False
                for download in release["assets"]:
                    # Vérifier si l'URL de téléchargement se termine par .msi e
                    if download["browser_download_url"].endswith(".msi") and dict_arch[control.architecture] in download["browser_download_url"] :
                        url_dl = download["browser_download_url"]
                        filename = download["name"]
                        version = release["name"][1:10]
                        found_valid_asset = True
                        break

    if not isfile(filename):
        package_updated = True
        wget(url_dl,filename,proxies=proxies)

    #nettoyer les fichiers temporaires
    for f in glob.glob('*.msi'):
        if f != filename:
            remove_file(f)
    version =get_version_from_binary(filename)
    control.set_software_version(version)
    control.save_control_to_wapt()

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
b4052d4c781bd30a2e060e4833654af2da146a1e967bdf36f53ae38d07d56789 : WAPT/control
fee169d7067d3c0b88d575f55ee9d0b83472203f1c50938efd6b6e4ed697ecb9 : WAPT/icon.png
6f1492c35745cd5a9db326d31ad24fe6ff17c1a2e7a81b524253749d5c231d0e : duplicati-2.1.0.101_canary_2024-12-06-win-x86-gui.msi
f90b98efea89b2cc5697a6a4e476bbb5cf4cf83b7ecdc103bf354086c9425231 : luti.json
2e71bae0f05661ee3057eccd90b2bc4f76697f81220105522ba888cd9bf8af3c : setup.py
9923694c0c6f8ea885275549cbd36a974c049b4c671f706221e1ee5ac56801fe : update_package.py