-
Notifications
You must be signed in to change notification settings - Fork 513
added 64bit support & vscode-insiders install support #1137
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 2 commits
dfca251
0efcc33
ffa97ff
7c79005
91b9c5f
ff50f74
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
<#PSScriptInfo | ||
|
||
.VERSION 1.0 | ||
.VERSION 1.1 | ||
|
||
.GUID 539e5585-7a02-4dd6-b9a6-5dd288d0a5d0 | ||
|
||
|
@@ -25,6 +25,9 @@ | |
.EXTERNALSCRIPTDEPENDENCIES | ||
|
||
.RELEASENOTES | ||
28/12/2017 - added functionality to support 64-bit versions of VSCode | ||
& support for installation of VSCode Insiders Edition. | ||
-- | ||
Initial release. | ||
#> | ||
|
||
|
@@ -44,6 +47,10 @@ | |
|
||
https://github.com/PowerShell/vscode-powershell/blob/develop/scripts/Install-VSCode.ps1 | ||
|
||
.PARAMETER BuildEdition | ||
A validated string defining which build edition or "stream" to download - stable or | ||
insiders edition. If the parameter is not used, then stable is downloaded as default. | ||
|
||
.PARAMETER AdditionalExtensions | ||
An array of strings that are the fully-qualified names of extensions to be | ||
installed in addition to the PowerShell extension. The fully qualified | ||
|
@@ -67,6 +74,12 @@ | |
Installs Visual Studio Code, the PowerShell extension, and additional | ||
extensions. | ||
|
||
.EXAMPLE | ||
Install-VSCode.ps1 -BuildEdition Insider -LaunchWhenDone | ||
|
||
Installs Visual Studio Code Insiders Edition and then launches the editor | ||
after installation completes. | ||
|
||
.NOTES | ||
This script is licensed under the MIT License: | ||
|
||
|
@@ -92,6 +105,10 @@ | |
#> | ||
[CmdletBinding()] | ||
param( | ||
[parameter()] | ||
[ValidateSet("stable","insider")] | ||
[string]$BuildEdition = "stable", | ||
|
||
[Parameter()] | ||
[ValidateNotNull()] | ||
[string[]]$AdditionalExtensions = @(), | ||
|
@@ -100,19 +117,28 @@ param( | |
) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What if you added an There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yep - easy inclusion. I'll add it now. Another option would be to simply install based on a OSArchitecture check - but if the goal is to allow custom installs, then I suppose it's better to give the end user the option to chose arch? |
||
|
||
if (!($IsLinux -or $IsOSX)) { | ||
switch ($BuildEdition) { | ||
"Stable" { | ||
$codeCmdPath = "C:\Program*\Microsoft VS Code\bin\code.cmd" | ||
break; | ||
} | ||
"Insider" { | ||
$codeCmdPath = "C:\Program*\Microsoft VS Code Insiders\bin\code-insiders.cmd" | ||
break; | ||
} | ||
} | ||
|
||
$codeCmdPath = "C:\Program Files (x86)\Microsoft VS Code\bin\code.cmd" | ||
|
||
try { | ||
$ProgressPreference = 'SilentlyContinue' | ||
|
||
if (!(Test-Path $codeCmdPath)) { | ||
Write-Host "`nDownloading latest stable Visual Studio Code..." -ForegroundColor Yellow | ||
Remove-Item -Force $env:TEMP\vscode-stable.exe -ErrorAction SilentlyContinue | ||
Invoke-WebRequest -Uri https://vscode-update.azurewebsites.net/latest/win32/stable -OutFile $env:TEMP\vscode-stable.exe | ||
Write-Host "`nDownloading latest $($BuildEdition) Visual Studio Code..." -ForegroundColor Yellow | ||
Remove-Item -Force "$env:TEMP\vscode-$($BuildEdition).exe" -ErrorAction SilentlyContinue | ||
Invoke-WebRequest -Uri "https://vscode-update.azurewebsites.net/latest/win32-x64/$($BuildEdition)" -OutFile "$env:TEMP\vscode-$($BuildEdition).exe" | ||
|
||
Write-Host "`nInstalling Visual Studio Code..." -ForegroundColor Yellow | ||
Start-Process -Wait $env:TEMP\vscode-stable.exe -ArgumentList /silent, /mergetasks=!runcode | ||
Start-Process -Wait "$env:TEMP\vscode-$($BuildEdition).exe" -ArgumentList /silent, /mergetasks=!runcode | ||
} | ||
else { | ||
Write-Host "`nVisual Studio Code is already installed." -ForegroundColor Yellow | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please separate each parameter with a blank line - ditto between lines 113 and 114 - for consistency (see Start-EditorServices.ps1).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes made as per comment