mirror of
https://github.com/ipfs/kubo.git
synced 2025-09-10 09:52:20 +08:00
34 lines
682 B
Go
34 lines
682 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"runtime"
|
|
"strings"
|
|
"syscall"
|
|
)
|
|
|
|
func init() {
|
|
// this is a hack, but until we need to do it another way, this works.
|
|
platformFuseChecks = darwinFuseCheckVersion
|
|
}
|
|
|
|
func darwinFuseCheckVersion() error {
|
|
// on OSX, check FUSE version.
|
|
if runtime.GOOS != "darwin" {
|
|
return nil
|
|
}
|
|
|
|
ov, err := syscall.Sysctl("osxfuse.version.number")
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
if strings.HasPrefix(ov, "2.7.") || strings.HasPrefix(ov, "2.8.") {
|
|
return nil
|
|
}
|
|
|
|
return fmt.Errorf("osxfuse version %s not supported.\n%s\n%s", ov,
|
|
"Older versions of osxfuse have kernel panic bugs; please upgrade!",
|
|
"https://github.com/jbenet/go-ipfs/issues/177")
|
|
}
|