// Init runs the Keybase services func Init(homeDir string, logFile string, runModeStr string, accessGroupOverride bool) error { fmt.Println("Go: Initializing") fmt.Printf("Go: Using log: %s\n", logFile) kbCtx = libkb.G kbCtx.Init() usage := libkb.Usage{ Config: true, API: true, KbKeyring: true, } runMode, err := libkb.StringToRunMode(runModeStr) if err != nil { return err } config := libkb.AppConfig{ HomeDir: homeDir, LogFile: logFile, RunMode: runMode, Debug: true, LocalRPCDebug: "Acsvip", SecurityAccessGroupOverride: accessGroupOverride, } err = kbCtx.Configure(config, usage) if err != nil { return err } svc := service.NewService(kbCtx, false) svc.StartLoopbackServer() kbCtx.SetService() kbCtx.SetUIRouter(service.NewUIRouter(kbCtx)) serviceLog := config.GetLogFile() logs := libkb.Logs{ Service: serviceLog, } logSendContext = libkb.LogSendContext{ Contextified: libkb.NewContextified(kbCtx), Logs: logs, } // FIXME (MBG): This is causing RPC responses to sometimes not be recieved // on iOS. Repro by hooking up getExtendedStatus to a button in the iOS // client and watching JS logs. Disabling until we have a root cause / fix. kbfsParams := libkbfs.DefaultInitParams(kbCtx) kbfsConfig, err = libkbfs.Init(kbCtx, kbfsParams, serviceCn{}, func() {}, kbCtx.Log) if err != nil { return err } return Reset() }
// ServerURI should match run mode environment. func Init(homeDir string, runModeStr string, serverURI string, accessGroupOverride bool) { startOnce.Do(func() { g := libkb.G g.Init() usage := libkb.Usage{ Config: true, API: true, KbKeyring: true, } runMode, err := libkb.StringToRunMode(runModeStr) if err != nil { fmt.Println("Error decoding run mode", err, runModeStr) } config := libkb.AppConfig{HomeDir: homeDir, RunMode: runMode, Debug: true, LocalRPCDebug: "Acsvip", ServerURI: serverURI, SecurityAccessGroupOverride: accessGroupOverride} err = libkb.G.Configure(config, usage) if err != nil { panic(err) } (service.NewService(g, false)).StartLoopbackServer() Reset() }) }
func (p CommandLine) GetRunMode() (libkb.RunMode, error) { return libkb.StringToRunMode(p.GetGString("run-mode")) }