Enable [Environment]::OSVersion to return current OS rather than compatible version (#6457)
* add application manifest dictating compatibility so that osversion shows appropriate os version on Windows
This commit is contained in:
parent
a6479f8181
commit
c18b9999d6
26
assets/pwsh.manifest
Normal file
26
assets/pwsh.manifest
Normal file
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<description> PowerShell Core 6 </description>
|
||||
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<security>
|
||||
<requestedPrivileges>
|
||||
<requestedExecutionLevel
|
||||
level="asInvoker"
|
||||
uiAccess="false"
|
||||
/>
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
|
||||
<application>
|
||||
<!-- Windows 10 -->
|
||||
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
|
||||
<!-- Windows 8.1 -->
|
||||
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
|
||||
<!-- Windows 8 -->
|
||||
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
|
||||
<!-- Windows 7 -->
|
||||
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
|
||||
</application>
|
||||
</compatibility>
|
||||
</assembly>
|
@ -616,7 +616,8 @@ Fix steps:
|
||||
|
||||
Start-NativeExecution { & "~/.rcedit/rcedit-x64.exe" $pwshPath --set-icon "$PSScriptRoot\assets\Powershell_black.ico" `
|
||||
--set-file-version $fileVersion --set-product-version $ReleaseVersion --set-version-string "ProductName" "PowerShell Core 6" `
|
||||
--set-requested-execution-level "asInvoker" --set-version-string "LegalCopyright" "(C) Microsoft Corporation. All Rights Reserved." } | Write-Verbose
|
||||
--set-version-string "LegalCopyright" "(C) Microsoft Corporation. All Rights Reserved." `
|
||||
--application-manifest "$PSScriptRoot\assets\pwsh.manifest" } | Write-Verbose
|
||||
}
|
||||
|
||||
# download modules from powershell gallery.
|
||||
|
@ -662,3 +662,17 @@ Describe "Console host api tests" -Tag CI {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Pwsh exe resources tests" -Tag CI {
|
||||
It "Resource strings are embedded in the executable" -Skip:(!$IsWindows) {
|
||||
$pwsh = Get-Item -Path "$PSHOME\pwsh.exe"
|
||||
$pwsh.VersionInfo.FileVersion | Should -BeExactly $PSVersionTable.PSVersion.ToString().Split("-")[0]
|
||||
"v" + $pwsh.VersionInfo.ProductVersion.Replace("-dirty","") | Should -BeExactly $PSVersionTable.GitCommitId
|
||||
$pwsh.VersionInfo.ProductName | Should -BeExactly "PowerShell Core 6"
|
||||
}
|
||||
|
||||
It "Manifest contains compatibility section" -Skip:(!$IsWindows) {
|
||||
$osversion = [System.Environment]::OSVersion.Version
|
||||
$psversiontable.os | Should -MatchExactly "$($osversion.Major).$($osversion.Minor)"
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user