Use prompt for desktop shortcuts, fixes #914
This commit is contained in:
parent
94b4b7c455
commit
da078c7362
@ -42,7 +42,9 @@ param (
|
|||||||
# The Msys2 version to download (e.g. 20221216)
|
# The Msys2 version to download (e.g. 20221216)
|
||||||
[string]$Msys2Version,
|
[string]$Msys2Version,
|
||||||
# The Msys2 sha256sum hash
|
# The Msys2 sha256sum hash
|
||||||
[string]$Msys2Hash
|
[string]$Msys2Hash,
|
||||||
|
# Whether to disable creation of several desktop shortcuts
|
||||||
|
[switch]$DontWriteDesktopShortcuts
|
||||||
)
|
)
|
||||||
|
|
||||||
$DefaultMsys2Version = "20221216"
|
$DefaultMsys2Version = "20221216"
|
||||||
@ -410,6 +412,26 @@ if (!($InstallStack)) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($Interactive) {
|
||||||
|
$DesktopDecision = $Host.UI.PromptForChoice('Create Desktop shortcuts'
|
||||||
|
, 'Do you want to create convenience desktop shortcuts (e.g. for uninstallation and msys2 shell)?'
|
||||||
|
, [System.Management.Automation.Host.ChoiceDescription[]] @('&Yes'
|
||||||
|
'&No'
|
||||||
|
'&Abort'), 0)
|
||||||
|
if ($DesktopDecision -eq 0) {
|
||||||
|
$InstallDesktopShortcuts = $true
|
||||||
|
} elseif ($DesktopDecision -eq 2) {
|
||||||
|
Exit 0
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if ($Minimal) {
|
||||||
|
$InstallDesktopShortcuts = $false
|
||||||
|
} elseif ($DontWriteDesktopShortcuts) {
|
||||||
|
$InstallDesktopShortcuts = $false
|
||||||
|
} else {
|
||||||
|
$InstallDesktopShortcuts = $true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# mingw foo
|
# mingw foo
|
||||||
Print-Msg -msg 'First checking for Msys2...'
|
Print-Msg -msg 'First checking for Msys2...'
|
||||||
@ -510,6 +532,9 @@ if (!(Test-Path -Path ('{0}' -f $MsysDir))) {
|
|||||||
Start-Sleep -s 5
|
Start-Sleep -s 5
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($InstallDesktopShortcuts) {
|
||||||
|
|
||||||
Print-Msg -msg 'Creating shortcuts...'
|
Print-Msg -msg 'Creating shortcuts...'
|
||||||
$uninstallShortCut = @'
|
$uninstallShortCut = @'
|
||||||
$decision = $Host.UI.PromptForChoice('Uninstall Haskell'
|
$decision = $Host.UI.PromptForChoice('Uninstall Haskell'
|
||||||
@ -579,6 +604,7 @@ Create-Shortcut -SourceExe ('{0}\msys2_shell.cmd' -f $MsysDir) -ArgumentsToSourc
|
|||||||
Create-Shortcut -SourceExe 'https://www.msys2.org/docs/package-management' -ArgumentsToSourceExe '' -DestinationPath 'Mingw package management docs.url' -TempPath $GhcupDir
|
Create-Shortcut -SourceExe 'https://www.msys2.org/docs/package-management' -ArgumentsToSourceExe '' -DestinationPath 'Mingw package management docs.url' -TempPath $GhcupDir
|
||||||
$DesktopDir = [Environment]::GetFolderPath("Desktop")
|
$DesktopDir = [Environment]::GetFolderPath("Desktop")
|
||||||
$null = New-Item -Path $DesktopDir -Name "Uninstall Haskell.ps1" -ItemType "file" -Force -Value $uninstallShortCut
|
$null = New-Item -Path $DesktopDir -Name "Uninstall Haskell.ps1" -ItemType "file" -Force -Value $uninstallShortCut
|
||||||
|
}
|
||||||
|
|
||||||
Print-Msg -msg ('Adding {0}\bin to Users Path...' -f $GhcupDir)
|
Print-Msg -msg ('Adding {0}\bin to Users Path...' -f $GhcupDir)
|
||||||
Add-EnvPath -Path ('{0}\bin' -f ([System.IO.Path]::GetFullPath("$GhcupDir"))) -Container 'User'
|
Add-EnvPath -Path ('{0}\bin' -f ([System.IO.Path]::GetFullPath("$GhcupDir"))) -Container 'User'
|
||||||
|
Loading…
Reference in New Issue
Block a user