Files
opencloud/vendor/github.com/gookit/goutil/sysutil/sysutil_linux.go
dependabot[bot] 89a7d171ee build(deps): bump github.com/gookit/config/v2 from 2.2.6 to 2.2.7
Bumps [github.com/gookit/config/v2](https://github.com/gookit/config) from 2.2.6 to 2.2.7.
- [Release notes](https://github.com/gookit/config/releases)
- [Commits](https://github.com/gookit/config/compare/v2.2.6...v2.2.7)

---
updated-dependencies:
- dependency-name: github.com/gookit/config/v2
  dependency-version: 2.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-15 14:15:33 +00:00

54 lines
1.2 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package sysutil
import (
"os/exec"
"strings"
)
// OsName system name. like runtime.GOOS. allow: linux, windows, darwin
const OsName = Linux
// IsWin system. linux windows darwin
func IsWin() bool { return false }
// IsWindows system. linux windows darwin
func IsWindows() bool { return false }
// IsMac system
func IsMac() bool { return false }
// IsDarwin system
func IsDarwin() bool { return false }
// IsLinux system
func IsLinux() bool { return true }
// There are multiple possible providers to open a browser on linux
// One of them is xdg-open, another is x-www-browser, then there's www-browser, etc.
// Look for one that exists and run it
var openBins = []string{"xdg-open", "x-www-browser", "www-browser"}
// OpenURL Open file or browser URL
//
// Mac
//
// open 'https://github.com/inhere'
//
// Linux:
//
// xdg-open URL
// x-www-browser 'https://github.com/inhere'
//
// Windows:
//
// cmd /c start https://github.com/inhere
func OpenURL(URL string) error {
for _, bin := range openBins {
if _, err := exec.LookPath(bin); err == nil {
return exec.Command(bin, URL).Run()
}
}
return &exec.Error{Name: strings.Join(openBins, ","), Err: exec.ErrNotFound}
}