wavetermdev/waveterm · error
GetDistro not implemented on this system
Error message
GetDistro not implemented on this system
What it means
Stub error: GetDistro has no implementation on Unix systems. Distro enumeration is Windows-only; on other platforms the function returns this not-implemented error.
Source
Thrown at pkg/wsl/wsl-unix.go:78
func (c *WslCmd) SetStdin(stdin io.Reader) {
c.Stdin = stdin
}
func (c *WslCmd) SetStdout(stdout io.Writer) {
c.Stdout = stdout
}
func (c *WslCmd) SetStderr(stderr io.Writer) {
c.Stderr = stderr
}
func GetDistroCmd(ctx context.Context, wslDistroName string, cmd string) (*WslCmd, error) {
return nil, fmt.Errorf("GetDistroCmd not implemented on this system")
}
func GetDistro(ctx context.Context, wslDistroName WslName) (*Distro, error) {
return nil, fmt.Errorf("GetDistro not implemented on this system")
}
View on GitHub (pinned to a4447c1563)
Solutions
- Guard WSL connection setup with a runtime.GOOS == "windows" check
- Remove or migrate WSL connections when running on Unix hosts
- Use SSH-based remote connections for cross-platform remotes
Example fix
// before
d, err := wsl.GetDistro(ctx, name)
// after
if runtime.GOOS != "windows" {
return errors.New("WSL connections are only supported on Windows")
}
d, err := wsl.GetDistro(ctx, name) Defensive patterns
Strategy: fallback
Validate before calling
if runtime.GOOS != "windows" {
return errors.New("WSL distro lookup requires Windows")
} Try / catch
distro, err := wsl.GetDistro(ctx, wslName)
if err != nil {
return fmt.Errorf("cannot connect: WSL only supported on Windows: %w", err)
} Prevention
- Do not create WSL-type connections on Unix hosts
- Migrate WSL connection configs to SSH when the host OS changes
When it happens
Trigger: Calling wsl.GetDistro (e.g. from connectInternal when establishing a WSL connection) on a Linux or macOS build.
Common situations: Connection attempts to WSL remote connections from Unix machines; shared connection code not platform-gated.
Related errors
- RegisteredDistros not implemented on this system
- DefaultDistro not implemented on this system
- GetDistroCmd not implemented on this system
- not connected: %s
- wsl connection not found: %s
AI-assisted analysis of wavetermdev/waveterm@a4447c1563 (2026-09-01).
Data as JSON: /api/errors/8a7fefcde98e3369.
Report an issue: GitHub.