microsoft / windows-dev-box-setup-scripts

Scripts to simplify setting up a Windows developer box
MIT License
1.5k stars 368 forks source link

Add terminal applications (including OpenSSH, Win Terminal, Cmder, etc.) to Boxstarter #86

Open WSLUser opened 4 years ago

WSLUser commented 4 years ago

On versions that support it, we should include options to install Windows Terminal via both Store and Chocolatey (in scenarios where Store access is prohibited but choco installs are not) automatically from the Box Starter script. The Terminal should be available for all dev scripts as anybody doing any type of CLI will want to use it (even if they don't realize it at first). Additionally Win32-OpenSSH should be updated directly from github or from chocolately (currently chocolatey is a version behind). The reason behind this is simple: Releases on github are available sooner than installing via "optional features" on Windows 10 and also requires re-install in most cases during an OS upgrade when enabled via "optional features". This would also be available on all windows script so regardless of whether WSL is installed or not, the user can still use native SSH instead of Putty.

WSLUser commented 4 years ago

Paging @yodurr to ensure traction on this since it appears this project does not get much attention.

pauby commented 4 years ago

CLI will want to use it (even if they don't realize it at first)

A terminal is a very personal thing for most people and including one by default I don't feel is justified. I don't use Windows Terminal and won't be using it. I'm sure I'm not the only one.

I also feel the same about Open-SSH. Why is this a requirement for this?

My vote, if one is needed, is to not have either of these installed out of the box unless there is a requirement for them. And there may be a requirement that I'm not aware of.

WSLUser commented 4 years ago

It can be made optional but there are many users of both projects. Organizations are using SSH to start with, they will prefer using the win32 provided one vice installing Cygwin (the closest light-weight is git-bash, but use of git might be on a remote server (or WSL), not on the windows client). All that's requested is to automate the process a bit more for users who plan on installing anyways. Re: terminals, yes it is a personal choice but once it goes GA soon, many people who may of been holding off will want to at the very least try it out. Also there are already a ton of users using it as it's arguably the best terminal on Windows now. Yes ConEmu does provide some features that Windows Terminal doesn't yet but all it takes is a community PR if there's something missing. The Terminal devs are really great at accepting features once they ensure the code is of high quality and has no unintended side effects.

WSLUser commented 4 years ago

I should also note in the case of WSL, Windows Terminal is still the best supporting terminal. Others that use ConPTY will be similar but the fact the developers that work on Console also created Windows Terminal provides insight and experience other terminals can't duplicate. Therefore I trust that Windows Terminal will continue getting better and better while other terminals may not optimize for the Windows experience even if it was ported to Windows.

pauby commented 4 years ago

Re: terminals, yes it is a personal choice but once it goes GA soon, many people who may of been holding off will want to at the very least try it out. Also there are already a ton of users using it

There are a ton of users using ConeEmu, Console2, Consolez, Cmder and the many other terminals. I'm unsure why we're not adding all of those too?

as it's arguably the best terminal on Windows now.

Not in my head. And many others. But this isn't what I'm asking.

I should also note in the case of WSL, Windows Terminal is still the best supporting terminal. Others that use ConPTY will be similar but the fact the developers that work on Console also created Windows Terminal provides insight and experience other terminals can't duplicate. Therefore I trust that Windows Terminal will continue getting better and better while other terminals may not optimize for the Windows experience even if it was ported to Windows.

I'm not going to go into the which Terminal is better argument. As I said, this isn't what it's about. Adding this to a dev box for anybody is a simple Chocolatey command for this, ConEmu, Cmder etc. Why add something that is not required for ths box? I don't want to waste time installing something that I won't ever use.

WSLUser commented 4 years ago

Ok, since there are choco packages for the other mentioned terminals, provide the user with a script that will auto-install their terminal of choice. It should have a prompt requesting which terminal the user would like to install, the user picks one, then the script will automatically install it.

WSLUser commented 4 years ago

Is the title more suitable for you?

bitcrazed commented 4 years ago

The whole point of Chocolatey/Boxstarter is that YOU can declare whatever tools YOU want to install in YOUR script files. You should declare whatever terminal, editors/IDEs, SCM tools, etc. that you want for your config/setup.

The point of these scripts is to give you a starting point for an automated machine setup scripts which you can customize to your own needs.

Notice the word "automated" above: It is not intended that these scripts require you to answer 20 questions while the script runs

That would kinda defeats the point of these scripts which you run to automatically install your favorite tools and configure your environment as you prefer, while you go and enjoy a beverage of your choice.

WSLUser commented 4 years ago

This was why I wanted to stick with MS only software. It's an optional script that could be run for anyone wanting those products. Winget can be used for other terminal applications.