mirror of
https://github.com/rclone/rclone.git
synced 2024-11-07 17:14:44 +01:00
3859fe2f52
Related to #5121 Note: OpenBSD is stub yet. This will be fixed after upstream PR gets resolved https://github.com/shirou/gopsutil/pull/993
35 lines
711 B
Go
35 lines
711 B
Go
// +build !openbsd,!windows
|
|
|
|
package buildinfo
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"github.com/shirou/gopsutil/v3/host"
|
|
)
|
|
|
|
// GetOSVersion returns OS version, kernel and bitness
|
|
func GetOSVersion() (osVersion, osKernel string) {
|
|
if platform, _, version, err := host.PlatformInformation(); err == nil && platform != "" {
|
|
osVersion = platform
|
|
if version != "" {
|
|
osVersion += " " + version
|
|
}
|
|
}
|
|
|
|
if version, err := host.KernelVersion(); err == nil && version != "" {
|
|
osKernel = version
|
|
}
|
|
|
|
if arch, err := host.KernelArch(); err == nil && arch != "" {
|
|
if strings.HasSuffix(arch, "64") && osVersion != "" {
|
|
osVersion += " (64 bit)"
|
|
}
|
|
if osKernel != "" {
|
|
osKernel += " (" + arch + ")"
|
|
}
|
|
}
|
|
|
|
return
|
|
}
|