diff --git a/scripts/Windows/Scripts/KnownFolders.ps1 b/scripts/Windows/Scripts/KnownFolders.ps1 new file mode 100644 index 00000000..c3e53d73 --- /dev/null +++ b/scripts/Windows/Scripts/KnownFolders.ps1 @@ -0,0 +1,3 @@ +#!/bin/pwsh +. "$PSScriptRoot/Modules.ps1" KnownFolders; +Import-Module KnownFolders; diff --git a/scripts/Windows/Scripts/Modules.ps1 b/scripts/Windows/Scripts/Modules.ps1 new file mode 100644 index 00000000..7580685f --- /dev/null +++ b/scripts/Windows/Scripts/Modules.ps1 @@ -0,0 +1,17 @@ +#!/bin/pwsh +param ( + [string]$ModuleName, + [switch]$WindowsPowerShell +) + +if ($WindowsPowerShell) { + if (-not (powershell -c Get-Module -ListAvailable $ModuleName)) { + Write-Host "Installing Windows PowerShell Module $ModuleName"; + powershell -c Install-Module -Force "$ModuleName"; + } +} else { + if (-not (Get-Module -ListAvailable $ModuleName)) { + Write-Host "Installing PowerShell Module $ModuleName"; + Install-Module -AcceptLicense -Force "$ModuleName"; + } +} diff --git a/scripts/Windows/Scripts/Prerequisites.ps1 b/scripts/Windows/Scripts/Prerequisites.ps1 index 93b89f09..7494dc88 100644 --- a/scripts/Windows/Scripts/Prerequisites.ps1 +++ b/scripts/Windows/Scripts/Prerequisites.ps1 @@ -9,7 +9,7 @@ if (-not $?) { powershell -c '$null = Install-PackageProvider -Name NuGet -Force'; } -foreach ($module in @("PSWindowsUpdate", "KnownFolders")) +foreach ($module in @("PSWindowsUpdate")) { if (-not (Get-Module -ListAvailable $module)) { diff --git a/scripts/Windows/Software/RetroArch/Manage.ps1 b/scripts/Windows/Software/RetroArch/Manage.ps1 index f87ab0a3..0e147eb5 100644 --- a/scripts/Windows/Software/RetroArch/Manage.ps1 +++ b/scripts/Windows/Software/RetroArch/Manage.ps1 @@ -1,8 +1,8 @@ #!/bin/pwsh +. "$PSScriptRoot/../../Scripts/KnownFolders.ps1"; . "$PSScriptRoot/../../Scripts/Context.ps1"; $null = New-Module { - Import-Module "KnownFolders"; Import-Module "$env:ChocolateyInstall/helpers/chocolateyInstaller.psm1"; $path = "C:/tools/RetroArch-Win64"; $softwareName = "RetroArch"; diff --git a/scripts/Windows/Software/VisualStudio/Manage.ps1 b/scripts/Windows/Software/VisualStudio/Manage.ps1 index 0a2aebf9..11ff11ba 100644 --- a/scripts/Windows/Software/VisualStudio/Manage.ps1 +++ b/scripts/Windows/Software/VisualStudio/Manage.ps1 @@ -1,5 +1,5 @@ #!/bin/pwsh -Import-Module "KnownFolders"; +. "$PSScriptRoot/../../Scripts/KnownFolders.ps1"; . "$PSScriptRoot/../../Scripts/Context.ps1"; $null = New-Module {