param( [switch] $AllUsers ) $installInstructions = @' Hey friend This installer is only available for Windows. If you're looking for installation instructions for your operating system, please visit the following link: '@ if ($IsMacOS) { Write-Host @" $installInstructions https://ohmyposh.dev/docs/installation/macos "@ exit } if ($IsLinux) { Write-Host @" $installInstructions https://ohmyposh.dev/docs/installation/linux "@ exit } $installer = '' $arch = (Get-CimInstance -Class Win32_Processor -Property Architecture).Architecture switch ($arch) { 0 { $installer = "install-386.exe" } # x86 5 { $installer = "install-arm64.exe" } # ARM 9 { if ([Environment]::Is64BitOperatingSystem) { $installer = "install-amd64.exe" } else { $installer = "install-386.exe" } } 12 { $installer = "install-arm64.exe" } # Surface Pro X } if ($installer -eq '') { Write-Host @" The installer for system architecture ($arch) is not available. "@ exit } Write-Host "Downloading $installer..." $tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'exe' } -PassThru $url = "https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/$installer" Invoke-WebRequest -OutFile $tmp $url Write-Host 'Running installer...' $installMode = "/CURRENTUSER" if ($AllUsers) { $installMode = "/ALLUSERS" } & "$tmp" /VERYSILENT $installMode | Out-Null $tmp | Remove-Item Write-Host @' Done! Restart your terminal and have a look at the documentation on how to proceed from here. https://ohmyposh.dev/docs/installation/prompt '@