commit b516817
chld
·
2026-02-07 02:43:52 +0000 UTC
parent 9f0d57e
actually err handle in finding packages
3 files changed,
+14,
-6
+6,
-3
1@@ -11,21 +11,24 @@ import (
2 find a package in the ports tree
3 */
4
5-func FindPkg(pkg string) string {
6+func FindPkg(pkg string) (string, bool) {
7 var dtrdir string
8 dtrdir = os.Getenv("DTR_DIR")
9+ var bool bool = false
10
11 filepath.WalkDir(dtrdir, func(path string, d fs.DirEntry, err error) error {
12 if err != nil {
13- return err
14+ return err // this dont do shit
15+ bool = false
16 }
17
18 if d.IsDir() && strings.Contains(path, pkg) {
19 pkg = path
20+ bool = true
21 return fs.SkipDir // dont go deeper; we found the package
22 }
23 return nil
24 })
25
26- return pkg
27+ return pkg, bool
28 }
M
main.go
+2,
-2
1@@ -99,8 +99,8 @@ func main() {
2 }
3 dgre.VC("DTR_DIR")
4 for i := range len(pkgs) {
5- pkg := dgr.FindPkg(pkgs[i])
6- if pkg == "" {
7+ pkg, b := dgr.FindPkg(pkgs[i])
8+ if !b {
9 dgr.Die("could not find package", pkgs[i], 0)
10 } else {
11 fmt.Println(pkg)
+6,
-1
1@@ -12,8 +12,13 @@ func Build(pkg string, do string) {
2 var makefile string = "ndmake.sh"
3 dgr.Msg(do+"ing", pkg)
4
5+ pk, b := dgr.FindPkg(pkg)
6+ if !b {
7+ dgr.Die("couldnt find package", pkg, 1)
8+ }
9+
10 in, out := os.Stdin, os.Stdout
11- cmd := exec.Command("sh", filepath.Join(dgr.FindPkg(pkg), makefile), do)
12+ cmd := exec.Command("sh", filepath.Join(pk, makefile), do)
13 cmd.Stdin, cmd.Stdout = in, out // asign stdin andS stout to cmd
14 cmd.Stderr = os.Stderr // and stderr, i guess
15