commit 2654f6c
chld
·
2026-02-06 05:11:51 +0000 UTC
parent 5034ef5
sync, etc
1 files changed,
+29,
-1
M
main.go
M
main.go
+29,
-1
1@@ -6,10 +6,19 @@ import (
2 "git.sr.ht/~chld/dgr/extra"
3 "git.sr.ht/~chld/dgr/pkg"
4 "os"
5+ "os/exec"
6 "path/filepath"
7 )
8
9 func help() {
10+ // ports management
11+ fmt.Printf("%s ", filepath.Base(os.Args[0]))
12+ fmt.Printf("[s]\n")
13+ // package mamagement
14+ fmt.Printf("%s ", filepath.Base(os.Args[0]))
15+ fmt.Printf("[m|mi|mic]\n")
16+
17+ // package management without compiling
18 fmt.Printf("%s ", filepath.Base(os.Args[0]))
19 fmt.Printf("[sp]")
20
21@@ -22,9 +31,28 @@ func main() {
22 return
23 }
24
25- switch os.Args[1] {
26+ act := os.Args[1]
27+ pkgs := os.Args[2:] // TODO: support multiple packages
28+
29+ switch act {
30+ case "s":
31+ in, out := os.Stdin, os.Stdout
32+ cmd := exec.Command("git", "clone", "--depth", "1", "https://codeberg.org/derivelinux/ports", "/ports")
33+ cmd.Stdin, cmd.Stdout = in, out // asign stdin and stdout to cmd
34+ cmd.Stderr = os.Stderr // and stderr, i guess
35+
36+ if err := cmd.Run(); err != nil {
37+ dgr.Die("failed to clone", "codeberg.org/derivelinux/ports", 1)
38+ }
39+
40 case "m":
41+ dgrb.Build(pkgs[0])
42+ case "mi":
43+ dgrb.Build(os.Args[2])
44+ // TODO: install
45+ case "mic":
46 dgrb.Build(os.Args[2])
47+ // TODO: install and clean
48 case "sp":
49 dgre.VC("DTR_DIR")
50 fmt.Println(dgr.FindPkg(os.Args[2]))