ScoopInstaller / Extras

📦 The Extras bucket for Scoop.
https://scoop.sh
The Unlicense
1.79k stars 1.35k forks source link

[Bug]: ani-cli cmd shim calls wsl bash instead of git's bash, causing errors #13385

Closed ykhan21 closed 3 months ago

ykhan21 commented 4 months ago

Prerequisites

Package Name

ani-cli

Expected/Current Behaviour

On cmd and powershell, on certain Windows computers, running ani-cli will cause WSL errors. This is because the ani-cli cmd shim, calls bash, which may link WSL bash, depending on if the computer used WSL. It used to be that the cmd shim with call git for Windows' bash, which did not cause an error. Running ani-cli on git for windows' bash works, because the ani-cli sh shim is called instead of the cmd shim.

Steps to Reproduce

1. Get a Windows computer that has used WSL previously.
2. Run `scoop buckets add extras` and `scoop install ani-cli`.
3. Run `ani-cli` in cmd or powershell.

Possible Solution

Replace bash with git for windows' bash in the cmd shim. PR #13342 makes this change after scoop install ani-cli.

Scoop and Buckets Version

Current Scoop version:
d337bb1f chore(release): Bump to version 0.4.2 (#5964)

'main' bucket:
da6185d09 shadowsocks-rust: Update to version 1.19.2

'extras' bucket:
74721d5bd upscayl: Update to version 2.11.5

'versions' bucket:
7962a2188 zig-dev: Update to version 0.13.0-dev.349

'nerd-fonts' bucket:
a6b9261c SarasaGothic: Update to version 1.0.13

'nonportable' bucket:
fe9ee98 k-lite-codec-pack-standard-np: Update to version 18.3.5

Scoop Config

last_update          scoop_repo                              scoop_branch
-----------          ----------                              ------------
6/1/2024 11:35:36 AM https://github.com/ScoopInstaller/Scoop master

PowerShell Version

Name                           Value
----                           -----
PSVersion                      7.3.9
PSEdition                      Core
GitCommitId                    7.3.9
OS                             Microsoft Windows 10.0.22621
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Additional Softwares

No response

ykhan21 commented 4 months ago

A better solution would be if you could specify in the scoop manifest whether to use a native bash (from git for windows or msys) or a wsl bash (C:\Windows\System32\bash.exe) in generated cmd shims.

ykhan21 commented 1 month ago

@niheaven, https://github.com/ScoopInstaller/Scoop/pull/6006 doesn't work to fix this issue. ani-cli, and apps like it, are expecting to use Git Bash's bash.exe, even when ani-cli is run from cmd.