func (info *Info) serviceMain() error { if *forkFlag { isParent, err := daemon.Fork() if err != nil { return err } if isParent { os.Exit(0) } *daemonizeFlag = true } err := daemon.Init() if err != nil { return err } err = systemdUpdateStatus("\n") if err == nil { info.systemd = true } if *daemonizeFlag || info.systemd { err := daemon.Daemonize() if err != nil { return err } } if *pidfileFlag != "" { info.pidFileName = *pidfileFlag err = info.openPIDFile() if err != nil { return err } defer info.closePIDFile() } return info.runInteractively() }
func (info *Info) serviceMain() error { err := daemon.Init() if err != nil { return err } err = systemdUpdateStatus("\n") if err == nil { info.systemd = true } if *pidfileFlag != "" { info.pidFileName = *pidfileFlag err = info.openPIDFile() if err != nil { return err } defer info.closePIDFile() } return info.runInteractively() }