X-Git-Url: https://git.josue.xyz/?a=blobdiff_plain;ds=sidebyside;f=_webi%2Fwebi.ps1;h=5bb6966e966c4504fafdc52b7ebb7486e46c8e65;hb=3efbefdc677e5781bd4152a5ed089880f960b6cc;hp=3e302420babbc85050d8da3a2ecf2e1590bf0d69;hpb=681cccd4d5f2adb81470ee99ede927a6de896c3b;p=webi-installers%2F.git diff --git a/_webi/webi.ps1 b/_webi/webi.ps1 index 3e30242..5bb6966 100644 --- a/_webi/webi.ps1 +++ b/_webi/webi.ps1 @@ -1,4 +1,6 @@ -# If a command returns an error, halt the script. +#!/usr/bin/env pwsh + +# If a command returns an error, halt the script. $ErrorActionPreference = 'Stop' # Ignore progress events from cmdlets so Invoke-WebRequest is not painfully slow @@ -16,6 +18,7 @@ if (!(Test-Path -Path .local\bin)) { New-Item -Path .local\bin -ItemType Directory } +Set-Content -Path .local\bin\webi.bat -Value "echo off`r`npushd %USERPROFILE%`r`npowershell -ExecutionPolicy Bypass .local\bin\webi.ps1 %1`r`npopd" if (!(Test-Path -Path .local\opt)) { New-Item -Path .local\opt -ItemType Directory @@ -26,6 +29,13 @@ if (!(Test-Path -Path .local\tmp)) New-Item -Path .local\tmp -ItemType Directory } +# TODO SetStrictMode +# TODO Test-Path variable:global:Env:WEBI_HOST ??? +IF($Env:WEBI_HOST -eq $null -or $Env:WEBI_HOST -eq "") +{ + $Env:WEBI_HOST = "https://webinstall.dev" +} + if (!(Test-Path -Path .local\bin\pathman.exe)) { & curl.exe -fsSL -A "$Env:WEBI_UA" "$Env:WEBI_HOST/packages/pathman/install.ps1" -o .\.local\tmp\pathman-setup.ps1 @@ -33,15 +43,17 @@ if (!(Test-Path -Path .local\bin\pathman.exe)) # TODO del .\.local\tmp\pathman-setup.bat } +# Run pathman to set up the folder +#& "$Env:USERPROFILE\.local\bin\pathman.exe" add "$Env:USERPROFILE\.local\bin" +& "$Env:USERPROFILE\.local\bin\pathman.exe" add .local\bin + # {{ baseurl }} # {{ version }} # Fetch .ps1 -echo "$Env:WEBI_HOST/packages/$exename/install.ps1" -echo "$exename.install.ps1" - # TODO detect formats # Invoke-WebRequest -UserAgent "Windows amd64" "$Env:WEBI_HOST/api/installers/$exename.ps1?formats=zip,tar" -OutFile ".\.local\tmp\$exename.install.ps1" +echo "Downloading $Env:WEBI_HOST/api/installers/$exename.ps1?formats=zip,tar" & curl.exe -fsSL -A "$Env:WEBI_UA" "$Env:WEBI_HOST/api/installers/$exename.ps1?formats=zip,tar" -o .\.local\tmp\$exename.install.ps1 # Run .ps1