also match arch64 and arch32
[webi-installers/.git] / _webi / webi.ps1
index 7ec0c1d368c03318870321c57835e6da189cf8ff..ac4886fd2d7648bf795449a157c2ce1b3b78adfb 100644 (file)
@@ -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,11 @@ if (!(Test-Path -Path .local\bin))
 {
     New-Item -Path .local\bin -ItemType Directory
 }
+if (!(Test-Path -Path .local\xbin))
+{
+    New-Item -Path .local\xbin -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
@@ -28,7 +35,7 @@ if (!(Test-Path -Path .local\tmp))
 
 # TODO SetStrictMode
 # TODO Test-Path variable:global:Env:WEBI_HOST ???
-IF(!$Env:WEBI_HOST)
+IF($Env:WEBI_HOST -eq $null -or $Env:WEBI_HOST -eq "")
 {
     $Env:WEBI_HOST = "https://webinstall.dev"
 }
@@ -40,16 +47,19 @@ 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 %USERPROFILE%\.local\bin
+
 # {{ baseurl }}
 # {{ version }}
 
 # Fetch <whatever>.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"
-& curl.exe -fsSL -A "$Env:WEBI_UA" "$Env:WEBI_HOST/api/installers/$exename.ps1?formats=zip,tar" -o .\.local\tmp\$exename.install.ps1
+$PKG_URL = "$Env:WEBI_HOST/api/installers/$exename.ps1?formats=zip,exe,tar"
+echo "Downloading $PKG_URL"
+# Invoke-WebRequest -UserAgent "Windows amd64" "$PKG_URL" -OutFile ".\.local\tmp\$exename.install.ps1"
+& curl.exe -fsSL -A "$Env:WEBI_UA" "$PKG_URL" -o .\.local\tmp\$exename.install.ps1
 
 # Run <whatever>.ps1
 powershell .\.local\tmp\$exename.install.ps1