summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md16
-rw-r--r--doGui.go18
2 files changed, 22 insertions, 12 deletions
diff --git a/README.md b/README.md
index af4e270..915c72a 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,9 @@
forge is a GUI front end for 'git' designed with the
intent of simplifying federated git development.
-FORGE NEVER DOES ANYTHING BUT EXEC's 'git'
+## Install:
+
+* go install go.wit.com/apps/forge@latest
## Theory
@@ -20,6 +22,10 @@ FORGE NEVER DOES ANYTHING BUT EXEC's 'git'
b) A "devel" branch that is published
c) a "user" branch that can be local only to the developer
+## Development Goals
+
+* have a GUI that also works on the command line
+
## Notes
This can be used to maintain git repositories
@@ -31,14 +37,6 @@ expiremental work on federated git
* uses a GUI or the console(console display needs work)
* always wrap around 'git' -- it basically just types 'git' commands really fast
-## Development Goals
-
-* have a GUI that also works on the command line
-
-## Install:
-
-* go install go.wit.com/apps/forge@latest
-
## building from sources
```
diff --git a/doGui.go b/doGui.go
index 1bc8660..579903f 100644
--- a/doGui.go
+++ b/doGui.go
@@ -11,6 +11,7 @@ import (
"time"
"go.wit.com/gui"
+ "go.wit.com/lib/fhelp"
"go.wit.com/lib/gadgets"
"go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/gitpb"
@@ -75,9 +76,20 @@ func doGui() {
me.myGui = gui.New()
me.myGui.InitEmbed(resources)
me.myGui.SetAppDefaultPlugin(me.forge.Config.DefaultGui) // sets the default GUI plugin to use
- me.myGui.Default()
+ if pname, err := me.myGui.Default(); err != nil {
+ if !fhelp.BuildPlugin("gocui") {
+ log.Info("You can't run the forge GUI since the plugins did not build", pname)
+ okExit("")
+ } else {
+ if err := me.myGui.LoadToolkitNew("gocui"); err != nil {
+ log.Info("The plugins built, but still failed to load", pname)
+ badExit(err)
+ }
+ log.Info("The plugins built and loaded!", pname)
+ }
+ }
- mainWindow := gadgets.NewGenericWindow("Forge: (this kinda works sometimes)", "Current Settings")
+ mainWindow := gadgets.NewGenericWindow("Forge: A federated git development tool by WIT.COM", "Current Settings")
mainWindow.Custom = func() {
log.Warn("MAIN WINDOW CLOSE")
now := time.Now()
@@ -87,7 +99,7 @@ func doGui() {
me.forge.ConfigSave()
}
log.Printf("rill repos.Reload() took (%s)\n", shell.FormatDuration(time.Since(now)))
- os.Exit(0)
+ okExit("")
}
drawWindow(mainWindow)