added check to prevent double installation of conda
This commit is contained in:
50
setup.ps1
50
setup.ps1
@@ -4,19 +4,47 @@ $cur_compat_mode = Get-ItemProperty -Path $reg_path -Name IntranetCompatibilityM
|
||||
New-ItemProperty -Path $reg_path -Name IntranetCompatibilityMode -Value 0 -Force | Out-Null
|
||||
#now that compatibility mode is off temporarily, we can scrape the web
|
||||
|
||||
#Setup Miniconda
|
||||
$miniconda_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe"
|
||||
$miniconda_installer = $miniconda_url.split('/')[-1]
|
||||
#Silent mode command line flags: https://docs.anaconda.com/anaconda/install/silent-mode/
|
||||
$miniconda_install_params = '/S', '/D="$HOME\Miniconda3"', '/InstallationType=JustMe', '/RegisterPython=0', '/AddToPath=0'
|
||||
Invoke-WebRequest $miniconda_url -OutFile $miniconda_installer
|
||||
Invoke-Expression "& .\$miniconda_installer $miniconda_install_params"
|
||||
#Remove-Item ".\$miniconda_installer"
|
||||
$conda_exe = "$HOME\Miniconda3\Scripts\conda.exe"
|
||||
Invoke-Expression "& $conda_exe init"
|
||||
$default_install_paths = $HOME, $env:LOCALAPPDATA, $env:ProgramFiles
|
||||
|
||||
$conda_installed = $default_install_paths | ForEach-Object -Process { Get-ChildItem | Where-Object -Property "Name" -Like -Value "*conda*" }
|
||||
|
||||
$install_miniconda = -not $conda_installed
|
||||
|
||||
if ($conda_installed) {
|
||||
write-host "
|
||||
Found some files that indicate you may already have an Anaconda/Miniconda environment installed.
|
||||
|
||||
$($default_install_paths |
|
||||
ForEach-Object -Process {Get-ChildItem |
|
||||
Where-Object -Property "Name" -Like -Value "*conda*" |
|
||||
ForEach-Object -Process {$_.FullName |
|
||||
ForEach-Object -Process {$_ + "`n "}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
Installing Miniconda on top of it may have unintended side-effects of breaking your existing installation.
|
||||
"
|
||||
$user_input = (Read-Host -Prompt "Continue Installation of Miniconda anyway? [yes|(no)] ").ToLower()
|
||||
$install_miniconda = ("y","yes") -contains $user_input
|
||||
}
|
||||
|
||||
if ($install_miniconda) {
|
||||
#Setup Miniconda
|
||||
$miniconda_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe"
|
||||
$miniconda_installer = $miniconda_url.split('/')[-1]
|
||||
|
||||
#Silent mode command line flags: https://docs.anaconda.com/anaconda/install/silent-mode/
|
||||
$miniconda_install_params = '/S', '/D="$HOME\Miniconda3"', '/InstallationType=JustMe', '/RegisterPython=0', '/AddToPath=0'
|
||||
Invoke-WebRequest $miniconda_url -OutFile $miniconda_installer
|
||||
Invoke-Expression "& .\$miniconda_installer $miniconda_install_params"
|
||||
#Remove-Item ".\$miniconda_installer"
|
||||
$conda_exe = "$HOME\Miniconda3\Scripts\conda.exe"
|
||||
#Make conda accessible from any/all shells
|
||||
Invoke-Expression "& $conda_exe init --all"
|
||||
}
|
||||
|
||||
#Setup Visual Studio Code
|
||||
|
||||
$vscode_url = "https://aka.ms/win32-x64-user-stable"
|
||||
|
||||
$git_url = Invoke-WebRequest "https://git-scm.com/download/win" | Select-Object -ExpandProperty Links | Where-Object innerText -like "64-bit Git for Windows Setup" | Select-Object -ExpandProperty href
|
||||
|
||||
Reference in New Issue
Block a user