Initial commit
This commit is contained in:
74
desktop/framework/windows/start/index.go
Normal file
74
desktop/framework/windows/start/index.go
Normal file
@@ -0,0 +1,74 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file index.go
|
||||
* @author MakerYang
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
package StartWindows
|
||||
|
||||
import (
|
||||
"cnc/framework/config"
|
||||
"context"
|
||||
"os"
|
||||
"runtime"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type Api struct {
|
||||
ctx context.Context
|
||||
}
|
||||
|
||||
type ReturnResponse struct {
|
||||
Code int `json:"code"`
|
||||
Data interface{} `json:"data"`
|
||||
Msg string `json:"msg"`
|
||||
}
|
||||
|
||||
func Init() *Api {
|
||||
return &Api{}
|
||||
}
|
||||
|
||||
func (start *Api) Startup(ctx context.Context) {
|
||||
start.ctx = ctx
|
||||
}
|
||||
|
||||
func (start *Api) Shutdown(ctx context.Context) {
|
||||
|
||||
}
|
||||
|
||||
func (start *Api) GetPlatform() string {
|
||||
platform := ""
|
||||
switch runtime.GOOS {
|
||||
case "windows":
|
||||
platform = "Windows"
|
||||
case "darwin":
|
||||
platform = "Darwin"
|
||||
case "linux":
|
||||
platform = "Linux"
|
||||
content, err := os.ReadFile("/etc/os-release")
|
||||
if err == nil {
|
||||
lines := strings.Split(string(content), "\n")
|
||||
for _, line := range lines {
|
||||
if strings.HasPrefix(line, "ID=") {
|
||||
switch {
|
||||
case strings.Contains(line, "ubuntu"):
|
||||
platform = "Ubuntu"
|
||||
case strings.Contains(line, "debian"):
|
||||
platform = "Debian"
|
||||
default:
|
||||
platform = "Linux"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
default:
|
||||
platform = "-"
|
||||
}
|
||||
|
||||
return platform
|
||||
}
|
||||
|
||||
func (start *Api) GetVersion() []string {
|
||||
return []string{Config.Get.Info.ProductName, Config.Get.Info.ProductVersion}
|
||||
}
|
||||
Reference in New Issue
Block a user