From a328f6c91f3d24508ff37338e6a68ba82aaa0141 Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Fri, 29 Dec 2023 22:23:03 +0100 Subject: nonguix: binary: Cleanup when an unknown binary extension is detected. The binary-unpack phase suffered from a problem for unknown binary file extensions, see: !336 (comment 1709385147) . This patch fixes the incorrect behavior by effectively restoring the state of the directory tree before the phase. * nonguix/build/binary-build-system.scm (binary-unpack): Restore the environment as it was before this phase. * nongnu/packages/clojure.scm (clj-kondo)[arguments]: No longer delete 'binary-unpack phase. * nongnu/packages/game-development.scm (libsteam)[arguments]: dito. Signed-off-by: Jonathan Brielmaier --- nongnu/packages/clojure.scm | 1 - nongnu/packages/game-development.scm | 1 - nonguix/build/binary-build-system.scm | 7 ++++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nongnu/packages/clojure.scm b/nongnu/packages/clojure.scm index 25170ed..234fafd 100644 --- a/nongnu/packages/clojure.scm +++ b/nongnu/packages/clojure.scm @@ -101,7 +101,6 @@ lets you focus on your code.") (list #:patchelf-plan `'(("clj-kondo" ("gcc" "zlib"))) #:install-plan `'(("clj-kondo" "/bin/")) #:phases #~(modify-phases %standard-phases - (delete 'binary-unpack) (add-after 'unpack 'chmod (lambda _ (chmod "clj-kondo" #o755)))))) diff --git a/nongnu/packages/game-development.scm b/nongnu/packages/game-development.scm index 0e28127..566cea2 100644 --- a/nongnu/packages/game-development.scm +++ b/nongnu/packages/game-development.scm @@ -144,7 +144,6 @@ development should opt for GLSL rather than Cg.") (copy-file (assoc-ref inputs "source") "libsteam_api.so") (chmod "libsteam_api.so" #o644) #t)) - (delete 'binary-unpack) (add-after 'install 'symlink (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) diff --git a/nonguix/build/binary-build-system.scm b/nonguix/build/binary-build-system.scm index 147aa18..e5bbc48 100644 --- a/nonguix/build/binary-build-system.scm +++ b/nonguix/build/binary-build-system.scm @@ -155,7 +155,12 @@ The inputs are optional when the file is an executable." (chdir "binary") (match binary-file ((? deb-file?) (unpack-deb binary-file)) - (_ (format #t "Unknown file type: ~a~%" (basename binary-file))))))) + (_ + (begin + (format #t "Unknown file type: ~a~%" (basename binary-file)) + ;; Cleanup after ourselves + (chdir "..") + (rmdir "binary"))))))) (define %standard-phases ;; Everything is as with the GNU Build System except for the `binary-unpack', -- cgit v1.2.3