mirror of
https://github.com/fscotto/infra.git
synced 2026-05-30 15:39:58 +00:00
Install WhatsApp from Microsoft Store on Windows
This commit is contained in:
@@ -31,6 +31,9 @@ windows_winget_packages:
|
|||||||
name: Postman
|
name: Postman
|
||||||
- id: Telegram.TelegramDesktop
|
- id: Telegram.TelegramDesktop
|
||||||
name: Telegram Desktop
|
name: Telegram Desktop
|
||||||
|
- id: 9NKSQGP7F2NH
|
||||||
|
name: WhatsApp
|
||||||
|
source: msstore
|
||||||
|
|
||||||
windows_vscode_extensions:
|
windows_vscode_extensions:
|
||||||
- ms-vscode-remote.remote-containers
|
- ms-vscode-remote.remote-containers
|
||||||
|
|||||||
@@ -128,13 +128,36 @@
|
|||||||
script: |
|
script: |
|
||||||
$packageId = '{{ item.id }}'
|
$packageId = '{{ item.id }}'
|
||||||
$packageName = '{{ item.name | default(item.id) }}'
|
$packageName = '{{ item.name | default(item.id) }}'
|
||||||
$installed = & winget list --id $packageId --exact --accept-source-agreements --disable-interactivity 2>$null
|
$packageSource = '{{ item.source | default('') }}'
|
||||||
|
$listArgs = @(
|
||||||
|
'list'
|
||||||
|
'--id', $packageId
|
||||||
|
'--exact'
|
||||||
|
'--accept-source-agreements'
|
||||||
|
'--disable-interactivity'
|
||||||
|
)
|
||||||
|
$installArgs = @(
|
||||||
|
'install'
|
||||||
|
'--id', $packageId
|
||||||
|
'--exact'
|
||||||
|
'--silent'
|
||||||
|
'--accept-package-agreements'
|
||||||
|
'--accept-source-agreements'
|
||||||
|
'--disable-interactivity'
|
||||||
|
)
|
||||||
|
|
||||||
|
if (-not [string]::IsNullOrWhiteSpace($packageSource)) {
|
||||||
|
$listArgs += @('--source', $packageSource)
|
||||||
|
$installArgs += @('--source', $packageSource)
|
||||||
|
}
|
||||||
|
|
||||||
|
$installed = & winget @listArgs 2>$null
|
||||||
if ($LASTEXITCODE -eq 0 -and $installed -match [regex]::Escape($packageId)) {
|
if ($LASTEXITCODE -eq 0 -and $installed -match [regex]::Escape($packageId)) {
|
||||||
$Ansible.Changed = $false
|
$Ansible.Changed = $false
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
& winget install --id $packageId --exact --silent --accept-package-agreements --accept-source-agreements --disable-interactivity
|
& winget @installArgs
|
||||||
if ($LASTEXITCODE -ne 0) {
|
if ($LASTEXITCODE -ne 0) {
|
||||||
throw "Failed to install $packageName with winget"
|
throw "Failed to install $packageName with winget"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user