| package dbus |
| |
| import ( |
| "errors" |
| "fmt" |
| "os" |
| "os/exec" |
| ) |
| |
| const defaultSystemBusAddress = "unix:path=/opt/local/var/run/dbus/system_bus_socket" |
| |
| func getSessionBusPlatformAddress() (string, error) { |
| cmd := exec.Command("launchctl", "getenv", "DBUS_LAUNCHD_SESSION_BUS_SOCKET") |
| b, err := cmd.CombinedOutput() |
| |
| if err != nil { |
| return "", err |
| } |
| |
| if len(b) == 0 { |
| return "", errors.New("dbus: couldn't determine address of session bus") |
| } |
| |
| return "unix:path=" + string(b[:len(b)-1]), nil |
| } |
| |
| func getSystemBusPlatformAddress() string { |
| address := os.Getenv("DBUS_LAUNCHD_SESSION_BUS_SOCKET") |
| if address != "" { |
| return fmt.Sprintf("unix:path=%s", address) |
| } |
| return defaultSystemBusAddress |
| } |
| |
| func tryDiscoverDbusSessionBusAddress() string { |
| return "" |
| } |