winsetup/setup.ps1

52 lines
1.2 KiB
PowerShell

param (
[string[]]$collections
)
$packages = @{
"common" = @(
'TheDocumentFoundation.LibreOffice'
'Mozilla.Firefox'
'Microsoft.PowerShell'
'VideoLAN.VLC'
'Microsoft.WindowsTerminal'
'RustDesk.RustDesk'
'7zip.7zip'
'GIMP.GIMP'
)
"classic" = @('Google.Chrome')
"workstation" = @(
'FreeCAD.FreeCAD'
'Git.Git'
'gerardog.gsudo'
'Helix.Helix'
'Chocolatey.Chocolatey'
'KiCAD.KiCAD'
'Prusa3D.PrusaSlicer'
'Microsoft.VisualStudioCode'
'MartiCliment.UniGetUI'
'Mozilla.Thunderbird'
'WireGuard.WireGuard'
'Bitwarden.Bitwarden'
'Mikrotik.Winbox'
)
"gaming" = @(
'Valve.Steam'
'Discord.Discord'
)
"nvidia" = @('Nvidia.GeForceExperience')
}
$args += $packages["common"]
foreach ($collection in $collections) {
if ($packages.ContainsKey($collection)) {
$args += $packages[$collection]
} else {
Write-Host "Unknown collection: $collection" -ForegroundColor Yellow
}
}
Write-Host "Installed collections: $collections" -ForegroundColor Cyan
Write-Host "Installed packages: $args" -ForegroundColor Green
winget install @args