Página 1 de 1

[RESUELTO] Agregar desinstalación a kicad 7 y 8

Publicado: 20 de febrero de 2025 - 13:52
por Olivier Schmitt
Hola, cariño,

Sólo quería sugerir estas adiciones:
https://wapt.tranquil.it/store/fr/tis-kicad7

Código: Seleccionar todo

def uninstall():
    softs_to_uninstall = installed_softwares('kicad 7.')
    for soft in softs_to_uninstall:
        print("Uninstall kicad vers:" + soft['version'])
        run(WAPT.uninstall_cmd(soft['key']))
¿O tal vez adaptado con key='KiCad ' + str(Version(control.get_software_version(),2)) porque usas esto en install()?

Lo mismo para KiCad8:
https://wapt.tranquil.it/store/fr/tis-kicad8

Código: Seleccionar todo

def uninstall():
    softs_to_uninstall = installed_softwares('kicad 8.')
    for soft in softs_to_uninstall:
        print("Uninstall kicad vers:" + soft['version'])
        run(WAPT.uninstall_cmd(soft['key']))
¿O tal vez adaptado con key='KiCad ' + str(Version(control.get_software_version(),2)) porque usas esto en install()?


Muchas gracias de antemano.

Re: Agregar desinstalación a kicad 7 y 8

Publicado: 21 de febrero de 2025 - 11:15 a. m.
por jlepiquet
Hola Olivier,

la clave de desinstalación ya debería encargarse de las diferentes versiones. Por lo tanto, no debería ser necesario añadir la función `def uninstall()`.

¿Tienes algún problema al desinstalar KiCad con una versión diferente?

Joffrey

Re: Agregar desinstalación a kicad 7 y 8

Publicado: 26 de febrero de 2025 - 19:22
por Olivier Schmitt
Lo siento, solo creo que si no hubiera una función de desinstalación, no tendríamos forma de desinstalar...
Gracias por tu respuesta.

Re: Agregar desinstalación a kicad 7 y 8

Publicado: 27 de febrero de 2025 - 09:22
por dcardon
Hola Oliver,

gracias por tus comentarios. Efectivamente, si se utilizan las funciones install_exe_if_needed o install_msi_if_needed, se obtiene la clave de desinstalación de la base de datos del registro para llamar al comando de desinstalación del exe/msi al desinstalar el paquete.

Si la clave de desinstalación en el exe/msi original es incorrecta (suele ocurrir), hay que sobrescribirla como parámetro al llamar a install_if_needed.

Y si la desinstalación del exe/msi está defectuosa, entonces hay que escribir la función de desinstalación manualmente. :-)

Saludos,

Denis