-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
Is this a new report?
Yes
System Info
Void 6.11.6_1 x86_64 GenuineIntel uptodate rrFFFF
Package(s) Affected
vscode-1.91.1_1
Does a report exist for this bug with the project's home (upstream) and/or another distro?
No response
Expected behaviour
Extensions such as Todo Tree import @vscode/ripgrep to perform searches across files. The tool should be able to locate ripgrep through the @vscode/ripgrep import.
Actual behaviour
This error occurs because the vscode template patches out @vscode/ripgrep and points vscode to the locally installed ripgrep. This works for vscode itself, but not for extensions that make use of @vscode/ripgrep. The template cannot remove @vscode/ripgrep from installed extensions, so an alternative must be found.
Steps to reproduce
- Install latest version of
vscode - Install Todo Tree
- Observe as the extensions fails to locate
@vscode/ripgrep
You can duct-tape fix this behavior by going in Todo Tree's settings and manually pointing the extention to /usr/bin/rg. However, this should not happen, breaks any extension depending on vscode's built-in ripgrep, and has only occurred on Void Linux and no other distribution in my experience (working fine on Gentoo, Arch, Fedora, and Linux Mint). Other distributions that apply a similar patch to Void's (or sandboxes vscode) could also face this problem, but Void Linux in this case introduces a breaking change that prevents some extensions from working properly.
Suggested action
Several module aliasing libraries exist on npm. If acceptable and possible (and reasonably doable from the package), one of those should be pulled and used to alias @vscode/ripgrep to Void's own module across the entirety of vscode at runtime, not only in the files of its codebase. If not realistic, alternative ways should be investigated to fix this problem, including alterations of the patch or perhaps a shim for the @vscode/ripgrep module.
