Run commands through /usr/bin/env sh -c instead of $SHELL -c
- Dominant language
- C
- Stars
- 8.1k
- Forks
- 241
- PR merge metrics
- No merged PRs in 30d
Description
Run commands through `/usr/bin/env sh -c` instead of `$SHELL -c`.
This is directly related to koekeishiya/yabai#34 and also serves as future-proofing for macOS 10.15, where `/bin/zsh` will be the default shell instead of `/bin/bash`. Having consistency between `skhd` and `yabai` is definitely desirable.
This might be a breaking change for people that run `launchctl setenv SHELL "/path/to/custom/shell"` to change the shell for launchctl only, which seems worth discussing. Similar options have been discussed as part of #42.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the current `$SHELL -c` command execution path in skhd and review the related yabai#34 and #42 discussions. Check how `launchctl setenv SHELL` is handled on macOS, then verify that command execution consistently uses `/usr/bin/env sh -c` without breaking the documented custom-shell case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, macos, shell
- Domain
- cli, operating-systems
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100