mirror of
https://github.com/fleschutz/PowerShell.git
synced 2024-11-22 07:53:21 +01:00
Update install-powershell.ps1
This commit is contained in:
parent
7a22ef6c5e
commit
6a848c8a7b
@ -22,6 +22,7 @@
|
|||||||
Invoke this script directly from GitHub
|
Invoke this script directly from GitHub
|
||||||
Invoke-Expression "& { $(Invoke-RestMethod 'https://aka.ms/install-powershell.ps1') } -daily"
|
Invoke-Expression "& { $(Invoke-RestMethod 'https://aka.ms/install-powershell.ps1') } -daily"
|
||||||
#>
|
#>
|
||||||
|
|
||||||
[CmdletBinding(DefaultParameterSetName = "Daily")]
|
[CmdletBinding(DefaultParameterSetName = "Daily")]
|
||||||
param(
|
param(
|
||||||
[Parameter(ParameterSetName = "Daily")]
|
[Parameter(ParameterSetName = "Daily")]
|
||||||
@ -116,7 +117,7 @@ function Remove-Destination([string] $Destination) {
|
|||||||
if ($DoNotOverwrite) {
|
if ($DoNotOverwrite) {
|
||||||
throw "Destination folder '$Destination' already exist. Use a different path or omit '-DoNotOverwrite' to overwrite."
|
throw "Destination folder '$Destination' already exist. Use a different path or omit '-DoNotOverwrite' to overwrite."
|
||||||
}
|
}
|
||||||
Write-Host "⏳ (2/2) Removing old installation at: $Destination"
|
Write-Host "⏳ (5/5) Removing old installation at: $Destination"
|
||||||
if (Test-Path -Path "$Destination.old") {
|
if (Test-Path -Path "$Destination.old") {
|
||||||
Remove-Item "$Destination.old" -Recurse -Force
|
Remove-Item "$Destination.old" -Recurse -Force
|
||||||
}
|
}
|
||||||
@ -259,6 +260,8 @@ if ($IsLinux) {
|
|||||||
} else {
|
} else {
|
||||||
$architecture = "arm32"
|
$architecture = "arm32"
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
$architecture = "x64"
|
||||||
}
|
}
|
||||||
} elseif (-not $IsWinEnv) {
|
} elseif (-not $IsWinEnv) {
|
||||||
$architecture = "x64"
|
$architecture = "x64"
|
||||||
@ -357,12 +360,14 @@ try {
|
|||||||
tar zxf $packagePath -C $contentPath
|
tar zxf $packagePath -C $contentPath
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Write-Host "⏳ (1/5) Loading metadata from https://raw.githubusercontent.com ..."
|
||||||
$metadata = Invoke-RestMethod https://raw.githubusercontent.com/PowerShell/PowerShell/master/tools/metadata.json
|
$metadata = Invoke-RestMethod https://raw.githubusercontent.com/PowerShell/PowerShell/master/tools/metadata.json
|
||||||
if ($Preview) {
|
if ($Preview) {
|
||||||
$release = $metadata.PreviewReleaseTag -replace '^v'
|
$release = $metadata.PreviewReleaseTag -replace '^v'
|
||||||
} else {
|
} else {
|
||||||
$release = $metadata.ReleaseTag -replace '^v'
|
$release = $metadata.ReleaseTag -replace '^v'
|
||||||
}
|
}
|
||||||
|
Write-Host "⏳ (2/5) Found latest release $release for $architecture..."
|
||||||
|
|
||||||
if ($IsWinEnv) {
|
if ($IsWinEnv) {
|
||||||
if ($UseMSI) {
|
if ($UseMSI) {
|
||||||
@ -379,9 +384,10 @@ try {
|
|||||||
} elseif ($IsMacOSEnv) {
|
} elseif ($IsMacOSEnv) {
|
||||||
$packageName = "powershell-${release}-osx-${architecture}.tar.gz"
|
$packageName = "powershell-${release}-osx-${architecture}.tar.gz"
|
||||||
}
|
}
|
||||||
|
Write-Host "⏳ (3/5) Package name to download is $packageName..."
|
||||||
|
|
||||||
$downloadURL = "https://github.com/PowerShell/PowerShell/releases/download/v${release}/${packageName}"
|
$downloadURL = "https://github.com/PowerShell/PowerShell/releases/download/v${release}/${packageName}"
|
||||||
Write-Host "⏳ (1/2) Loading $downloadURL"
|
Write-Host "⏳ (4/5) Loading $downloadURL"
|
||||||
|
|
||||||
$packagePath = Join-Path -Path $tempDir -ChildPath $packageName
|
$packagePath = Join-Path -Path $tempDir -ChildPath $packageName
|
||||||
if (!$PSVersionTable.ContainsKey('PSEdition') -or $PSVersionTable.PSEdition -eq "Desktop") {
|
if (!$PSVersionTable.ContainsKey('PSEdition') -or $PSVersionTable.PSEdition -eq "Desktop") {
|
||||||
|
Loading…
Reference in New Issue
Block a user