lilyp pushed a commit to branch master
in repository guix.
commit 5add4af6fcbb030b0146334d21810d4de18238fb
Author: Philip McGrath <[email protected]>
AuthorDate: Sat Jan 8 03:41:49 2022 -0500
guix: node-build-system: Add delete-lockfiles phase.
Guix does not use any of these lock files to determine the package versions
used during the build, so they only serve to cause problems.
* guix/build/node-build-system.scm (delete-lockfiles): New variable.
(%standard-phases): Add 'delete-lockfiles' after 'patch-dependencies'.
Signed-off-by: Liliana Marie Prikler <[email protected]>
---
guix/build/node-build-system.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/guix/build/node-build-system.scm b/guix/build/node-build-system.scm
index 70a367618e..2d7a3bdc67 100644
--- a/guix/build/node-build-system.scm
+++ b/guix/build/node-build-system.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2015 David Thompson <[email protected]>
;;; Copyright © 2016, 2020 Jelle Licht <[email protected]>
;;; Copyright © 2019, 2021 Timothy Sample <[email protected]>
+;;; Copyright © 2021 Philip McGrath <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -96,6 +97,17 @@
(write-json package-meta out))))
#t)
+(define* (delete-lockfiles #:key inputs #:allow-other-keys)
+ "Delete 'package-lock.json', 'yarn.lock', and 'npm-shrinkwrap.json', if they
+exist."
+ (for-each (lambda (pth)
+ (when (file-exists? pth)
+ (delete-file pth)))
+ '("package-lock.json"
+ "yarn.lock"
+ "npm-shrinkwrap.json"))
+ #t)
+
(define* (configure #:key outputs inputs #:allow-other-keys)
(let ((npm (string-append (assoc-ref inputs "node") "/bin/npm")))
(invoke npm "--offline" "--ignore-scripts" "install")
@@ -146,6 +158,7 @@
(modify-phases gnu:%standard-phases
(add-after 'unpack 'set-home set-home)
(add-before 'configure 'patch-dependencies patch-dependencies)
+ (add-after 'patch-dependencies 'delete-lockfiles delete-lockfiles)
(replace 'configure configure)
(replace 'build build)
(replace 'check check)