[SOLVED] Add uninstall to kicad 7 and 8

Questions about WAPT Packaging / Requests and help regarding Wapt packages.
Forum Rules
Community Forum Rules
* English support on www.reddit.com/r/wapt
* French community support is available on this forum
* Please prefix the topic title with [RESOLVED] if it is resolved.
* Please do not edit a topic that is tagged [RESOLVED]. Open a new topic referencing the old one.
* Specify the installed WAPT version, full version, and build number (2.2.1.11957 / 2.2.2.12337 / etc.) as well as the Enterprise/Discovery edition.
* Versions 1.8.2 and earlier are no longer supported. The only questions accepted regarding version 1.8.2 are related to upgrading to a supported version (2.1, 2.2, etc.).
* Specify the server OS (Linux/Windows) and version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specify the OS of the administration/package creation machine and the machine with the problematic agent, if applicable (Windows 7/10/11/Debian 11/etc.).
* Avoid asking multiple questions when opening a topic, otherwise it may be ignored. If there are multiple topics, open separate topics, preferably one after the other and not all at the same time (i.e., do not spam the forum).
* Include code snippets, screenshots, and other images directly in the post. Links to Pastebin, Bitly, and other third-party sites will be systematically removed.
* As with any community forum, support is provided voluntarily by members. If you require commercial support, you can contact Tranquil IT's sales department at 02.40.97.57.55
Locked
Olivier Schmitt
Messages: 44
Registration: Oct 22, 2024 - 1:25 p.m.

February 20, 2025 - 1:52 PM

Hello dear,

I just wanted to suggest these additions:
https://wapt.tranquil.it/store/fr/tis-kicad7

Code: Select all

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']))
Or maybe adapted with key='KiCad ' + str(Version(control.get_software_version(),2)) because you use this in install()?

Same for KiCad8:
https://wapt.tranquil.it/store/fr/tis-kicad8

Code: Select all

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']))
Or maybe adapted with key='KiCad ' + str(Version(control.get_software_version(),2)) because you use this in install()?


Many thanks in advance.
jlepiquet
Messages: 69
Registration: Sep 3, 2024 - 4:09 p.m.

February 21, 2025 - 11:15

Hi Olivier,

The uninstallkey should already take care of the different version. So there shouldn't be needed to add def uninstall() function.

Do you have some problems with uninstalling kicad with different version?

Joffrey
Olivier Schmitt
Messages: 44
Registration: Oct 22, 2024 - 1:25 p.m.

February 26, 2025 - 7:22 PM

Sorry, I just think that if there was no uninstall function, we had no way to uninstall...
Thanks for your reply.
User avatar
dcardon
WAPT Expert
Messages: 1930
Registration: June 18, 2014 - 09:58
Location: Saint Sébastien sur Loire
Contact :

February 27, 2025 - 09:22

Hi Oliver,

thanks for the feedback. Indeed if one uses the install_exe_if_needed of install_msi_if_needed functions, it picks-up the uninstall key from the registry database to call the exe/msi uninstall command line when uninstalling the package.

If the uninstall key in the original exe/msi is wrong (it happens), you have to override the key as a parameter when calling the install_*_if_needed.

And if the uninstall of the exe/msi is itself basically broken, then in this case you indeed have to write the uninstall function by yourself :-)

Cheers,

Denis
Denis Cardon - Tranquil IT
Share your experiences on WAPT! Send us your blog and article URLs in the "Your Opinion of the forum, and we'll feature them on the WAPT
Locked