[RISOLTO] Pacchetto per Eraser (Windows)

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Bloccato
bastien30
Messaggi: 38
Registrazione: 8 marzo 2024 - 15:21

20 novembre 2025 - 12:30

Buongiorno,

Ho creato un pacchetto per il software Eraser su Windows, con update_package() funzionante.

setup.py:

Codice: Seleziona tutto

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

def install():
    appver = control.version.split('-',1)[0]
    install_msi_if_needed(r'Eraser_%s.msi' % appver)
    remove_desktop_shortcut("Eraser")

def update_package():
    url = control.sources
    appver = control.version.split('-',1)[0]
    bin_zip = "Eraser.exe"
    bin_msi = r'Eraser (x64).msi'
    found = False
    if isfile(bin_zip):
        remove_file(bin_zip)
    for releases in bs_find_all(url, "a", "href"):
        if not "Eraser%20" in releases["href"]:
            continue
        if releases["href"].endswith(r'.exe/download'):
            if any(s in releases["href"] for s in ("Alpha", "Beta", "Runtime", "runtime")):
                continue
            else:
                version = releases["href"].split("%20")[2].split(".exe")[0]
                if Version(version) > Version(appver):
                    url_dl = releases["href"]
                    found = True
                    break
    
    if found:
        print(r'Latest version is %s' % version)
        wget(url_dl, bin_zip)
        bin_version = get_version_from_binary(bin_zip)
        if bin_version != version:
            error("Installer version is not the same as specified on download page !")
        else:
            unzip_with_7zip(filename=bin_zip, target=".", filenames=bin_msi, extract_with_full_paths=False)
            os.rename(bin_msi, r'Eraser_%s.msi' % version)
            remove_file(bin_zip)

            # Changing version of the package
            control.version = '%s-%s'%(version, control.version.split('-')[-1])
            control.save_control_to_wapt()
    else:
        print("Already up to date")
    
    remove_outdated_binaries(version)
controllare:

Codice: Seleziona tutto

package           : xxx-eraser
version           : 6.2.0.2996-2
architecture      : x64
section           : base
priority          : optional
name              : Eraser
categories        : Security,Utilities
maintainer        : XXXX
description       : Eraser permet de supprimer de façon sécurisé des fichiers ou des dossiers
depends           : 
conflicts         : 
maturity          : 
locale            : all
target_os         : windows
min_wapt_version  : 
sources           : https://eraser.heidi.ie/download/
installed_size    : 
impacted_process  : Eraser
description_fr    : 
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : The Eraser Project
keywords          : 
licence           : GNU GPL
homepage          : https://eraser.heidi.ie/
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
italbot
Messaggi: 44
Registrazione: 26 settembre 2023 - 15:50

21 novembre 2025 - 15:42

Ciao,

grazie per la condivisione.
Abbiamo appena completato il pacchetto del software; sarà disponibile sullo store tra 5 giorni.

Cordiali saluti,

Ingrid
Tranquillo IT
Bloccato