PowerShell / PowerShell/Win32-OpenSSH

Windows build scripts should rely on vcvars or use vswhere to find Visual Studio

Open
#1,791 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
8.3k
Forks
819
PR merge metrics
No merged PRs in 30d

Description

Even with the old MSI-based installs used by VS2015 and older, the user could choose the path where to install VS. In VS2017 a new, faster engine is used that not only allows the path to be customized, but multiple features with different feature sets to be installed. These features can even be queried.

While working on the MSI-based install for OpenSSH, I found onboarding this project very tedious as I have VS2019 installed. I did make some quick but appropriate hacks to openssh-build.ps1 and related modules, but a better fix is to use vswhere, as found in an examples here:

Alternatively, the Developer Command Prompt (formerly Visual Studio Command Prompt) could be used if you query for a couple environment variables to be set, like VS*COMNTOOLS.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with openssh-build.ps1 and its related modules, then compare the Visual Studio discovery examples in the linked vswhere documentation. Determine whether the build should consume vcvars environment variables or use vswhere to locate the required installation; done means the Windows build can onboard with customized Visual Studio installs.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.