Remove Go plugins

This commit is contained in:
ayn2op 2023-01-08 23:27:18 +05:30
parent 6ae88a6dcf
commit fb2a6dc0f0
2 changed files with 0 additions and 67 deletions

View file

@ -13,7 +13,6 @@ var (
config *Config
discordState *State
plugins = make(map[string]*Plugin)
app = tview.NewApplication()
flex = tview.NewFlex()
@ -31,11 +30,6 @@ func main() {
flag.Parse()
var err error
err = loadPlugins()
if err != nil {
log.Fatal(err)
}
config, err = newConfig()
if err != nil {
log.Fatal(err)

View file

@ -1,61 +0,0 @@
package main
import (
"log"
"os"
"path/filepath"
"plugin"
)
type Plugin struct {
*plugin.Plugin
}
func newPlugin(path string) (*Plugin, error) {
p, err := plugin.Open(path)
if err != nil {
return nil, err
}
return &Plugin{Plugin: p}, nil
}
func (p *Plugin) Name() string {
s, _ := p.Lookup("Name")
return *(s).(*string)
}
func loadPlugins() error {
path, err := os.UserConfigDir()
if err != nil {
log.Fatal(err)
}
path = filepath.Join(path, name, "plugins")
err = os.MkdirAll(path, os.ModePerm)
if err != nil {
return err
}
entries, err := os.ReadDir(path)
if err != nil {
return err
}
for _, entry := range entries {
if entry.IsDir() {
continue
}
if filepath.Ext(entry.Name()) == ".so" {
p, err := newPlugin(filepath.Join(path, entry.Name()))
if err != nil {
return err
}
plugins[p.Name()] = p
}
}
return nil
}