mbakke pushed a commit to branch master
in repository guix.
commit 84c577d7a7046c2d675d674c301ae1f4684a80bd
Author: Marius Bakke <[email protected]>
AuthorDate: Mon Nov 28 05:02:05 2022 +0100
gnu: QtWebEngine: Simplify code to remove third-party files.
* gnu/packages/qt.scm (remove-third-party-files): Simplify some procedures.
---
gnu/packages/qt.scm | 20 +++++++-------------
1 file changed, 7 insertions(+), 13 deletions(-)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 31acacff80..0f5e1c3530 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2284,8 +2284,7 @@ using the Enchant spell-checking library.")
#~(begin
(define preserved-club
;; Prefix exceptions with ./ for comparison with ftw.
- (map (lambda (member)
- (string-append "./" member))
+ (map (cut string-append "./" <>)
preserved-third-party-files))
(define protected (make-regexp "\\.(gn|gyp)i?$"))
(define (empty? dir)
@@ -2298,17 +2297,12 @@ using the Enchant spell-checking library.")
(define (parents child)
;; Return all parent directories of CHILD up to and including
;; the closest "third_party".
- (let* ((dirs (match (string-split child #\/)
- ((dirs ... last) dirs)))
- (closest (list-index (lambda (dir)
- (string=? "third_party" dir))
- (reverse dirs)))
- (delim (- (length dirs) closest)))
- (fold (lambda (dir prev)
- (cons (string-append (car prev) "/" dir)
- prev))
- (list (string-join (list-head dirs delim) "/"))
- (list-tail dirs delim))))
+ (let loop ((parent (dirname child))
+ (parents '()))
+ (if (string=? "third_party" (basename parent))
+ (cons parent parents)
+ (loop (dirname parent)
+ (cons parent parents)))))
(define (remove-loudly file)
(format #t "deleting ~a...~%" file)
(force-output)