Skip to content
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

Allow multiple apps to be installed using a single command #219

Closed
brunovieira97 opened this issue May 19, 2020 · 23 comments · Fixed by #2861
Closed

Allow multiple apps to be installed using a single command #219

brunovieira97 opened this issue May 19, 2020 · 23 comments · Fixed by #2861
Labels
In-PR Issue related to a PR Issue-Feature This is a feature request for the Windows Package Manager client.
Milestone

Comments

@brunovieira97
Copy link

brunovieira97 commented May 19, 2020

Description of the new feature/enhancement

Let us call winget install with a list of apps, so it'll install them at the same time OR in sequence.

Proposal for command: winget install app-1 app-2 app-3

@brunovieira97 brunovieira97 added the Issue-Feature This is a feature request for the Windows Package Manager client. label May 19, 2020
@shawnwildermuth
Copy link

Or via config file like Chocolatey (e.g. packages.config)

@masx200
Copy link

masx200 commented May 24, 2020

I support it!

@denelon
Copy link
Contributor

denelon commented Aug 19, 2020

This is not the same thing as #156

@denelon denelon modified the milestones: Package Manager Backlog, Package Manager v0.26.x Aug 24, 2020
@ghost
Copy link

ghost commented Apr 18, 2021

I support this!

@ghost
Copy link

ghost commented May 3, 2021

@denelon @brunovieira97

managing multiple apps in a single command should be supported for all commands , not install only but for list / upgrade / uninstall too.

@brunovieira97
Copy link
Author

@denelon @brunovieira97

managing multiple apps in a single command should be supported for all commands , not install only but for list / upgrade / uninstall too.

I definitely agree with you! At least uninstall should be covered as well for feature parity between installation and removal process of an app. But implementing this for upgrade too would be very much welcome!

@sanamhub
Copy link

sanamhub commented Oct 6, 2021

I upvote (support) for this issue!

This is extremely needed thing 🚀

@BehymerTech
Copy link

This is one of the few things holding winget back from feeling like a full-fledged package manager (like apt, etc).

A simple way to implement would even be to accept multiple arguments and then just run them sequentially. Even a separate list argument would be fine to specify a list of apps by ID.

@fredrikaverpil
Copy link

Would be cool if we could also install multiple apps by providing one file, like with Brewfile or Gemfile.

@danstis
Copy link

danstis commented Nov 24, 2021

To work around this limitation, I added the following PowerShell function to my profile (notepad $profile):

# Function to process multiple WinGet Upgrades
function Winget-Upgrade {
	Param(
		# List of packages to upgrade
		[Parameter(Position = 0, Mandatory = $true)]
		[string[]] $Packages
	)
	foreach ($Package in $Packages) {
		$Package = $Package.Trim()
		Write-Host ('Upgrading {0}...' -f $Package) -ForegroundColor Green
		WinGet Upgrade $Package
	}
}

With this in place you can upgrade multiple packages like this:
Winget-Upgrade Package1.Package1,Package2.Package2

@alie2n
Copy link

alie2n commented Oct 10, 2022

I also think that this should be supported. It would make usage a lot easier.
I know that you can script it or generate a json file for future use. But it is not nearly as easy as apt-get, chcolatey, yum, etc.

@asifm
Copy link

asifm commented Oct 17, 2022

With this in place you can upgrade multiple packages like this: Winget-Upgrade Package1.Package1,Package2.Package2

Excellent.

For others: After adding this to your profile, don’t forget to reload the profile by doing . $profile

@tnixeu
Copy link

tnixeu commented Oct 18, 2022

This was the first thing I wanted to do, when I just used it for the first time.

@danstis thx for the script.

I have not used power shell scripts util now, so I had to change the execution policy in order to conveniently use winget.

@emoxam
Copy link

emoxam commented Jan 1, 2023

That should be available without any PS movement!

@emoxam
Copy link

emoxam commented Feb 7, 2023

When and how ill we get the new release ?

@sanamhub
Copy link

sanamhub commented Feb 7, 2023

When and how ill we get the new release ?

This feature will land in v1.5 which is Due by April 30, 2023
For more: https://github.com/microsoft/winget-cli/milestone/39

@emoxam
Copy link

emoxam commented Feb 7, 2023

This feature will land in v1.5 which is Due by April 30, 2023
For more: https://github.com/microsoft/winget-cli/milestone/39

And if i joined the Windows Package Manager Insider program?

@sanamhub
Copy link

sanamhub commented Feb 7, 2023

And if I joined the Windows Package Manager Insider program?

I think this is it: https://devblogs.microsoft.com/commandline/windows-package-manager-preview/

@emoxam
Copy link

emoxam commented Feb 7, 2023

I think this is it: https://devblogs.microsoft.com/commandline/windows-package-manager-preview/

Will it appears here ? https://github.com/microsoft/winget-cli/tags
How fast ?

@denelon
Copy link
Contributor

denelon commented Feb 7, 2023

We're looking to cut another preview in the next week or two. It will show up in the releases as a "preview" and it will be published to Windows Insider Dev.

@jo-chemla
Copy link

The below winget command do work for winget install-ing multiple packages at once via their ids.
As pointed above by @denelon @brunovieira97 and others, it would also be great to support multiple package ids for uninstall and maybe upgrade commands, for feature parity.

winget install package-id-1 package-id-2 --accept-package-agreements --accept-source-agreements

@florelis
Copy link
Member

florelis commented Sep 7, 2023

@jo-chemla uninstall and upgrade already support multiple IDs. It was all part of the same change as multiple IDs for install

@jo-chemla
Copy link

Indeed, I was using the same arguments for install and uninstall --disable-interactivity --accept-package-agreements --accept-source-agreements although uninstall does not support --accept-package-agreements (which makes sense). Great to hear!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
In-PR Issue related to a PR Issue-Feature This is a feature request for the Windows Package Manager client.
Projects
None yet
Development

Successfully merging a pull request may close this issue.