42 lines
734 B
Go
42 lines
734 B
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/godbus/dbus/v5"
|
|
)
|
|
|
|
func newSystemBusConn(ctx context.Context) (*dbus.Conn, error) {
|
|
// Connect to dbus session bus
|
|
conn, err := dbus.SystemBusPrivate(dbus.WithContext(ctx))
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
err = conn.Auth(nil)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
err = conn.Hello()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return conn, nil
|
|
}
|
|
|
|
func newSessionBusConn(ctx context.Context) (*dbus.Conn, error) {
|
|
// Connect to dbus session bus
|
|
conn, err := dbus.SessionBusPrivate(dbus.WithContext(ctx))
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
err = conn.Auth(nil)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
err = conn.Hello()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return conn, nil
|
|
}
|