-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Already installed app are not detected #216
Comments
I think for the sake of batch scripts it should have a toggle that can be put at the start to skip already installed packages. example winget --skipInstalled |
I agree with josh-65; default behavior should do something logically and without user input. It can always output something afterwards, like If it's already installed the default behaviour should be to re-install over the top, or uninstall/reinstall. If a different version is specified, what should happen? Some apps support multiple versions installed (e.g. python), other's dont.
|
Is this sovle ? |
I hit this issue today as well. Issuing the winget command two times in a row should not download and install the software twice. All Linux package managers e.g. yum, zypper, apt-get skip in that case. Chocolatey skips as well... |
Even if it does have version information it still gets re-installed using |
I agree there might be cases where I want to repair an installation. However, in general I believe I want to install stuff and in case it is already installed it should just be skipped. Indeed I was talking about |
Seems like the issue is just around default behavior, and other behavior could be solved with flags rather than workarounds like uninstalling first. ie: If it skips by default, and you want to repair the command could be something like if it reinstalls by default, and you want it to skip it could be something like Edit: |
I know is only 18 months since issue reported, but is there any chance to get it sorted? |
We've recently implemented changes to not display when the version is "Unknown" in upgrade and "--include-unknown" to upgrade them. We are working on: Once we have the matching improved, this will become one of the next features we're looking at. One of the changes we're considering is when a user runs The "--force" switch will still be honored in either case. |
I'm finding that winget is both really powerful - as all package managers are - but also this particular issue makes it quite impossible to script and manage an estate using scripts with winget to for example install applications and if they are installed to skip the installations. This is particularly visible with MS Teams which will force-close when installing, which you wouldn't want to force using InTune scripts because it would make MS Teams consistently unavailable for end-users. |
For the most part, the program not having a version in control panel seems to be an issue. I add a version number via the registry and the program no longer keeps installing. There are a few where they do not have a version number and adding it does not fix the issue. I use the same version number reported by winget. Edit: It seems if WindowsInstaller does not exist or set to 1 in the registry entry it will keep reinstalling as well. |
Many of the challenges we're trying to work through are related to installers that aren't as robust as we would like them to be. In many cases, we identify classes of issues and attempt to look at ways we can give hints to the client and users via the winget manifest. There are also additional improvements we're making on the validation side to provide better information back to PR authors so they know what metadata to add or when things don't match what was suggested. Packages that install side-by-side are another problem space we're working on: We're trying to meet developers where they are in terms of installer technologies and capabilities and determine reasonable default behaviors (and arguments to control behavior). Over time, we're hoping more developers will learn from user feedback associated with the Windows Package Manager to improve experiences. |
We will be working on improvements for packages that are already installed when a user runs |
@aavdberg, I believe this Issue has been resolved with our latest release. Please confirm 😊 |
@denelon I have tried - the latest release seems to resolved the issue. |
Brief description of your issue
Have installed Windows Terminal latest version and when run winget install "Windows Terminal" it gets installed again and don't detect that it was already installed.
Steps to reproduce
run winget install for a application that you have already installed with same version.
Expected behavior
Detect that app already is installed and give option to abort or overwrite. or text that you have to use extra parameter to overwrite.
Actual behavior
Environment
The text was updated successfully, but these errors were encountered: