From 9699a413120988fa757bf54c89957916db15dbc1 Mon Sep 17 00:00:00 2001 From: HudaHajira Date: Thu, 25 Jun 2026 17:10:25 -0500 Subject: [PATCH 1/2] fix(auth): suppress browser output during login --- cmd/auth/login/login.go | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/cmd/auth/login/login.go b/cmd/auth/login/login.go index ad3070e..4385daa 100644 --- a/cmd/auth/login/login.go +++ b/cmd/auth/login/login.go @@ -4,6 +4,7 @@ import ( "bufio" "errors" "fmt" + "io" "os" "strings" "time" @@ -81,6 +82,15 @@ func loginWithWeb(hostname string) (string, error) { _, err := reader.ReadString('\n') if err == nil { // User pressed Enter, open browser + oldStdout := browser.Stdout + oldStderr := browser.Stderr + browser.Stdout = io.Discard + browser.Stderr = io.Discard + defer func() { + browser.Stdout = oldStdout + browser.Stderr = oldStderr + }() + if err := browser.OpenURL(loginURL); err != nil { // Don't fail if browser can't be opened, just warn logger.Warning("Failed to open browser automatically") @@ -328,11 +338,11 @@ func loginMain(cmd *cobra.Command, opts *LoginCmdOpts) error { } else if apiServerInfo != nil { // Convert api.ServerInfo to config.ServerInfo serverInfo := &config.ServerInfo{ - Version: apiServerInfo.Version, - SupporterStatusValid: apiServerInfo.SupporterStatusValid, - Build: apiServerInfo.Build, - EnterpriseLicenseValid: apiServerInfo.EnterpriseLicenseValid, - EnterpriseLicenseType: apiServerInfo.EnterpriseLicenseType, + Version: apiServerInfo.Version, + SupporterStatusValid: apiServerInfo.SupporterStatusValid, + Build: apiServerInfo.Build, + EnterpriseLicenseValid: apiServerInfo.EnterpriseLicenseValid, + EnterpriseLicenseType: apiServerInfo.EnterpriseLicenseType, } // Update account with server info account := accountStore.Accounts[user.UserID] From ba26b0c5c8857dc5009c741833c0e8ab08b093b3 Mon Sep 17 00:00:00 2001 From: HudaHajira Date: Mon, 29 Jun 2026 11:36:43 -0500 Subject: [PATCH 2/2] fix(auth): suppress browser output during login --- cmd/auth/login/login.go | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/cmd/auth/login/login.go b/cmd/auth/login/login.go index 4385daa..42f012e 100644 --- a/cmd/auth/login/login.go +++ b/cmd/auth/login/login.go @@ -34,6 +34,21 @@ func getDeviceName() string { return hostname } +func openBrowserQuietly(url string) error { + stdout := browser.Stdout + stderr := browser.Stderr + + browser.Stdout = io.Discard + browser.Stderr = io.Discard + + defer func() { + browser.Stdout = stdout + browser.Stderr = stderr + }() + + return browser.OpenURL(url) +} + func loginWithWeb(hostname string) (string, error) { // Build base URL for login (use hostname as-is, StartDeviceWebAuth will add /api/v1) baseURL := hostname @@ -91,7 +106,7 @@ func loginWithWeb(hostname string) (string, error) { browser.Stderr = oldStderr }() - if err := browser.OpenURL(loginURL); err != nil { + if err := openBrowserQuietly(loginURL); err != nil { // Don't fail if browser can't be opened, just warn logger.Warning("Failed to open browser automatically") logger.Info("Please manually visit: %s", baseLoginURL)