From 3ed04d626d53bc033f7233c7f35b66a8ad53813c Mon Sep 17 00:00:00 2001 From: B4D_US3R Date: Mon, 5 May 2025 23:31:56 +0500 Subject: [PATCH 1/2] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=20systemd=20=D0=B8=20Makefile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 ++- Makefile | 15 +++++++++++++++ miku/main.go | 23 ++++++++++++++++++----- 3 files changed, 35 insertions(+), 6 deletions(-) create mode 100644 Makefile diff --git a/.gitignore b/.gitignore index 9fa1115..10d64c1 100644 --- a/.gitignore +++ b/.gitignore @@ -27,4 +27,5 @@ go.work.sum testconfig.json go.sum -main \ No newline at end of file +main +output \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..662a52d --- /dev/null +++ b/Makefile @@ -0,0 +1,15 @@ +miku : users/go.sum supporter/go.sum miku/go.sum miku/main + mkdir output + mv miku/main output/miku + +users/go.sum : + cd users && go mod tidy && cd ../ +supporter/go.sum : + cd supporter && go mod tidy && cd ../ +miku/go.sum : + cd miku && go mod tidy && cd ../ +miku/main : + go build -C miku + +clean : + rm -rf output users/go.sum supporter/go.sum miku/go.sum miku/main \ No newline at end of file diff --git a/miku/main.go b/miku/main.go index 9b28c7d..442deae 100644 --- a/miku/main.go +++ b/miku/main.go @@ -7,7 +7,9 @@ import ( "fmt" "log" "os" + "os/exec" "path/filepath" + "runtime" "miku/supporter" @@ -49,7 +51,7 @@ func main() { } fullpath, err := filepath.Abs(configPath) if err != nil { - return nil + return err } fmt.Println(fullpath) file, err := os.ReadFile(fullpath) @@ -75,11 +77,15 @@ func main() { } newJson, err := json.MarshalIndent(newConfig, "", "\t") if err != nil { - return nil + return err } fileToWrite.Write(newJson) fmt.Printf("Пользователь %s добавлен в конфиг %s\n", c.Args().First(), fullpath) fmt.Printf("Vless URL: %s\n", vlessUsers.VlessURL(c.Args().First(), domain)) + sysd := exec.Command("systemctl", "reload", "sing-box") + if err := sysd.Run(); err != nil { + return err + } return nil }, }, @@ -132,10 +138,14 @@ func main() { } newJson, err := json.MarshalIndent(newConfig, "", "\t") if err != nil { - return nil + return err } fileToWrite.Write(newJson) fmt.Printf("Пользователь %s удален из конфига %s", c.Args().First(), fullpath) + sysd := exec.Command("systemctl", "reload", "sing-box") + if err := sysd.Run(); err != nil { + return err + } return nil }, }, @@ -159,7 +169,7 @@ func main() { } fullpath, err := filepath.Abs(configPath) if err != nil { - return nil + return err } fmt.Println(fullpath) file, err := os.ReadFile(fullpath) @@ -205,7 +215,7 @@ func main() { } fullpath, err := filepath.Abs(configPath) if err != nil { - return nil + return err } fmt.Println(fullpath) file, err := os.ReadFile(fullpath) @@ -223,6 +233,9 @@ func main() { }, }, } + if runtime.GOOS != "linux" { + log.Fatal(errors.New("Неподдерживаемая ОС")) + } if err := cmd.Run(context.Background(), os.Args); err != nil { log.Fatal(err) } From f4e93c5d314b3d9bbca32a2435647f34bda9786f Mon Sep 17 00:00:00 2001 From: B4D_US3R Date: Mon, 5 May 2025 23:32:37 +0500 Subject: [PATCH 2/2] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B2=20Makefile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 662a52d..edb5825 100644 --- a/Makefile +++ b/Makefile @@ -12,4 +12,5 @@ miku/main : go build -C miku clean : - rm -rf output users/go.sum supporter/go.sum miku/go.sum miku/main \ No newline at end of file + rm -rf output users/go.sum supporter/go.sum miku/go.sum miku/main +