diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-01-24 04:41:19 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-01-24 04:41:19 +0800 |
| commit | 2b41209f2b76d4067867be466bdcfed478ff3f39 (patch) | |
| tree | 7f232e5f468ceb4b40f0c1506a167c4de6236657 /scripts/setup/windows | |
| parent | 4c77a05993d40c42ebe78c1d3a72f8049f360982 (diff) | |
Move setup scripts to scripts/setup directory
Diffstat (limited to 'scripts/setup/windows')
| -rw-r--r-- | scripts/setup/windows/inst.ps1 | 19 | ||||
| -rw-r--r-- | scripts/setup/windows/uninst.ps1 | 39 |
2 files changed, 58 insertions, 0 deletions
diff --git a/scripts/setup/windows/inst.ps1 b/scripts/setup/windows/inst.ps1 new file mode 100644 index 0000000..4cb4772 --- /dev/null +++ b/scripts/setup/windows/inst.ps1 @@ -0,0 +1,19 @@ +# Execute uninstall script, attempt to remove leftover PROFILE entries +. ".\uninst.ps1" + +# Calculate directories +$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +$parentDir = Split-Path -Parent $scriptDir + +# Write configuration to PROFILE +Add-Content -Path $PROFILE -Value "# JustEnoughVCS - Begin #" +Add-Content -Path $PROFILE -Value ". `"$parentDir\jv_cli.ps1`"" +Add-Content -Path $PROFILE -Value "# JustEnoughVCS - End #" + +# Check dependencies, if OpenSSL is not found, show a prompt +try { + $null = Get-Command openssl -ErrorAction Stop +} catch { + $wshell = New-Object -ComObject Wscript.Shell + $wshell.Popup("OpenSSL was not found on your computer. JustEnoughVCS key generation depends on OpenSSL.", 0, "JustEnoughVCS Installation", 0x0 + 0x30) +} diff --git a/scripts/setup/windows/uninst.ps1 b/scripts/setup/windows/uninst.ps1 new file mode 100644 index 0000000..d5c898d --- /dev/null +++ b/scripts/setup/windows/uninst.ps1 @@ -0,0 +1,39 @@ +$profileContent = Get-Content $PROFILE -ErrorAction SilentlyContinue +if ($profileContent) { + $startMarker = "# JustEnoughVCS - Begin #" + $endMarker = "# JustEnoughVCS - End #" + $newContent = @() + $insideBlock = $false + $foundStart = $false + + foreach ($line in $profileContent) { + if ($line.Trim() -eq $startMarker) { + $insideBlock = $true + $foundStart = $true + continue + } + if ($line.Trim() -eq $endMarker) { + $insideBlock = $false + continue + } + if (-not $insideBlock) { + $newContent += $line + } + } + + if ($foundStart -and $insideBlock) { + $newContent = @() + $insideBlock = $false + foreach ($line in $profileContent) { + if ($line.Trim() -eq $startMarker) { + $insideBlock = $true + continue + } + if (-not $insideBlock) { + $newContent += $line + } + } + } + + $newContent | Set-Content $PROFILE +} |
