Refactor chocolatey script

This commit is contained in:
Manuel Thalmann 2024-08-07 21:50:21 +02:00
parent bb3a37c3ec
commit 3598a10216
2 changed files with 15 additions and 13 deletions

View file

@ -183,6 +183,7 @@ $null = New-Module {
# Essentials # Essentials
. "$softwarePath/OpenSSH/Manage.ps1" @arguments; . "$softwarePath/OpenSSH/Manage.ps1" @arguments;
. "$softwarePath/PowerShell/Manage.ps1" @arguments; . "$softwarePath/PowerShell/Manage.ps1" @arguments;
. "$softwarePath/chocolatey/Manage.ps1" @arguments;
} }
if (Test-Collection "common") { if (Test-Collection "common") {

View file

@ -16,24 +16,25 @@ Start-SoftwareInstaller @PSBoundParameters `
& $Installer -Action ([InstallerAction]::Configure) & $Installer -Action ([InstallerAction]::Configure)
} ` } `
-Configurator { -Configurator {
[string] $backup = $null;
$nativeProfile = powershell -c '$PROFILE'; $nativeProfile = powershell -c '$PROFILE';
if (Test-Path -PathType Leaf $nativeProfile) {
$backup = "${nativeProfile}_";
Move-Item $nativeProfile $backup;
}
$null = New-Item -Force $nativeProfile; $null = New-Item -Force $nativeProfile;
choco install -y --force chocolatey; choco install -y --force chocolatey;
Copy-Item -Force $nativeProfile $PROFILE;
Push-Location ~; Add-PowerShellProfileStatement `
$files = @($nativeProfile, $PROFILE) | ForEach-Object { Resolve-Path -Relative $_ }; -DefaultUser `
Pop-Location; -Category "chocolatey" `
-Script (Get-Content $nativeProfile | Out-String) `
-Append;
foreach ($path in $files) { if ($backup) {
$fullName = "$env:SystemDrive/Users/Default/$path"; Move-Item $backup $nativeProfile;
$dirName = Split-Path -Parent $fullName;
if (-not (Test-Path -PathType Container $dirName)) {
$null = New-Item -Force -ItemType Directory $dirName;
}
Copy-Item -Force ~/"$path" $fullName;
} }
Import-Module "$env:ChocolateyInstall/helpers/chocolateyProfile.psm1"; Import-Module "$env:ChocolateyInstall/helpers/chocolateyProfile.psm1";