aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--browser_linux.go18
1 files changed, 13 insertions, 5 deletions
diff --git a/browser_linux.go b/browser_linux.go
index ccd1685..4d958e7 100644
--- a/browser_linux.go
+++ b/browser_linux.go
@@ -1,14 +1,22 @@
package browser
import (
+ "os"
"os/exec"
)
func openBrowser(url string) error {
- sensibleBrowser, err := exec.LookPath("sensible-browser")
- if err != nil {
- // sensible-browser not availble, try xdg-open
- return exec.Command("xdg-open", url).Run()
+ // try sensible-browser first
+ if err := runCmd("sensible-browser", url); err == nil {
+ return nil
}
- return exec.Command(sensibleBrowser, url).Run()
+ // sensible-browser not availble, try xdg-open
+ return runCmd("xdg-open", url)
+}
+
+func runCmd(prog string, args ...string) error {
+ cmd := exec.Command(prog, args...)
+ cmd.Stdout = os.Stdout
+ cmd.Stderr = os.Stderr
+ return cmd.Run()
}