blob: 90f20134c996e34f34d1304bc5f07902edb96c96 (
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
41
42
43
44
45
|
// Copyright 2017-2025 WIT.COM Inc. All rights reserved.
// Use of this source code is governed by the GPL 3.0
package main
import (
"sync"
"go.wit.com/lib/debian"
"go.wit.com/lib/fhelp"
"go.wit.com/lib/protobuf/argvpb"
"go.wit.com/lib/protobuf/forgepb"
"go.wit.com/lib/protobuf/zoopb"
)
var me *mainType
// this app's variables
type mainType struct {
once sync.Once // one-time initialized data
sh *argvpb.Argv // more experiments for bash handling
forge *forgepb.Forge // your customized repo preferences and settings
machine *zoopb.Machine // your customized repo preferences and settings
homedir string // where the user homedir is
myGui *fhelp.GuiPrep // for initializing the GUI toolkits
}
func initForge() {
if me.forge == nil {
var err error
me.forge, err = forgepb.Init()
if err != nil {
me.sh.BadExit("this tool requires forge", err)
}
me.forge.ScanRepoDir()
me.forge.Config.DumpENV()
}
initMachine()
}
func initMachine() {
if me.machine == nil {
me.machine = debian.InitMachine()
}
}
|