-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathwinget-setup.ps1
More file actions
50 lines (44 loc) · 1.17 KB
/
winget-setup.ps1
File metadata and controls
50 lines (44 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
$DevPackages = @(
'JetBrains.WebStorm',
'OpenJS.NodeJS',
'Docker.DockerDesktop',
'Git.Git',
'Microsoft.VisualStudioCode',
'dbeaver.dbeaver',
'JetBrains.Toolbox',
'Postman.Postman',
'SlackTechnologies.Slack',
'CoreyButler.NVMforWindows'
)
$EssentialsPackages = @(
'WhatsApp.WhatsApp',
'Microsoft.PowerToys'
)
$GeneralPackages = @(
'qBittorrent.qBittorrent',
'Logitech.GHUB',
'Logitech.Options',
'Valve.Steam',
'Discord.Discord',
'VideoLAN.VLC'
)
# Prompt user for selection
Write-Host "`nSelect install type:`n"
Write-Host "1. Dev packages only"
Write-Host "2. All packages (Dev + General)"
$selection = Read-Host "`nEnter your choice (1 or 2)"
switch ($selection) {
'1' {
$PackagesToInstall = $DevPackages + $EssentialsPackages
}
'2' {
$PackagesToInstall = $DevPackages + $EssentialsPackages + $GeneralPackages
}
default {
Write-Host "Invalid selection. Please run the script again and enter 1 or 2."
exit
}
}
ForEach ($PackageName in $PackagesToInstall) {
winget install -e --no-upgrade --accept-source-agreements --accept-package-agreements --id $PackageName
}