waveterm icon indicating copy to clipboard operation
waveterm copied to clipboard

Default shell setting for Windows

Open esimkowitz opened this issue 1 year ago • 4 comments

Is your feature request related to a problem? Please describe.

On Mac and Linux, we honor the chsh settings for determining which shell to use. On Windows, we only support Windows Powershell.

Describe the solution you'd like

We should let users specify the default shell to use on Windows, including setting it to WSL, Cygwin, Git Bash, MSYS2, etc.

We can treat this somewhat like a remote, so that we don't need to relaunch the VM for each command, but we can make use of the filesystem access to use the installed WSH version, rather than needing to copy it over.

We should also support other native shells like Powershell Core and Command Prompt, though the latter is probably difficult just because it sucks (syntactically :P)

esimkowitz avatar Sep 25 '24 22:09 esimkowitz

I literally just tried this out on Windows 11 and was genuinely confused as to where can I set the shell, only to not find any option whatsoever. Seeing this implemented would be considered a huge improvement over Windows Terminal given the plethora of features Waveterm has.

Soromeister avatar Sep 26 '24 09:09 Soromeister

I completely agree with this suggestion! I would love to be able to use Git Bash on Windows. Having the option to set a default shell would be a significant improvement, especially for those of us who prefer development tools like Git Bash. It would enhance the user experience on Windows and provide a more consistent working environment. Thanks for considering this feature!

C0sm0cats avatar Oct 02 '24 12:10 C0sm0cats

WSL is being worked on currently, @oneirocosm can provide more details. Git-Bash, MSYS2, Docker, are also on our radar, as are AWS, Azure, and GCloud shells. Any others I'm missing?

esimkowitz avatar Oct 02 '24 23:10 esimkowitz

As an Arch Linux user, I value having my default shell (Zsh), and for work, I rely on the Windows version. Currently, being limited to PowerShell on Windows can be restrictive, so i fully support the idea of adding options for users to select their preferred shell, like Git Bash or WSL, as it would greatly enhance the overall experience. A more flexible environment would truly benefit developers.

@esimkowitz, it’s great to hear that other shells are being considered. Let’s also explore user-defined settings for even more customization. We could implement a setting that allows users to specify the path to their preferred shell. Alongside this, a toggle could enable users to easily switch between different shells. This combination would provide the flexibility to create a personalized environment that aligns with each developer's workflow.

I’m excited to see what other shells users are interested in! Let’s keep the conversation going !

C0sm0cats avatar Oct 03 '24 01:10 C0sm0cats

we have a new config setting term:localshellpath (and the associated term:localshellopts) (see https://docs.waveterm.dev/config).

not closing this yet though since we want to make sure, as much as possible, that we also get wsh added to the path even when using a custom shell.

we're making progress on native WSL. hope to get that feature out shortly.

sawka avatar Oct 06 '24 20:10 sawka

Hi @sawka,

I tested the new config setting term:localshellpath on Manjaro by switching from zsh to sh, and on Windows, where I was able to switch to Git Bash instead of the default PowerShell. Everything is working perfectly, thank you!

C0sm0cats avatar Oct 07 '24 05:10 C0sm0cats