[RESUELTO] Paquete para Eraser (Windows)

Preguntas sobre paquetes WAPT / Solicitudes y ayuda sobre paquetes WAPT.
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Bloqueado
Bastien30
Mensajes: 38
Inscripción: 8 de marzo de 2024 - 15:21

20 de noviembre de 2025 - 12:30

Buen día,

Creé un paquete para el software Eraser bajo Windows, con update_package() funcionando.

configuración.py:

Código: Seleccionar todo

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

Código: Seleccionar todo

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
Mensajes: 46
Inscripciones: 26 sept 2023 - 15:50 horas.

21 de noviembre de 2025 - 15:42

Hola,

gracias por compartir.
Acabamos de empaquetar el software; estará disponible en la tienda en 5 días.

Atentamente,

Ingrid
TI tranquila
Bloqueado