bugfix(Windows): make sure ~/Downloads exists
[webi-installers/.git] / caddy / install.ps1
index cb9587637c435178f73de992369a622737d97c9d..5d46ccc937cfa2e31f084c5cb0e311da500b8128 100644 (file)
@@ -8,6 +8,7 @@
 $pkg_cmd_name = "caddy"
 
 $pkg_dst_cmd = "$Env:USERPROFILE\.local\bin\caddy.exe"
+$pkg_dst_bin = "$Env:USERPROFILE\.local\bin"
 $pkg_dst = "$pkg_dst_cmd"
 
 $pkg_src_cmd = "$Env:USERPROFILE\.local\opt\caddy-v$Env:WEBI_VERSION\bin\caddy.exe"
@@ -15,6 +16,7 @@ $pkg_src_bin = "$Env:USERPROFILE\.local\opt\caddy-v$Env:WEBI_VERSION\bin"
 $pkg_src_dir = "$Env:USERPROFILE\.local\opt\caddy-v$Env:WEBI_VERSION"
 $pkg_src = "$pkg_src_cmd"
 
+New-Item "$Env:USERPROFILE\Downloads" -ItemType Directory -Force | out-null
 $pkg_download = "$Env:USERPROFILE\Downloads\$Env:WEBI_PKG_FILE"
 
 # Fetch archive
@@ -32,7 +34,7 @@ IF (!(Test-Path -Path "$pkg_src_cmd")) {
     # Enter tmp
     pushd .local\tmp
 
-    # Remove any leftover tmp cruft 
+    # Remove any leftover tmp cruft
     Remove-Item -Path ".\caddy-v*" -Recurse -ErrorAction Ignore
     Remove-Item -Path ".\caddy.exe" -Recurse -ErrorAction Ignore
 
@@ -40,17 +42,17 @@ IF (!(Test-Path -Path "$pkg_src_cmd")) {
     # Windows BSD-tar handles zip. Imagine that.
     echo "Unpacking $pkg_download"
     & tar xf "$pkg_download"
-    & dir
 
     # Settle unpacked archive into place
     echo "Install Location: $pkg_src_cmd"
-    New-Item "$pkg_src_bin" -ItemType Directory
-    Move-Item -Path ".\caddy-*\caddy.exe" -Destination "$pkg_src_bin"
+    New-Item "$pkg_src_bin" -ItemType Directory -Force | out-null
+    Move-Item -Path ".\caddy.exe" -Destination "$pkg_src_bin"
 
     # Exit tmp
     popd
 }
 
 echo "Copying into '$pkg_dst_cmd' from '$pkg_src_cmd'"
-Remove-Item -Path "$pkg_dst_cmd" -Recurse -ErrorAction Ignore
+Remove-Item -Path "$pkg_dst_cmd" -Recurse -ErrorAction Ignore | out-null
+New-Item "$pkg_dst_bin" -ItemType Directory -Force | out-null
 Copy-Item -Path "$pkg_src" -Destination "$pkg_dst" -Recurse