Skip to content

docs: add Windows (WSL2) setup section to README (#6185)#6187

Merged
clubanderson merged 1 commit intomainfrom
docs/6185-windows-setup
Apr 10, 2026
Merged

docs: add Windows (WSL2) setup section to README (#6185)#6187
clubanderson merged 1 commit intomainfrom
docs/6185-windows-setup

Conversation

@clubanderson
Copy link
Copy Markdown
Collaborator

Summary

Adds a Windows (WSL2) subsection to the README's Install section so Windows users have a clear, supported path. Tracked by #6185 (reported by @rishi-jat via the in-app feedback flow).

The supported approach is WSL2 + Ubuntu — the install scripts and kc-agent are POSIX shell + Go and run unchanged inside WSL2. Native PowerShell/CMD is not supported because porting the bash install scripts to PowerShell would double the maintenance surface for a path that WSL2 makes redundant.

The new section walks through:

  • One-time wsl --install -d Ubuntu from PowerShell
  • apt prerequisites (golang-go, curl, git)
  • The same curl | bash install command as macOS/Linux
  • Building kc-agent from source (no Homebrew formula on WSL)
  • A note that http://localhost:8080 just works from the Windows browser since WSL2 forwards localhost

Closes #6185.

The current install instructions assume a POSIX shell, which leaves
Windows users without guidance. Add a Windows (WSL2) subsection to the
Install section that:

- States the supported path is WSL2 + Ubuntu (PowerShell/CMD is not
  supported because the install scripts and kc-agent depend on a POSIX
  shell + Go toolchain).
- Gives the one-time `wsl --install` step.
- Lists the apt prerequisites (golang-go, curl, git).
- Reuses the same `curl | bash` install command as macOS/Linux.
- Builds kc-agent from source since there is no Homebrew formula on WSL.
- Notes that http://localhost:8080 just works from the Windows browser
  because WSL2 forwards localhost.

Closes #6185.

Signed-off-by: Andrew Anderson <[email protected]>
Copilot AI review requested due to automatic review settings April 10, 2026 17:38
@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Apr 10, 2026
@kubestellar-prow
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign eeshaansa for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@netlify
Copy link
Copy Markdown

netlify Bot commented Apr 10, 2026

Deploy Preview for kubestellarconsole canceled.

Name Link
🔨 Latest commit ee6fd65
🔍 Latest deploy log https://app.netlify.com/projects/kubestellarconsole/deploys/69d935afe52bfb000827e375

@clubanderson clubanderson added the ai-generated Pull request generated by AI label Apr 10, 2026
@github-actions
Copy link
Copy Markdown
Contributor

👋 Hey @clubanderson — thanks for opening this PR!

🤖 This project is developed exclusively using AI coding assistants.

Please do not attempt to code anything for this project manually.
All contributions should be authored using an AI coding tool such as:

This ensures consistency in code style, architecture patterns, test coverage,
and commit quality across the entire codebase.


This is an automated message.

@kubestellar-prow kubestellar-prow Bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Apr 10, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Windows onboarding guidance by documenting a supported WSL2 (Ubuntu) installation path in the root README, aligning Windows setup with the existing POSIX shell-based install flow.

Changes:

  • Adds a Windows (WSL2) subsection under Install with PowerShell + WSL steps and Ubuntu shell commands.
  • Documents prerequisite packages and a source-build path for kc-agent under WSL.
  • Notes that localhost:8080 can be opened from the Windows browser due to WSL2 localhost forwarding.

Comment thread README.md
Comment on lines +40 to +41
# Prerequisites (Go 1.24+, curl, git)
sudo apt-get update && sudo apt-get install -y golang-go curl git
Copy link

Copilot AI Apr 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The WSL prerequisites say "Go 1.24+" and then install golang-go via apt-get, but the repo go.mod declares go 1.25.0. Also, Ubuntu’s golang-go package often lags behind current Go releases, so following this may still leave users below the required version. Please update the stated Go version to match go.mod and adjust the instructions (e.g., point to installing Go 1.25+ from go.dev / a PPA, or explicitly note reliance on Go’s toolchain auto-download if that’s intended).

Copilot uses AI. Check for mistakes.
Comment thread README.md
Comment on lines +40 to +44
# Prerequisites (Go 1.24+, curl, git)
sudo apt-get update && sudo apt-get install -y golang-go curl git

# Same install command as macOS / Linux
curl -sSL https://raw.githubusercontent.com/kubestellar/console/main/start.sh | bash
Copy link

Copilot AI Apr 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this WSL section, Go and git are listed as prerequisites before running start.sh, but start.sh is documented to require only curl (it downloads prebuilt binaries). Consider splitting the instructions so the quick-start path only requires curl, and reserve the Go/git prerequisites for the optional “build kc-agent from source” steps to avoid unnecessarily blocking WSL users.

Copilot uses AI. Check for mistakes.
@clubanderson clubanderson merged commit 711826e into main Apr 10, 2026
38 of 44 checks passed
@kubestellar-prow kubestellar-prow Bot deleted the docs/6185-windows-setup branch April 10, 2026 17:44
@github-actions
Copy link
Copy Markdown
Contributor

Thank you for your contribution! Your PR has been merged.

Check out what's new:

Stay connected: Slack #kubestellar-dev | Multi-Cluster Survey

@github-actions
Copy link
Copy Markdown
Contributor

Post-merge build verification passed

Both Go and frontend builds compiled successfully against merge commit 711826e76dcef14b19211daf16b793e274aaab68.

clubanderson added a commit that referenced this pull request Apr 10, 2026
Two Copilot review nits on the WSL section added in #6187:

1. start.sh only needs curl — it downloads pre-built binaries.
   The previous WSL block listed Go and git as prereqs BEFORE running
   start.sh, which falsely implied users had to install a Go toolchain
   to use the quick-start path. Split the section so curl is the only
   apt prereq for start.sh, and Go + git are called out under a
   separate 'Building kc-agent from source' subsection.

2. Bump Go version from 1.24+ to 1.25+ to match what go.mod actually
   declares (`go 1.25.0`). Also point users at the longsleep PPA / the
   official Go installer instead of `golang-go` because the Ubuntu
   package usually lags the current Go release.

Closes #6192.

Signed-off-by: Andrew Anderson <[email protected]>
clubanderson added a commit that referenced this pull request Apr 10, 2026
Two Copilot review nits on the WSL section added in #6187:

1. start.sh only needs curl — it downloads pre-built binaries.
   The previous WSL block listed Go and git as prereqs BEFORE running
   start.sh, which falsely implied users had to install a Go toolchain
   to use the quick-start path. Split the section so curl is the only
   apt prereq for start.sh, and Go + git are called out under a
   separate 'Building kc-agent from source' subsection.

2. Bump Go version from 1.24+ to 1.25+ to match what go.mod actually
   declares (`go 1.25.0`). Also point users at the longsleep PPA / the
   official Go installer instead of `golang-go` because the Ubuntu
   package usually lags the current Go release.

Closes #6192.

Signed-off-by: Andrew Anderson <[email protected]>
clubanderson added a commit that referenced this pull request Apr 10, 2026
…6185 follow-up)

@rishi-jat reported (#6185) that the README install instructions had no
Windows path. That was fixed in #6187/#6193/#6194/#6197/#6207, but the
README is only one surface — the in-app modals that show up when users
first try to set up kc-agent had no Windows option either. This PR adds
parity between the README and both in-app modals.

AgentSetupDialog.tsx (the welcome modal that auto-shows when no agent is
connected and the user hasn't dismissed it):

  - New windowsBuildCommand constant: `apt-get install
    software-properties-common` -> longsleep PPA -> `golang-1.25` ->
    git clone -> `mkdir -p bin` -> `go build`. Single line so users
    can paste it once into their WSL shell.
  - New Windows (WSL2) collapsible section parallel to the existing
    Linux one. Same Eye/click pattern, same Copy button + 'Copied'
    feedback (UI_FEEDBACK_TIMEOUT_MS), shares the existing toast timer
    cleanup pattern via copiedWindowsTimerRef.
  - Linux build command also updated: bumped to include 'mkdir -p bin'
    so a fresh clone doesn't fail (#6196 caught this for the README).

InClusterAgentDialog.tsx (the in-cluster connect dialog):

  - Same WINDOWS_WSL_INSTALL_CMD constant + new Windows (WSL2)
    collapsible section parallel to the build-from-source one. New
    COPY_KEY_WSL=102 in the existing key range.
  - Linux build-from-source command updated similarly: 'mkdir -p bin'
    added, label changed from 'Go 1.24+' to 'Go 1.25+' to match
    go.mod.

Both Windows sections include:
  - The one-time PowerShell prerequisite (`wsl --install -d Ubuntu`)
    described inline so users don't have to leave the modal
  - A note that http://localhost:8080 just works in the Windows
    browser because WSL2 forwards localhost
  - A pointer back to the README's step-by-step version

This closes the in-app gap rishi-jat originally reported. The README +
in-app modals are now consistent for the four supported install paths:
macOS Homebrew, Linux build-from-source, Windows WSL2 build, in-cluster
deploy.

Verified: `npm run build` clean.

Refs #6185.

Signed-off-by: Andrew Anderson <[email protected]>
clubanderson added a commit that referenced this pull request Apr 10, 2026
…6185 follow-up) (#6238)

* feat(setup): add Windows (WSL2) section to in-app agent setup modals (#6185 follow-up)

@rishi-jat reported (#6185) that the README install instructions had no
Windows path. That was fixed in #6187/#6193/#6194/#6197/#6207, but the
README is only one surface — the in-app modals that show up when users
first try to set up kc-agent had no Windows option either. This PR adds
parity between the README and both in-app modals.

AgentSetupDialog.tsx (the welcome modal that auto-shows when no agent is
connected and the user hasn't dismissed it):

  - New windowsBuildCommand constant: `apt-get install
    software-properties-common` -> longsleep PPA -> `golang-1.25` ->
    git clone -> `mkdir -p bin` -> `go build`. Single line so users
    can paste it once into their WSL shell.
  - New Windows (WSL2) collapsible section parallel to the existing
    Linux one. Same Eye/click pattern, same Copy button + 'Copied'
    feedback (UI_FEEDBACK_TIMEOUT_MS), shares the existing toast timer
    cleanup pattern via copiedWindowsTimerRef.
  - Linux build command also updated: bumped to include 'mkdir -p bin'
    so a fresh clone doesn't fail (#6196 caught this for the README).

InClusterAgentDialog.tsx (the in-cluster connect dialog):

  - Same WINDOWS_WSL_INSTALL_CMD constant + new Windows (WSL2)
    collapsible section parallel to the build-from-source one. New
    COPY_KEY_WSL=102 in the existing key range.
  - Linux build-from-source command updated similarly: 'mkdir -p bin'
    added, label changed from 'Go 1.24+' to 'Go 1.25+' to match
    go.mod.

Both Windows sections include:
  - The one-time PowerShell prerequisite (`wsl --install -d Ubuntu`)
    described inline so users don't have to leave the modal
  - A note that http://localhost:8080 just works in the Windows
    browser because WSL2 forwards localhost
  - A pointer back to the README's step-by-step version

This closes the in-app gap rishi-jat originally reported. The README +
in-app modals are now consistent for the four supported install paths:
macOS Homebrew, Linux build-from-source, Windows WSL2 build, in-cluster
deploy.

Verified: `npm run build` clean.

Refs #6185.

Signed-off-by: Andrew Anderson <[email protected]>

* test(ui-ux): bump EXPECTED_RAW_HEX_COUNT 282→284 for #6185 ref

Signed-off-by: Andrew Anderson <[email protected]>

---------

Signed-off-by: Andrew Anderson <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-generated Pull request generated by AI dco-signoff: yes Indicates the PR's author has signed the DCO. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows setup not documented (kc-agent + local dev)

2 participants