Refactor chocolatey script

This commit is contained in:
Manuel Thalmann 2024-08-07 21:50:21 +02:00
parent 7770ef04a1
commit 754dc5483c
2 changed files with 16 additions and 13 deletions

View file

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

View file

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