cli / go-gh

A Go module for interacting with gh and the GitHub API from the command line.
https://pkg.go.dev/github.com/cli/go-gh/v2
MIT License
322 stars 45 forks source link

Issue while using from remote connection #122

Closed leodahal4 closed 11 months ago

leodahal4 commented 11 months ago

As I am utilizing this module for using browser on my cli, I tried to generate error using the cli using ssh connection, but no any error is thrown and the browser also cannot start sitting on CLI.

Actual:

Press Enter to continue.. 
[22660:22660:0710/170853.558426:ERROR:ozone_platform_x11.cc(239)] Missing X server or $DISPLAY
[22660:22660:0710/170853.558460:ERROR:env.cc(255)] The platform failed to initialize.  Exiting.
Err: <nil>

Expected: error to be not nil in value.

If anyone wants to watch out the code, then I will dump it here.

leodahal4 commented 11 months ago

Seems like,

https://github.com/cli/browser/blob/419c10c56bd56293c8f898ef5c6be291eb099120/browser_linux.go#L8

here,

    providers := []string{"xdg-open", "x-www-browser", "www-browser", "wslview"}

provider is found but, XDG_SESSION_TYPE is tty, while watching the os env list

I can send a PR for this if accepted as a BUG.

samcoe commented 11 months ago

@leodahal4 Thanks for writing in with your issue. This sounds more like an incorrect local environment variable configuration than an issue with the package. What would your PR to fix this bug include?

leodahal4 commented 11 months ago

I have tried to check the os env variables and if the session's env contains XDG_SESSION_TYPE as tty then we can fail returning error as cannot execute the browser, and its working fine on mine CLI as without browser user can visit a predefined webpage. But seems like I should send the PR to https://github.com/cli/browser, right?

vilmibm commented 11 months ago

This was failing for me recently and it was a WSL bug. Does invoking wslview manually work for you?

leodahal4 commented 11 months ago

no unfortunately as I am on arch Linux, and my environment doesnot include wslview

samcoe commented 11 months ago

@leodahal4 Thanks for following up. We have discussed this a bit further and we feel that checking XDG_SESSION_TYPE environment variable is a bit of an overstep and does not necessarily indicate that invoking xdg-open will fail. I am going to close this as won't fix as I don't see anything we can do from our side. Please let me know if you feel otherwise.