* guix/build/python-build-system.scm (wrap): Use `wrap-language-program`. --- guix/build/python-build-system.scm | 36 ++++++++---------------------------- 1 file changed, 8 insertions(+), 28 deletions(-)
diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm index 9109fb4..8e3ea41 100644 --- a/guix/build/python-build-system.scm +++ b/guix/build/python-build-system.scm @@ -80,34 +80,14 @@ add-path)) (call-setuppy "install" params))) -(define* (wrap #:key inputs outputs #:allow-other-keys) - (define (list-of-files dir) - (map (cut string-append dir "/" <>) - (or (scandir dir (lambda (f) - (let ((s (stat (string-append dir "/" f)))) - (eq? 'regular (stat:type s))))) - '()))) - - (define bindirs - (append-map (match-lambda - ((_ . dir) - (list (string-append dir "/bin") - (string-append dir "/sbin")))) - outputs)) - - (let* ((out (assoc-ref outputs "out")) - (python (assoc-ref inputs "python")) - (var `("PYTHONPATH" prefix - ,(cons (string-append out "/lib/python" - (get-python-version python) - "/site-packages") - (search-path-as-string->list - (or (getenv "PYTHONPATH") "")))))) - (for-each (lambda (dir) - (let ((files (list-of-files dir))) - (for-each (cut wrap-program <> var) - files))) - bindirs))) +;; Use `wrap-language-program' to return an executable wrapper for python. +(define wrap + (wrap-language-programs + (lambda (inputs outputs) + (string-append (assoc-ref outputs "out") "/lib/python" + (get-python-version (assoc-ref inputs "python")) + "/site-packages")) + "PYTHONPATH")) (define* (rename-pth-file #:key name inputs outputs #:allow-other-keys) "Rename easy-install.pth to NAME.pth to avoid conflicts between packages -- 2.10.2