summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-10-20 13:19:24 -0500
committerJeff Carr <[email protected]>2025-10-20 13:19:24 -0500
commit898592febc56eb1073525636666063396d85aca6 (patch)
tree507d33eefc9ba5d467c2c5ce829bdd13968f92e8
parent3246e9b1f7ba7b983ca536f06d1dbbb636d1ad5b (diff)
notsure
-rw-r--r--defaultBehavior.go4
-rw-r--r--doClean.go2
-rw-r--r--doConfig.go6
-rw-r--r--doGui.go15
-rw-r--r--doNewUser.go20
-rw-r--r--doNormal.go6
-rw-r--r--doPatch.go2
-rw-r--r--doPull.go2
-rw-r--r--doVerify.go3
-rw-r--r--main.go8
-rw-r--r--structs.go3
-rw-r--r--subCommand.go2
-rw-r--r--windowHowto.go5
13 files changed, 33 insertions, 45 deletions
diff --git a/defaultBehavior.go b/defaultBehavior.go
index 17c43b4..57e4dd6 100644
--- a/defaultBehavior.go
+++ b/defaultBehavior.go
@@ -12,7 +12,7 @@ import (
func doDefaultBehavior() (string, error) {
// DEFAULT BEHAVIOR CHANGES BETWEEN MODES
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL || me.forge.Config.Mode == forgepb.ForgeMode_USER {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL || me.forge.Mode == forgepb.ForgeMode_USER {
// PROBABLY YOU ARE WRITING CODE
// got to the end with nothing to do (?)
found := findWorkRepos()
@@ -24,7 +24,7 @@ func doDefaultBehavior() (string, error) {
return "repos with unsaved changes: (list them all with --show) " + footer, nil
}
- if me.forge.Config.Mode == forgepb.ForgeMode_MASTER {
+ if me.forge.Mode == forgepb.ForgeMode_MASTER {
// PROBABLY YOU ARE PUBLISHING / MERGING CODE
err := defaultBehaviorMaster()
if err != nil {
diff --git a/doClean.go b/doClean.go
index 13154ce..a4a7932 100644
--- a/doClean.go
+++ b/doClean.go
@@ -48,7 +48,7 @@ func doClean() (string, error) {
return s, err
}
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL {
s := fmt.Sprintf("Reset all (%d) git repos to the original state (non-destructive)?", me.forge.Repos.Len())
if !fhelp.QuestionUser(s) {
s, err = doModeMaster()
diff --git a/doConfig.go b/doConfig.go
index 615e777..bca2061 100644
--- a/doConfig.go
+++ b/doConfig.go
@@ -51,10 +51,8 @@ func doConfig() {
os.Exit(0)
}
- log.Info("config.PathLock =", me.forge.Config.PathLock)
-
- me.forge.Config.PrintTable()
- okExit("")
+ footer := me.forge.Config.PrintTable()
+ okExit(footer)
}
func deleteGoPath(f *forgepb.Forge, gopath string) bool {
diff --git a/doGui.go b/doGui.go
index da38135..608f4e5 100644
--- a/doGui.go
+++ b/doGui.go
@@ -11,6 +11,7 @@ import (
"time"
"go.wit.com/gui"
+ "go.wit.com/lib/config"
"go.wit.com/lib/gadgets"
"go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/gitpb"
@@ -25,26 +26,26 @@ func doGui() {
}
grid := win.Group.RawGrid()
- if me.forge.Config.GetPathLock() {
+ if config.True("PathLock") {
me.goSrcPwd = gadgets.NewOneLiner(grid, "Working Directory")
- me.goSrcPwd.SetText(me.forge.Config.ReposDir)
+ me.goSrcPwd.SetText(config.Get("ReposDir"))
} else {
me.goSrcEdit = gadgets.NewBasicEntry(grid, "Working Directory")
- me.goSrcEdit.SetText(me.forge.Config.ReposDir)
+ me.goSrcEdit.SetText(config.Get("ReposDir"))
me.goSrcEdit.Custom = func() {
log.Info("updating text to", me.goSrcEdit.String())
}
}
- lockpath := grid.NewCheckbox("Lock").SetChecked(me.forge.Config.PathLock)
+ lockpath := grid.NewCheckbox("Lock").SetChecked(config.True("PathLock"))
lockpath.Custom = func() {
if lockpath.IsChecked() {
log.Info("lock working directory")
- me.forge.Config.PathLock = true
+ config.Set("PathLock", "true")
} else {
log.Info("unlock working directory")
- me.forge.Config.PathLock = false
+ config.Set("PathLock", "false")
}
- me.forge.Config.ConfigSave()
+ me.forge.ConfigSave()
okExit("you must restart forge after changing the Path Lock")
}
diff --git a/doNewUser.go b/doNewUser.go
index b9f9511..b9fe56a 100644
--- a/doNewUser.go
+++ b/doNewUser.go
@@ -9,7 +9,6 @@ import (
"errors"
"go.wit.com/lib/fhelp"
- "go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/forgepb"
"go.wit.com/log"
)
@@ -18,7 +17,7 @@ func doNewUser() (string, error) {
var s string
var err error
- if me.forge.Config.Mode == forgepb.ForgeMode_UNKNOWN {
+ if me.forge.Mode == forgepb.ForgeMode_UNKNOWN {
dumpDebug()
log.Info("---- ----")
log.Info("---- Welcome to forge!!! ----")
@@ -32,21 +31,8 @@ func doNewUser() (string, error) {
// log.Info("MODE NOT UNKNOWN")
}
- // TODO: verify config values are valid here
- if me.forge.Config.ReposPB == "" {
- log.Info("broken config. load default config here")
- me.forge.Config, err = forgepb.MakeDefaultConfig()
- }
-
- // TODO: make checks that make sense here and then exit from NEWUSER mode
- if shell.Exists(me.forge.Config.ReposPB) {
- log.Info("looks like you might not be a new user")
- log.Info("a repos file already exists at", me.forge.Config.ReposPB)
- // not a new user
- return s, err
- }
-
- if me.forge.Config.Mode != forgepb.ForgeMode_NEWUSER {
+ if me.forge.Mode != forgepb.ForgeMode_NEWUSER {
+ // you aren't a new user anymore
return s, err
}
diff --git a/doNormal.go b/doNormal.go
index 537b751..38505de 100644
--- a/doNormal.go
+++ b/doNormal.go
@@ -156,11 +156,11 @@ func doNormalStatus() bool {
// this also verifies that
func checkNormalRepoState(repo *gitpb.Repo) error {
var err error
- tmp := filepath.Join(me.forge.Config.ReposDir, repo.GetNamespace())
+ tmp := filepath.Join(config.Get("ReposDir"), repo.GetNamespace())
if tmp != repo.FullPath {
log.Infof("%s != %s\n", repo.FullPath, tmp)
- if strings.HasPrefix(repo.FullPath, me.forge.Config.ReposDir) {
- tmp = strings.TrimPrefix(repo.FullPath, me.forge.Config.ReposDir)
+ if strings.HasPrefix(repo.FullPath, config.Get("ReposDir")) {
+ tmp = strings.TrimPrefix(repo.FullPath, config.Get("ReposDir"))
tmp = strings.Trim(tmp, "/")
repo.Namespace = tmp
err = log.Errorf("namespace set to filepath")
diff --git a/doPatch.go b/doPatch.go
index fe32dfb..da27410 100644
--- a/doPatch.go
+++ b/doPatch.go
@@ -21,7 +21,7 @@ import (
)
func isPatchingSafe() bool {
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL {
return true
}
log.Info("This patch command is not safe to run now")
diff --git a/doPull.go b/doPull.go
index 7e74812..4274abf 100644
--- a/doPull.go
+++ b/doPull.go
@@ -89,7 +89,7 @@ func doPull() (string, error) {
}
// below this, you must not be in 'normal' mode
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL {
s = "you must check out the devel or master branches"
return s, errors.New("wrong mode " + me.forge.GetMode())
}
diff --git a/doVerify.go b/doVerify.go
index 8b7811f..5790fde 100644
--- a/doVerify.go
+++ b/doVerify.go
@@ -7,6 +7,7 @@ import (
"errors"
"path/filepath"
+ "go.wit.com/lib/config"
"go.wit.com/lib/protobuf/argvpb"
"go.wit.com/lib/protobuf/gitpb"
"go.wit.com/log"
@@ -29,7 +30,7 @@ func doVerify() (string, error) {
func cleanNamespace(r *gitpb.Repo) string {
// check for GO repos
- gowork := me.forge.Config.ReposDir
+ gowork := config.Get("ReposDir")
// todo: detect if using go.work file
newpath, err := filepath.Rel(gowork, r.FullPath)
// log.Info("cleanNamespace()", newpath, gowork, "is gowork. fullpath:", r.FullPath)
diff --git a/main.go b/main.go
index 74ce647..fb7cc67 100644
--- a/main.go
+++ b/main.go
@@ -44,16 +44,16 @@ func doInit() *forgepb.Forge {
func doCoreChecks() {
me.forge.ScanRepoDir() // looks for new dirs, checks existing repos for changes
- if me.forge.Config.Mode != forgepb.ForgeMode_NORMAL {
- me.forge.Config.DumpPB()
+ if me.forge.Mode != forgepb.ForgeMode_NORMAL {
+ forgepb.DumpENV()
}
- if me.forge.Config.Mode == forgepb.ForgeMode_DEVEL {
+ if me.forge.Mode == forgepb.ForgeMode_DEVEL {
dumpDebug()
}
// if you are in "normal" mode, always run normal every time to catch accidental errors
// for example, if you accidentally changed branches from your user branch
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL {
// show what is still normal and what is not
doNormalStatus()
}
diff --git a/structs.go b/structs.go
index 8f05ff8..b2b6b9b 100644
--- a/structs.go
+++ b/structs.go
@@ -6,6 +6,7 @@ package main
import (
"go.wit.com/dev/alexflint/arg"
"go.wit.com/gui"
+ "go.wit.com/lib/config"
"go.wit.com/lib/fhelp"
"go.wit.com/lib/gadgets"
"go.wit.com/lib/protobuf/argvpb"
@@ -26,7 +27,7 @@ func (b *mainType) Enable() {
// returns the server to connect to
func myServer() string {
- return me.forge.GetForgeURL()
+ return config.Get("ForgeURL")
}
// this app's variables
diff --git a/subCommand.go b/subCommand.go
index 5c59227..556fd57 100644
--- a/subCommand.go
+++ b/subCommand.go
@@ -50,7 +50,7 @@ func doSubcommand() (string, error) {
}
if argv.Normal != nil {
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if me.forge.Mode == forgepb.ForgeMode_NORMAL {
s, err = doNormalAll()
} else {
// attempt to switch into Normal mode
diff --git a/windowHowto.go b/windowHowto.go
index a556449..f85d00b 100644
--- a/windowHowto.go
+++ b/windowHowto.go
@@ -6,6 +6,7 @@ package main
// An app to submit patches for the 30 GO GUI repos
import (
+ "go.wit.com/lib/config"
"go.wit.com/lib/gadgets"
)
@@ -36,10 +37,10 @@ func makeHowtoWin() *gadgets.GenericWindow {
grid.NewLabel("") // a stupid way to add padding
grid.NextRow()
- // howtoWin.Group.NewLabel("Working dir: " + me.forge.Config.ReposDir)
+ // howtoWin.Group.NewLabel("Working dir: " + config.Get("ReposDir"))
grid = howtoWin.Group.RawGrid()
- grid.NewButton("Download into "+me.forge.Config.ReposDir, func() {
+ grid.NewButton("Download into "+config.Get("ReposDir"), func() {
howtoWin.Disable()
defer howtoWin.Enable()
doRebuildForge()