From 1b9311c5e65a9483d98b7709fcba9909f379a02c Mon Sep 17 00:00:00 2001 From: 1-6 Date: Tue, 25 Jul 2023 09:54:02 +0800 Subject: [PATCH] x --- core/grpc_download.go | 56 ++++++++++++++++++++++--------------------- core/grpc_plugins.go | 2 +- 2 files changed, 30 insertions(+), 28 deletions(-) diff --git a/core/grpc_download.go b/core/grpc_download.go index 1b86f15..21e1af8 100644 --- a/core/grpc_download.go +++ b/core/grpc_download.go @@ -36,32 +36,34 @@ var languages = []Language{ func init() { - for _, item := range languages { - if !(item.Os == runtime.GOOS && item.Arch == runtime.GOARCH) { - continue + go func() { + for _, item := range languages { + if !(item.Os == runtime.GOOS && item.Arch == runtime.GOARCH) { + continue + } + func() { + dir := utils.ExecPath + "/language/" + item.Name + data, _ := os.ReadFile(dir + "/version") + if string(data) == item.Version { + return + } + os.MkdirAll(utils.ExecPath+"/language/"+item.Name, 0755) + resp, err := http.Get(item.Links[0]) + if err != nil { + return + } + defer resp.Body.Close() + f, err := os.OpenFile(dir+"/"+item.Name, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0755) + if err != nil { + return + } + defer f.Close() + _, err = io.Copy(f, resp.Body) + if err != nil { + return + } + os.WriteFile(dir+"/version", []byte(item.Version), 0755) + }() } - func() { - dir := utils.ExecPath + "/language/" + item.Name - data, _ := os.ReadFile(dir + "/version") - if string(data) == item.Version { - return - } - os.MkdirAll(utils.ExecPath+"/language/"+item.Name, 0755) - resp, err := http.Get(item.Links[0]) - if err != nil { - return - } - defer resp.Body.Close() - f, err := os.OpenFile(dir+"/"+item.Name, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0755) - if err != nil { - return - } - defer f.Close() - _, err = io.Copy(f, resp.Body) - if err != nil { - return - } - os.WriteFile(dir+"/version", []byte(item.Version), 0755) - }() - } + }() } diff --git a/core/grpc_plugins.go b/core/grpc_plugins.go index f9ac3cd..4f095f5 100644 --- a/core/grpc_plugins.go +++ b/core/grpc_plugins.go @@ -31,7 +31,7 @@ func initNodePlugins() { plugins := []string{root} os.Mkdir(root, 0755) filepath.Walk(root, func(path string, info os.FileInfo, err error) error { - if !strings.HasPrefix(path, "/Users/a1-6/Code/sillyplus/plugins/") { + if !strings.HasPrefix(path, utils.ExecPath+"/plugins/") { return nil } files := strings.Split(strings.Replace(path, root+"/", "", 1), "/")