From 234aa2ae7cbda4e039ad664cb372850f8c258227 Mon Sep 17 00:00:00 2001
From: Jiahao XU <30436523+NobodyXu@users.noreply.github.com>
Date: Sat, 9 Nov 2024 15:09:20 +1100
Subject: [PATCH] Use --self-install if available in powershell install script

Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com>
---
 install-from-binstall-release.ps1 | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/install-from-binstall-release.ps1 b/install-from-binstall-release.ps1
index 0e0a39c2..b3804a96 100644
--- a/install-from-binstall-release.ps1
+++ b/install-from-binstall-release.ps1
@@ -19,7 +19,12 @@ $url = "$base_url$arch-pc-windows-msvc.zip"
 Invoke-WebRequest $url -OutFile $tmpdir\cargo-binstall.zip
 Expand-Archive -Force $tmpdir\cargo-binstall.zip $tmpdir\cargo-binstall
 Write-Host ""
-Invoke-Expression "$tmpdir\cargo-binstall\cargo-binstall.exe -y --force cargo-binstall"
+
+Invoke-Expression "$tmpdir\cargo-binstall\cargo-binstall.exe --self-install"
+if (-not $?) {
+    Invoke-Expression "$tmpdir\cargo-binstall\cargo-binstall.exe -y --force cargo-binstall"
+}
+
 Remove-Item -Force $tmpdir\cargo-binstall.zip
 Remove-Item -Recurse -Force $tmpdir\cargo-binstall
 $cargo_home = if ($Env:CARGO_HOME -ne $null) { $Env:CARGO_HOME } else { "$HOME\.cargo" }