
duplicati
Silent install package for duplicati
2.1.0.103-1
- package: tis-duplicati
- name: duplicati
- version: 2.1.0.103-1
- maintainer: Amel FRADJ
- licence: LGPL
- target_os: windows
- architecture: x86
- signature_date:
- size: 83.40 Mo
- homepage : https://duplicati.com/
package : tis-duplicati
version : 2.1.0.103-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 : 07aa19e7-0830-47f2-a17b-93ef3c25196d
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-25T10:01: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 : W3XWp71KYgr1CzNmAsmildpVGvu8iSpJQ78XWbLLLItC03bwVphRLY4aOnh90YnOC67GsXhK+bfDLhX9Fl+wrgpWe0fQWi2YtR2NGoqA9K3cuXn2pf4OU60TU1SxcIxDRyPRnssNDSbVFINUVVL/i6n73qqbhqA9lyLGsfWDmbnmGZZD592bxiw4BiFDpLZfdOTroqJSOkSut1Fktnso8AyYPKW7X/exLeGKWeKGEDy7A1WkoXYB90Y0wPc9KrCnZOIIc0okJowIkv6d8mRca5GAlUNBI1/eX5aBgoKUd9SvgZ51pupRhLXlaNA3YWjlW2maUlYu4e2Ol2UmsSLYMA==
# -*- 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
3c4ee3e2d02b05997b4a7795c925e05c34da506adc2b731497233a16e4a59a92 : WAPT/control
fee169d7067d3c0b88d575f55ee9d0b83472203f1c50938efd6b6e4ed697ecb9 : WAPT/icon.png
e9c461c089102b571cc045500841bb4250b983276178f921d23f799e419387bf : duplicati-2.1.0.103_canary_2024-12-21-win-x86-gui.msi
8b166961e71843d3c7c20845a971df8710ec5c41dcb34280b83500b2c36a1f8f : luti.json
2e71bae0f05661ee3057eccd90b2bc4f76697f81220105522ba888cd9bf8af3c : setup.py
9923694c0c6f8ea885275549cbd36a974c049b4c671f706221e1ee5ac56801fe : update_package.py