Update install-basic-apps.ps1

This commit is contained in:
Markus Fleschutz 2023-05-01 19:32:25 +02:00
parent 031f6b4792
commit b020563132
2 changed files with 42 additions and 41 deletions

View File

@ -1,31 +1,31 @@
APPLICATION, CATEGORY, APPID
"7-Zip", "file utility", "XPDNKVCX4QD2DC"
"Aquile Reader", "ebook reader", "9P08T4JLTQNK"
"CrystalDiskInfo", "HDD/SSD utility", "XP8K4RGX25G3GM"
"Dopamine", "audio player", "Digimezzo.Dopamine.2"
"Dropbox", "file sync", "Dropbox.Dropbox"
"Git for Windows", "code management", "Git.Git"
"Google Chrome", "desktop browser", "Google.Chrome"
"Greenshot", "screenshot utility", "9N8Z6RQX8LV8"
"inSSIDer", "Wifi tool", "MetaGeek.inSSIDer"
"IrfanView", "image viewer", "9PJZ3BTL5PV6"
"Kodi", "media center", "9NBLGGH4T892"
"LibreOffice", "office suite", "TheDocumentFoundation.LibreOffice"
"Microsoft Teams", "messenger", "XP8BT8DW290MPQ"
"Mozilla Firefox", "desktop browser", "9NZVDKPMR9RD"
"Mozilla Thunderbird", "email client", "Mozilla.Thunderbird"
"Mp3tag", "mp3 tag editor", "9NN77TCQ1NC8"
"Netflix", "video player", "9WZDNCRFJ3TJ"
"Notepad++", "text editor", "Notepad++.Notepad++"
"One Calendar", "desktop calendar", "9WZDNCRDR0SF"
"Pandoc", "file converter", "JohnMacFarlane.Pandoc"
"Rufus", "ISO image writer", "9PC3H3V7Q9CH"
"Signal", "messenger", "OpenWhisperSystems.Signal"
"smartmontools", "HDD/SSD utility", "smartmontools.smartmontools"
"Spotify", "music and podcasts", "9NCBCSZSJRSB"
"Typora", "Markdown editor", "Typora.Typora"
"Visual Studio Code", "code editor", "XP9KHM4BK9FZ7Q"
"VLC", "media player", "XPDM1ZW6815MQM"
"Windows Terminal", "terminal application", "9N0DX20HK701"
"WhatsApp", "messenger", "9NKSQGP7F2NH"
"Zoom", "video conferences", "Zoom.Zoom"
APPLICATION, CATEGORY, APPID
"7-Zip", "file utility", "XPDNKVCX4QD2DC"
"Aquile Reader", "ebook reader", "9P08T4JLTQNK"
"CrystalDiskInfo", "HDD/SSD utility", "XP8K4RGX25G3GM"
"Dopamine", "audio player", "Digimezzo.Dopamine.2"
"Dropbox", "file sync", "Dropbox.Dropbox"
"Git for Windows", "source code management","Git.Git"
"Google Chrome", "desktop browser", "Google.Chrome"
"Greenshot", "screenshot utility", "Greenshot.Greenshot"
"inSSIDer", "Wifi tool", "MetaGeek.inSSIDer"
"IrfanView", "image viewer", "9PJZ3BTL5PV6"
"Kodi", "media center", "9NBLGGH4T892"
"LibreOffice", "office suite", "TheDocumentFoundation.LibreOffice"
"Microsoft Teams", "messenger", "XP8BT8DW290MPQ"
"Mozilla Firefox", "desktop browser", "9NZVDKPMR9RD"
"Mozilla Thunderbird", "email client", "Mozilla.Thunderbird"
"Mp3tag", "MP3 tag editor", "9NN77TCQ1NC8"
"Netflix", "video player", "9WZDNCRFJ3TJ"
"Notepad++", "text editor", "Notepad++.Notepad++"
"One Calendar", "desktop calendar", "9WZDNCRDR0SF"
"Pandoc", "file converter", "JohnMacFarlane.Pandoc"
"Rufus", "ISO image writer", "9PC3H3V7Q9CH"
"Signal", "messenger", "OpenWhisperSystems.Signal"
"smartmontools", "HDD/SSD utility", "smartmontools.smartmontools"
"Spotify", "audio player", "9NCBCSZSJRSB"
"Typora", "Markdown editor", "Typora.Typora"
"Visual Studio Code", "code editor", "XP9KHM4BK9FZ7Q"
"VLC", "video player", "XPDM1ZW6815MQM"
"Windows Terminal", "console terminal", "9N0DX20HK701"
"WhatsApp", "messenger", "9NKSQGP7F2NH"
"Zoom", "video conferencing", "Zoom.Zoom"

