| 150 | |
| 151 | impl InstallOption { |
| 152 | pub fn usage(&self) -> &'static str { |
| 153 | match self { |
| 154 | #[cfg(not(windows))] |
| 155 | InstallOption::Brew => "brew install zig", |
| 156 | #[cfg(windows)] |
| 157 | InstallOption::Choco => "choco install zig", |
| 158 | #[cfg(not(windows))] |
| 159 | InstallOption::Nix => "nix-env -iA nixpkgs.zig", |
| 160 | #[cfg(not(windows))] |
| 161 | InstallOption::Npm => "npm install -g @ziglang/cli", |
| 162 | InstallOption::Pip3 => "pip3 install ziglang", |
| 163 | #[cfg(windows)] |
| 164 | InstallOption::Scoop => "scoop install zig", |
| 165 | #[cfg(windows)] |
| 166 | InstallOption::Winget => "winget install zig.zig", |
| 167 | } |
| 168 | } |
| 169 | |
| 170 | pub async fn install(self) -> Result<()> { |
| 171 | let pb = Progress::start("Installing Zig..."); |