summaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-11-05 01:41:44 -0600
committerJeff Carr <[email protected]>2024-11-05 01:41:44 -0600
commit067b28b7e71af12843d1b1a1968b63a37bc4ad86 (patch)
treea58e2b8dd642ca0290db6269c1ab54cda8fc7d8e /main.go
parent87b53978f0e3eddf1f2abaed6a7cb35776f49205 (diff)
updates for v0.22 gui changesv0.22.2
Diffstat (limited to 'main.go')
-rw-r--r--main.go35
1 files changed, 30 insertions, 5 deletions
diff --git a/main.go b/main.go
index e2b4249..bf88c2c 100644
--- a/main.go
+++ b/main.go
@@ -262,22 +262,47 @@ func New() *Node {
// try to load andlabs, if that doesn't work, fall back to the console
func (n *Node) Default() *Node {
+ var err error
if argGui.GuiPlugin != "" {
log.Log(WARN, "New.Default() try toolkit =", argGui.GuiPlugin)
- return n.LoadToolkit(argGui.GuiPlugin)
+ if n, err = n.LoadToolkit(argGui.GuiPlugin); err == nil {
+ return n
+ }
+ log.Log(WARN, "LoadToolkit() failed for =", argGui.GuiPlugin)
}
// if DISPLAY isn't set, return since gtk can't load
// TODO: figure out how to check what to do in macos and mswindows
if os.Getenv("DISPLAY") == "" {
- if n.LoadToolkit("gocui") == nil {
- log.Log(WARN, "New() failed to load gocui")
+ if n, err = n.LoadToolkit("gocui"); err == nil {
+ return n
}
+ log.Log(WARN, "LoadToolkit() failed to load gocui")
+ }
+ if n, err = n.LoadToolkit("andlabs"); err == nil {
+ return n
+ }
+ log.Log(WARN, "LoadToolkit() failed to load andlabs")
+
+ if n, err = n.LoadToolkit("gocui"); err == nil {
return n
}
- if n.LoadToolkit("andlabs") != nil {
+ log.Log(WARN, "LoadToolkit() failed to load gocui")
+
+ log.Log(WARN, "")
+ log.Log(WARN, "### Error ####")
+ log.Log(WARN, "The GUI golang plugins did not load.")
+ log.Log(WARN, "You will have to rebuild them")
+ log.Log(WARN, "go-clone go.wit.com/toolkits/<pick one>/")
+ log.Log(WARN, "TODO: try to rebuild them here")
+ log.Log(WARN, "TODO: falling back to STDIN interface")
+ log.Log(WARN, "### Error ####")
+ log.Log(WARN, "")
+ log.Sleep(7)
+
+ if n, err = n.LoadToolkit("nocui"); err == nil {
return n
}
- n.LoadToolkit("gocui")
+ log.Log(WARN, "LoadToolkit() failed to load nocui")
return n
}