Page 1 sur 1

[RESOLU] tis-vmwaretools

Publié : 10 juin 2026 - 16:45
par jsdmc
Bonjour,

Il y a un problème de reconnaissance de version après installation dans tis-vmwaretools.

Le paquet installe l'applicatif, mais lors de la vérification de la clé d'installation dans le registre le paquet attends vmwaretools-version-build alors que la clé retourne vmwaretools-version.

Le paquet reste donc en erreur malgré l'installation correcte de l'applicatif.

Re: tis-vmwaretools

Publié : 10 juin 2026 - 17:56
par dcardon
Bonjour Julien,

merci pour la remontée.

Pour info les paquets wapt pour du win x64 sont testé sur une ferme proxmox, et le setup.exe d'install vmwaretools ne veut pas se lancer si le bios de la VM n'est pas un bios vmware, donc le test d'install avait du être bypassé. Normalement la ferme LUTI teste les clefs de désinstallation, mais en l'occurence, ici ça n'avait pas pu être testé et c'est passé à la trappe.

On va voir pour corriger rapidement.

Cordialement,

Denis

Re: tis-vmwaretools

Publié : 11 juin 2026 - 15:08
par kcherel
Bonjour Julien,

Effectivement il y'a une incohérence entre la version présente sur le nom du binaire récupérer et celui correspondant à la version référencée sur le binaire.

Le problème vient d'être réglé.
Voici le correctif appliqué sur la partie setup.py:

Code : Tout sélectionner

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

def is_vmware_host():
    wmi = wmi_info(keys=['Win32_ComputerSystem'])
    computer_system = wmi['Win32_ComputerSystem']

    if isinstance(computer_system, dict):
        if 'VMware, Inc.' in computer_system['Manufacturer']:
            return True

    if isinstance(computer_system, list):
        for v in computer_system:
            if 'VMware, Inc.' in v['Manufacturer']:
                return True
            
    return False

def install():
    bin_name = glob.glob("VMware-tools-*.exe")[0]
    print(f"Installing: {bin_name}")

    if not is_vmware_host():
        error("The current computer is not VMware virtual machine !")

    install_exe_if_needed(
        bin_name,
        silentflags='/S /v /qn REBOOT=R',
        name="VMware Tools",
        min_version=str(Version(control.get_software_version(),3)),
        get_version=get_installed_version
    )
def get_installed_version(key):
    return str(Version(key["version"],3))

Bonne journée,
Cordialement,
Kévin.