Make zoxide installation cross platform

This commit is contained in:
Manuel Thalmann 2024-09-19 22:24:36 +02:00
parent f1a32f6008
commit 758230e921
3 changed files with 45 additions and 21 deletions

View file

@ -0,0 +1,19 @@
param(
$Action,
[hashtable] $Arguments
)
. "$PSScriptRoot/../../Scripts/Software.ps1";
. "$PSScriptRoot/../PowerShell/Profile.ps1";
Start-SoftwareInstaller @PSBoundParameters `
-Configurator {
Add-PowerShellProfileStatement `
-System `
-Category "zoxide" `
-Script (
@(
"# zoxide",
(Get-ScriptInitializer "zoxide init powershell | Out-String")
) -join [System.Environment]::NewLine);
};

View file

@ -8,7 +8,7 @@ begin
source "$dir/../fish/profile.fish" source "$dir/../fish/profile.fish"
echo 'eval "$(zoxide init bash)"' | installBashProfile "zoxide" echo 'eval "$(zoxide init bash)"' | installBashProfile "zoxide"
echo "zoxide init fish | source" | installFishProfile "zoxide" echo "zoxide init fish | source" | installFishProfile "zoxide"
sudo pwsh -NoProfile "$dir/install.ps1" sudo -HE pwsh -NoProfile "$dir/Main.ps1" Configure
end end
runInstaller $argv runInstaller $argv

View file

@ -3,8 +3,15 @@ param(
[hashtable] $Arguments [hashtable] $Arguments
) )
& {
param(
[hashtable] $Parameters
)
. "$PSScriptRoot/../../../Common/Software/PowerShell/Profile.ps1"; . "$PSScriptRoot/../../../Common/Software/PowerShell/Profile.ps1";
. "$PSScriptRoot/../../../Common/Scripts/Software.ps1"; . "$PSScriptRoot/../../../Common/Scripts/Software.ps1";
. "$PSScriptRoot/../../../Common/Types/InstallerAction.ps1";
$base = "$PSScriptRoot/../../../Common/Software/zoxide/Main.ps1";
Start-SoftwareInstaller @PSBoundParameters ` Start-SoftwareInstaller @PSBoundParameters `
-Installer { -Installer {
@ -16,12 +23,10 @@ Start-SoftwareInstaller @PSBoundParameters `
Install-WingetPackage junegunn.fzf; Install-WingetPackage junegunn.fzf;
} ` } `
-Configurator { -Configurator {
Add-PowerShellProfileStatement ` param(
-System ` $Arguments
-Category "zoxide" ` )
-Script (
@( & $base ([InstallerAction]::ConfigureUser) @PSBoundParameters;
"# zoxide",
(Get-ScriptInitializer "zoxide init powershell | Out-String")
) -join [System.Environment]::NewLine);
}; };
} $PSBoundParameters;