# gpui_util: Respect custom Scoop installation paths \(\#62473\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/bcf6582ce3500df93a8a39366640173e6786cea6)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: bcf6582ce3500df93a8a39366640173e6786cea6

Requested commit: bcf6582ce3500df93a8a39366640173e6786cea6

Commit: bcf6582ce3500df93a8a39366640173e6786cea6

Tree: 13364c76f88fbf2b18344d62aea16fc1a6ab7457

Author: jliu666

Committer: GitHub

## Message

```
gpui_util: Respect custom Scoop installation paths (#62473)

# Objective

- Fix PowerShell discovery when Scoop is installed outside the default
`%USERPROFILE%\scoop` directory.
- Zed currently ignores Scoop's `SCOOP` environment variable, so it can
miss `pwsh.exe` and fall back to another shell.

## Solution

- Use the `SCOOP` environment variable as the Scoop root when it is set.
- Fall back to `%USERPROFILE%\scoop` when `SCOOP` is unset.
- Preserve the PowerShell discovery order and file validation from the
current `main` branch.

The original change also covered Git Bash. That is no longer needed
after #63339 changed Git Bash discovery to follow the active Git
installation.

## Testing

- `cargo fmt --all --check`
- `cargo test -p gpui_util` — 2 passed, 0 failed.
- `cargo check -p gpui_util --tests --target x86_64-pc-windows-msvc` —
passed.
- Did not runtime-test the Windows-specific path on this macOS host
because Windows test binaries cannot run natively here.
- To test manually on Windows, set `SCOOP` to a custom Scoop root
containing `shims\pwsh.exe`, launch Zed, and verify that PowerShell is
selected.

## Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content adheres to Zed's UI standards
([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
and
[icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md)
guidelines)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed PowerShell installed by Scoop not being detected when Scoop uses
a custom installation directory.
- [GPUI] Fixed PowerShell discovery for custom Scoop installations on
Windows.

Signed-off-by: jliu666 <jliu666@hotmail.com>
```

## Parents

- [a51d23c93d15cf04c5d5cae2ecbf5b71404b71b7](https://git.cafe/gitcafe/zed/commit/a51d23c93d15cf04c5d5cae2ecbf5b71404b71b7?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/bcf6582ce3500df93a8a39366640173e6786cea6?format=markdown)
