aboutsummaryrefslogtreecommitdiffhomepage
path: root/cli.go
blob: a6a55e0a5d4ae55cd4f0d112549551dc3f21517a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package main

import (
	"flag"

	"git.ophivana.moe/cat/fortify/internal/app"
)

var (
	userName   string
	dbusConfig string
	dbusID     string
	mpris      bool

	mustWayland bool
	mustX       bool
	mustDBus    bool
	mustPulse   bool

	flagVerbose  bool
	printVersion bool
)

func init() {
	flag.StringVar(&userName, "u", "chronos", "Passwd name of user to run as")
	flag.StringVar(&dbusConfig, "dbus-config", "builtin", "Path to D-Bus proxy config file, or \"builtin\" for defaults")
	flag.StringVar(&dbusID, "dbus-id", "", "D-Bus ID of application, leave empty to disable own paths, has no effect if custom config is available")
	flag.BoolVar(&mpris, "mpris", false, "Allow owning MPRIS D-Bus path, has no effect if custom config is available")

	flag.BoolVar(&mustWayland, "wayland", false, "Share Wayland socket")
	flag.BoolVar(&mustX, "X", false, "Share X11 socket and allow connection")
	flag.BoolVar(&mustDBus, "dbus", false, "Proxy D-Bus connection")
	flag.BoolVar(&mustPulse, "pulse", false, "Share PulseAudio socket and cookie")

	flag.BoolVar(&app.LaunchOptions[app.LaunchMethodSudo], "sudo", false, "Use 'sudo' to switch user")
	flag.BoolVar(&app.LaunchOptions[app.LaunchMethodMachineCtl], "machinectl", true, "Use 'machinectl' to switch user")

	flag.BoolVar(&flagVerbose, "v", false, "Verbose output")
	flag.BoolVar(&printVersion, "V", false, "Print version")
}