blob: 72a4cd66ac481e85f87abd3586a138d00c9fdf5a (
plain)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
<#
.SYNOPSIS
Post-install script for adding all my apps
#>
function Install-Winget-Package {
param (
[String]$Package
)
if (! (winget list --exact -q $Package --accept-source-agreements --accept-package-agreements) ) {
Write-Verbose -Message "Installing $Package with winget"
winget install --exact --silent $Package
} else {
Write-Verbose -Message "Winget package $Package is already installed! Skipping"
}
}
# This script does a lot so a warning is good
if ( (Read-Host -Prompt "Do you want to install packages through winget and scoop? [y/n]?").toLower() -ne "y") {
Write-Host "You didn't say yes! Bailing out..."
Exit
}
# Install winget if it's not already
## https://gist.github.com/crutkas/6c2096eae387e544bd05cde246f23901
if (! (Get-AppxPackage -Name "Microsoft.DesktopAppInstaller") ) {
Write-Verbose -Message "Installing winget"
$releases_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest"
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$releases = Invoke-RestMethod -uri "$($releases_url)"
$latestRelease = $releases.assets | Where-Object { $_.browser_download_url.EndsWith("msixbundle") } | Select-Object -First 1
Add-AppxPackage -Path $latestRelease.browser_download_url
}
$winget_packages = @(
# apps
"Cemu.Cemu"
"Hibbiki.Chromium"
"Ubisoft.Connect"
"Discord.Discord"
"DolphinEmulator.Dolphin"
"ElectronicArts.EADesktop"
"Element.Element"
"EpicGames.EpicGamesLauncher"
"Mozilla.Firefox"
"GOG.Galaxy"
"Mojang.MinecraftLauncher"
"OBSProject.OBSStudio"
"dotPDNLLC.paintdotnet"
"PrismLauncher.PrismLauncher"
"Libretro.RetroArch"
"Spotify.Spotify"
"Valve.Steam"
"tailscale.tailscale"
"OneGal.Viper"
"YuzuEmu.Yuzu.Mainline"
# utils
"bootandy.dust"
"voidtools.Everything"
"valinet.ExplorerPatcher"
"sharkdp.fd"
"RyanGregg.GCFScape"
"HandBrake.HandBrake"
"REALiX.HWiNFO"
"KDE.Kdenlive"
"M2Team.NanaZip"
"Jaquadro.NBTExplorer"
"nomacs.nomacs"
"Notepad++.Notepad++"
"Neovim.Neovim"
"TechPowerUp.NVCleanstall"
"namazso.OpenHashTab"
"CalcProgrammer1.OpenRGB"
"Microsoft.PowerShell"
"Microsoft.PowerToys"
"qBittorrent.qBittorrent"
"BurntSushi.ripgrep.MSVC"
"Rclone.Rclone"
"restic.restic"
"smartmontools.smartmontools"
"VideoLAN.VLC"
"RyanGregg.VTFEdit"
"AntibodySoftware.WizTree"
"yt-dlp.yt-dlp"
# dev tools
"Git.Git"
"GitHub.cli"
"GnuPG.Gpg4win"
"Casey.Just"
"EclipseAdoptium.Temurin.17.JDK"
"EclipseAdoptium.Temurin.8.JRE"
"Microsoft.VisualStudio.2022.BuildTools"
"Microsoft.VisualStudioCode"
"Python.Python.3.12"
"Rustlang.Rustup"
)
foreach ($pkg in $winget_packages) {
Install-Winget-Package -Package $pkg
}
Write-Host "Done!"
|