refactor: factorize external executables #7683
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'd like to see external executable dependencies (ripgrep, etc.) better consolidated in the code.
Currently they're scattered all over the place. Ideally there would be a single defvar/defcustom for each that would allow for easy overriding, in particular for Guix/Nix users like me who would like to patch the code in a packaging step so all the various external deps don't have to be installed globally (but it would be useful to everyone else too and it's good practice anyway).
THIS IS A DRAFT PR. Just a start on how this might look and to get feedback.
Some considerations:
rg
/fd
use is inconsistent with respect to remote filesexecutable-find
at the point of definition or at each point of use (where necessary)?executable-find
on that var, not the raw command as a stringWDYT?