This commit is contained in:
parent
8f1dd67224
commit
0958d6a352
@ -187,42 +187,42 @@ source "vsphere-iso" "srv2019-baremetal" {
|
||||
build {
|
||||
sources = [
|
||||
"source.vsphere-iso.srv2019-template",
|
||||
"source.vsphere-iso.srv2019-virtual",
|
||||
"source.vsphere-iso.srv2019-baremetal"
|
||||
"source.vsphere-iso.srv2019-virtual"
|
||||
]
|
||||
// "source.vsphere-iso.srv2019-baremetal"
|
||||
|
||||
provisioner "windows-update" {
|
||||
}
|
||||
|
||||
// provisioner "powershell" {
|
||||
// scripts = [
|
||||
// "scripts/Install-WinGet.ps1"
|
||||
// ]
|
||||
// }
|
||||
// provisioner "powershell" {
|
||||
// inline = [
|
||||
// "winget install mozilla.firefox",
|
||||
// "winget install 7zip.7zip",
|
||||
// "winget install microsoft.dotnetframework"
|
||||
// ]
|
||||
// // valid_exit_codes = [0, 3010]
|
||||
// }
|
||||
provisioner "powershell" {
|
||||
scripts = [
|
||||
"scripts/Install-WinGet.ps1"
|
||||
]
|
||||
}
|
||||
provisioner "powershell" {
|
||||
inline = [
|
||||
"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12",
|
||||
"Invoke-Expression ((New-Object Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"
|
||||
"winget install mozilla.firefox",
|
||||
"winget install 7zip.7zip",
|
||||
"winget install microsoft.dotnetframework"
|
||||
]
|
||||
// valid_exit_codes = [0, 3010]
|
||||
}
|
||||
provisioner "powershell" {
|
||||
inline = [
|
||||
"choco config set --name=limit-output --value=LimitOutput",
|
||||
"choco install -y dotnetfx",
|
||||
"choco install -y 7zip.install",
|
||||
"choco install -y sysinternals",
|
||||
"choco install -y firefox"
|
||||
]
|
||||
valid_exit_codes = [0, 3010]
|
||||
}
|
||||
// provisioner "powershell" {
|
||||
// inline = [
|
||||
// "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12",
|
||||
// "Invoke-Expression ((New-Object Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"
|
||||
// ]
|
||||
// }
|
||||
// provisioner "powershell" {
|
||||
// inline = [
|
||||
// "choco config set --name=limit-output --value=LimitOutput",
|
||||
// "choco install -y dotnetfx",
|
||||
// "choco install -y 7zip.install",
|
||||
// "choco install -y sysinternals",
|
||||
// "choco install -y firefox"
|
||||
// ]
|
||||
// valid_exit_codes = [0, 3010]
|
||||
// }
|
||||
|
||||
provisioner "windows-update" {
|
||||
}
|
||||
|
@ -3,22 +3,52 @@ Param(
|
||||
# None
|
||||
)
|
||||
|
||||
# Download dependencies
|
||||
$AppxDependencies = @(
|
||||
@{
|
||||
ShortName = 'vclibs'
|
||||
QualifiedName = 'Microsoft.VCLibs.140.00_8wekyb3d8bbwe'
|
||||
},
|
||||
@{
|
||||
ShortName = 'vclibsuwp'
|
||||
QualifiedName = 'Microsoft.VCLibs.140.00.UWPDesktop_8wekyb3d8bbwe'
|
||||
}
|
||||
)
|
||||
ForEach ($Dependency in $AppxDependencies) {
|
||||
$InvokeWebRequestSplat = @{
|
||||
Uri = 'https://store.rg-adguard.net/api/GetFiles'
|
||||
Method = 'POST'
|
||||
ContentType = 'application/x-www-form-urlencoded'
|
||||
Body = "type=PackageFamilyName&url=$($Dependency.QualifiedName)&ring=RP&lang=en-US"
|
||||
UseBasicParsing = $True
|
||||
}
|
||||
$InvokeWebRequestSplat = @{
|
||||
Uri = ((Invoke-WebRequest @InvokeWebRequestSplat).Links | Where-Object {$_.OuterHTML -match '.appx' -and $_.outerHTML -match 'x64'}).href
|
||||
OutFile = "$env:temp/$($Dependency.ShortName).appx"
|
||||
}
|
||||
Invoke-WebRequest @InvokeWebRequestSplat
|
||||
}
|
||||
# Download latest release from github
|
||||
$InvokeRestMethodSplat = @{
|
||||
Uri = "https://api.github.com/repos/microsoft/winget-cli/releases/latest"
|
||||
Method = 'GET'
|
||||
}
|
||||
$InvokeWebRequestSplat = @{
|
||||
Uri = ((Invoke-RestMethod @InvokeRestMethodSplat).assets | Where-Object {$_.name -like '*.appxbundle'}).browser_download_url
|
||||
Out = "$env:temp\winget.appxbundle"
|
||||
Uri = ((Invoke-RestMethod @InvokeRestMethodSplat).assets | Where-Object {$_.name -like '*.appxbundle'}).browser_download_url
|
||||
OutFile = "$env:temp\winget.appxbundle"
|
||||
}
|
||||
Invoke-WebRequest @InvokeWebRequestSplat
|
||||
|
||||
$InvokeWebRequestSplat = @{
|
||||
Uri = "https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx"
|
||||
Out = "$env:temp\vclibs.appx"
|
||||
# Install dependencies
|
||||
$AppxDependencies.ShortName | ForEach-Object {
|
||||
$AddAppxPackageSplat = @{
|
||||
Path = "$env:temp/$($_).appx"
|
||||
}
|
||||
Add-AppxPackage @AddAppxPackageSplat
|
||||
}
|
||||
Invoke-WebRequest @InvokeWebRequestSplat
|
||||
# Install winget
|
||||
$AddAppxPackageSplat = @{
|
||||
Path = "$env:temp\winget.appxbundle"
|
||||
}
|
||||
Add-AppxPackage @AddAppxPackageSplat
|
||||
|
||||
If (Test-Path -Path "$env:temp\winget.appxbundle") {
|
||||
& dism.exe /Online /Add-ProvisionedAppxPackage /PackagePath:"$env:temp\winget.appxbundle" /SkipLicense /DependencyPackagePath:"$env:temp\vclibs.appx"
|
||||
}
|
Loading…
Reference in New Issue
Block a user