Compare commits
2 commits
2def5be4f9
...
e9f5f1571f
Author | SHA1 | Date | |
---|---|---|---|
Manuel Thalmann | e9f5f1571f | ||
Manuel Thalmann | 638cbd454e |
|
@ -11,10 +11,10 @@ function Invoke-WindowsInstallation([Context] $context)
|
||||||
$Global:InformationPreference = "Continue";
|
$Global:InformationPreference = "Continue";
|
||||||
$Global:ErrorActionPreference = "Inquire";
|
$Global:ErrorActionPreference = "Inquire";
|
||||||
$context.UserNames ??= @("Manuel");
|
$context.UserNames ??= @("Manuel");
|
||||||
Start-WindowsInstallation $context;
|
Start-OldWindowsInstallationScript $context;
|
||||||
}
|
}
|
||||||
|
|
||||||
function Start-WindowsInstallation([Context] $context) {
|
function Start-OldWindowsInstallationScript([Context] $context) {
|
||||||
$finished = $false;
|
$finished = $false;
|
||||||
Remove-Item Env:\POSH_THEME -ErrorAction SilentlyContinue;
|
Remove-Item Env:\POSH_THEME -ErrorAction SilentlyContinue;
|
||||||
$configPath = "$PSScriptRoot/../Config";
|
$configPath = "$PSScriptRoot/../Config";
|
||||||
|
|
26
scripts/Windows/Scripts/Hooks.ps1
Normal file
26
scripts/Windows/Scripts/Hooks.ps1
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
function Invoke-Hook() {
|
||||||
|
param(
|
||||||
|
[string] $Name,
|
||||||
|
[System.Action] $Fallback
|
||||||
|
)
|
||||||
|
|
||||||
|
if ($Fallback) {
|
||||||
|
$scriptBlock = { $Fallback.Invoke(); };
|
||||||
|
} else {
|
||||||
|
$scriptBlock = { };
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Get-Command "$Name" -ErrorAction SilentlyContinue) {
|
||||||
|
$parameters = {
|
||||||
|
fallback = $scriptBlock
|
||||||
|
};
|
||||||
|
|
||||||
|
Write-Host "Running Hook ``$Name``";
|
||||||
|
& "$Name" @parameters;
|
||||||
|
} elseif ($Fallback) {
|
||||||
|
Write-Host "Running Default of Hook ``$Name``";
|
||||||
|
& $scriptBlock;
|
||||||
|
} else {
|
||||||
|
Write-Host "Hook ``$Name``";
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue