diff options
author | Danny Milosavljevic <dannym@scratchpost.org> | 2019-01-10 20:17:34 +0100 |
---|---|---|
committer | Danny Milosavljevic <dannym@scratchpost.org> | 2019-01-10 21:29:53 +0100 |
commit | ffcd282702fedf90c80b5b2a05a5e2f473cf4c9c (patch) | |
tree | 7d395291a50d54f2a015a82ca829fbaf78dea060 /gnu/packages/docker.scm | |
parent | 6a6e5d84dacb4b127120ec150c52549a2bc111d6 (diff) | |
download | guix-ffcd282702fedf90c80b5b2a05a5e2f473cf4c9c.tar guix-ffcd282702fedf90c80b5b2a05a5e2f473cf4c9c.tar.gz |
gnu: docker: Booby-trap "Command" and "LookPath" calls.
* gnu/packages/docker.scm (docker)[arguments]<#:phases>[patch-paths]:
Booby-trap "Command" and "LookPath" calls.
Diffstat (limited to 'gnu/packages/docker.scm')
-rw-r--r-- | gnu/packages/docker.scm | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm index ab1a575393..23695a0c06 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -363,9 +363,24 @@ network attachments.") ;; invokes other programs we don't know about and thus don't ;; substitute. (substitute* source-files - (("LookPath\\(\"zfs\"\\)") "LooxPath(\"zfs\")") - (("LookPath\\(\"") "Guix_doesnt_want_LookPath\\(\"") ; )) - (("LooxPath") "LookPath"))) + ;; Search for Java in PATH. + (("\\<exec\\.Command\\(\"java\"") ; ) + "xxec.Command(\"java\"") ; ) + ;; Search for AUFS in PATH (mainline Linux doesn't support it). + (("\\<exec\\.Command\\(\"auplink\"") ; ) + "xxec.Command(\"auplink\"") ; ) + ;; Fail on other unsubstituted commands. + (("\\<exec\\.Command\\(\"([a-zA-Z0-9][a-zA-Z0-9_-]*)\"" + _ executable) ; ) + (string-append "exec.Guix_doesnt_want_Command(\"" + executable "\"")) ;) + (("\\<xxec\\.Command") + "exec.Command") + ;; Search for ZFS in PATH. + (("\\<LookPath\\(\"zfs\"\\)") "LooxPath(\"zfs\")") + ;; Fail on other unsubstituted LookPaths. + (("\\<LookPath\\(\"") "Guix_doesnt_want_LookPath\\(\"") ; )) + (("\\<LooxPath") "LookPath"))) #t)) (add-after 'patch-paths 'delete-failing-tests (lambda _ |