29 lines
No EOL
944 B
PowerShell
29 lines
No EOL
944 B
PowerShell
# update scoop list
|
|
|
|
# scoop need to be installed
|
|
if(!(Get-Command scoop -ErrorAction SilentlyContinue)) {
|
|
Write-Output "scoop does not exists!"
|
|
exit 1
|
|
}
|
|
|
|
# execution location
|
|
if(!((Test-Path bin) -and (Test-Path dotfiles))) {
|
|
Write-Warning "This script need to be executed in dotfiles root"
|
|
exit 2
|
|
}
|
|
|
|
|
|
# export to JSON
|
|
scoop export | Out-File .\bin\scoop_apps\scoop_apps.json -Encoding utf8
|
|
|
|
# create minimal JSON
|
|
$minimal_list = @("7zip", "bat", "fzf", "grep", "hexyl", "less", "sudo", "ugrep")
|
|
$parsed_json = Get-Content -Path .\bin\scoop_apps\scoop_apps.json | ConvertFrom-Json
|
|
$buckets = ($parsed_json | Select-Object buckets).buckets
|
|
$apps = ($parsed_json | Select-Object apps).apps
|
|
$selected_apps = $apps | Where-Object Name -In $minimal_list
|
|
$new_json = [PSCustomObject]@{
|
|
"apps" = $selected_apps
|
|
"buckets" = $buckets
|
|
}
|
|
ConvertTo-Json -InputObject $new_json | Out-File .\bin\scoop_apps\scoop_minimal_apps.json -Encoding utf8 |