commit 4063e40
chld
·
2026-09-12 17:10:59 +0000 UTC
parent 4e83bc1
search through DULL_PATH for packages
M
main.scm
+1,
-1
1@@ -74,7 +74,7 @@
2 (del-pkg pkg)
3 )
4 ((#\f)
5- (format #t "~a" (find-pkg pkg))
6+ (format #t "~a~%" (find-pkg pkg))
7 )
8 ((#\m)
9 (pm-pkg pkg)
M
pkg.scm
+21,
-16
1@@ -2,27 +2,32 @@
2 ;; everything will be stubbed todat because i need to implement
3 ;; package finding and shit
4
5-(define (find-pkg p)
6- (let (
7- (d DULL_PATH)
8- (r #f)
9- )
10- (ftw d
11- (lambda (f s l)
12- (when (and
13- (eq? (stat:type s) 'directory)
14- (string=? (basename f) p)
15- )
16- (set! r f))
17- #t))
18- r
19+(define (find-pkg pkg)
20+ (let pp (
21+ (p (string-split DULL_PATH #\:))
22+ (n 0)
23+ )
24+ (unless (= n (length p))
25+ (let (
26+ (d (list-ref p n))
27+ (r #f)
28+ )
29+ (ftw d
30+ (lambda (f s l)
31+ (when (and (eq? (stat:type s) 'directory)
32+ (string=? (basename f) pkg))
33+ (set! r f))
34+ #t))
35+ (if r r
36+ (pp p (+ n 1)))
37+ ))
38 )
39 )
40
41 (define (ver-pkg pkg)
42 (let i (
43 (e
44- (call-with-input-file (format #f "~a/info" (string-drop-right (find-pkg pkg) 1))
45+ (call-with-input-file (format #f "~a/info" (find-pkg pkg))
46 (lambda (f) (read-string f))
47 )
48 ))
49@@ -154,7 +159,7 @@
50 (define (build-pkg pkg)
51 (pmsg pkg "beginning build")
52 (system*
53- "sh" (format #f "~a/ndmake.sh" (string-drop-right (find-pkg pkg) 1))
54+ "sh" (format #f "~a/ndmake.sh" (find-pkg pkg))
55 "make"
56 )
57 )