From: Ardis Lu Date: Tue, 30 Apr 2024 21:33:12 +0000 (-0700) Subject: Add -Persist parameter X-Git-Url: https://git.ardis.lu/?a=commitdiff_plain;h=969f501e64d6604efbe6bbdb5039aa61af6b4246;p=ArdisUtilities Add -Persist parameter --- diff --git a/install.ps1 b/install.ps1 index 7fbd6db..a1069c4 100644 --- a/install.ps1 +++ b/install.ps1 @@ -1,4 +1,11 @@ function Install-ArdisUtilities { + [OutputType([System.Void])] + [CmdletBinding()] + param( + [Parameter()] + [Switch]$Persist + ) + begin { # Create a temporary working folder $tempFolder = Join-Path $Env:Temp $(New-Guid) @@ -10,9 +17,18 @@ function Install-ArdisUtilities { $zipFile = Join-Path $tempFolder /ArdisUtilities.zip Invoke-WebRequest 'https://github.com/ardislu/ArdisUtilities/archive/refs/heads/main.zip' -OutFile $zipFile Expand-Archive $zipFile $tempFolder + $module = Join-Path $tempFolder 'ArdisUtilities-main/ArdisUtilities' # Import the module from the extraction - Import-Module (Join-Path $tempFolder /ArdisUtilities-main/ArdisUtilities) + Import-Module $module + + if ($Persist) { + $destination = "$HOME/Documents/PowerShell/Modules" # Default path for persistent PowerShell modules + if (Test-Path -LiteralPath "$destination/ArdisUtilities") { + Remove-Item "$destination/ArdisUtilities" -Force -Recurse + } + Copy-Item -Path $module -Destination $destination -Recurse + } } clean { @@ -21,4 +37,4 @@ function Install-ArdisUtilities { } } -Install-ArdisUtilities +Install-ArdisUtilities @args