1 APPLICATION CATEGORY APPID
2 7-Zip file utility XPDNKVCX4QD2DC
3 Aquile Reader ebook reader 9P08T4JLTQNK
4 CrystalDiskInfo HDD/SSD utility XP8K4RGX25G3GM
5 Dopamine audio player Digimezzo.Dopamine.2
6 Dropbox file sync Dropbox.Dropbox
7 Git for Windows code management source code management Git.Git
8 Google Chrome desktop browser Google.Chrome
9 Greenshot screenshot utility 9N8Z6RQX8LV8 Greenshot.Greenshot
10 inSSIDer Wifi tool MetaGeek.inSSIDer
11 IrfanView image viewer 9PJZ3BTL5PV6
12 Kodi media center 9NBLGGH4T892
13 LibreOffice office suite TheDocumentFoundation.LibreOffice
14 Microsoft Teams messenger XP8BT8DW290MPQ
15 Mozilla Firefox desktop browser 9NZVDKPMR9RD
16 Mozilla Thunderbird email client Mozilla.Thunderbird
17 Mp3tag mp3 tag editor MP3 tag editor 9NN77TCQ1NC8
18 Netflix video player 9WZDNCRFJ3TJ
19 Notepad++ text editor Notepad++.Notepad++
20 One Calendar desktop calendar 9WZDNCRDR0SF
21 Pandoc file converter JohnMacFarlane.Pandoc
22 Rufus ISO image writer 9PC3H3V7Q9CH
23 Signal messenger OpenWhisperSystems.Signal
24 smartmontools HDD/SSD utility smartmontools.smartmontools
25 Spotify music and podcasts audio player 9NCBCSZSJRSB
26 Typora Markdown editor Typora.Typora
27 Visual Studio Code code editor XP9KHM4BK9FZ7Q
28 VLC media player video player XPDM1ZW6815MQM
29 Windows Terminal terminal application console terminal 9N0DX20HK701
30 WhatsApp messenger 9NKSQGP7F2NH
31 Zoom video conferences video conferencing Zoom.Zoom

View File

@ -3,7 +3,7 @@
Installs basic apps
.DESCRIPTION
This PowerShell script installs basic Windows apps such as browser, e-mail client, etc.
Apps from the Microsoft Store are preferred (due to security and automatic updates).
Apps from Microsoft Store are preferred (due to security and automatic updates).
.EXAMPLE
PS> ./install-basic-apps
.LINK
@ -15,33 +15,34 @@
try {
$StopWatch = [system.diagnostics.stopwatch]::startNew()
"⏳ (1/30) Loading Data/basic-apps.csv..."
Write-Host "⏳ (1/32) Loading Data/basic-apps.csv... " -noNewline
$Table = Import-CSV "$PSScriptRoot/../Data/basic-apps.csv"
$NumEntries = $Table.count
Write-Host " The following $NumEntries basic apps will be installed or upgraded: " -NoNewline
Write-Host "$NumEntries entries"
Write-Host "⏳ (2/32) About to install or upgrade: " -noNewline
foreach($Row in $Table) {
[string]$AppName = $Row.APPLICATION
Write-Host "$AppName, " -NoNewline
}
""
"Press <Control> <C> to abort, otherwise the installation will start in 10 seconds..."
Start-Sleep -seconds 10
"Press <Control> <C> to abort, otherwise the installation will start in 15 seconds..."
Start-Sleep -seconds 15
[int]$Step = 2
[int]$Step = 3
[int]$Failed = 0
foreach($Row in $Table) {
[string]$AppName = $Row.APPLICATION
[string]$Category = $Row.CATEGORY
[string]$AppID = $Row.APPID
"⏳ ($Step/$($NumEntries + 1)) Installing $AppName ($Category)..."
Write-Host " "
Write-Host "⏳ ($Step/$($NumEntries + 2)) Installing $Category '$AppName'..."
& winget install --id $AppID --accept-package-agreements --accept-source-agreements
if ($lastExitCode -ne "0") { Write-Warning "'winget install' for $AppName failed"; $Failed++ }
if ($lastExitCode -ne "0") { $Failed++ }
$Step++
}
[int]$Installed = ($NumEntries - $Failed)
[int]$Elapsed = $StopWatch.Elapsed.TotalSeconds
"✔️ installed $Installed of $NumEntries basic apps in $Elapsed sec"
"✔️ installed $Installed of $NumEntries basic applications in $Elapsed sec"
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"