aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2024-03-19 15:01:38 +0100
committerRicardo Wurmus <rekado@elephly.net>2024-03-19 15:01:38 +0100
commit26aa8fc87e73d2eff1640d52f6ab0ab0729fc5a2 (patch)
treeb08ee8cc21ffa9ae716eb08dccaa49648e1b8fd7
parent7286a4569dc7773bc07b0e4fef96ebe7e2af179f (diff)
downloadguix-26aa8fc87e73d2eff1640d52f6ab0ab0729fc5a2.tar
guix-26aa8fc87e73d2eff1640d52f6ab0ab0729fc5a2.tar.gz
gnu: snakemake-7: Patch tibanna command line.
* gnu/packages/python-xyz.scm (snakemake-7)[arguments]: Remove store reference in tibanna command line. Change-Id: I339f4c3133a0e687723a53277818749a8e5fc97a
-rw-r--r--gnu/packages/python-xyz.scm17
1 files changed, 16 insertions, 1 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index dc211ff782..f29bb4e1bb 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12963,7 +12963,22 @@ Python style, together with a fast and comfortable execution environment.")
"")
(("\"-m snakemake\"")
(string-append "\"" #$output
- "/bin/snakemake" "\"")))))
+ "/bin/snakemake" "\""))
+ ;; The snakemake command produced by format_job_exec contains
+ ;; references to /gnu/store. Prior to patching above that's
+ ;; just a reference to Python; after patching it's a reference
+ ;; to the snakemake executable.
+ ;;
+ ;; In Tibanna execution mode Snakemake arranges for a certain
+ ;; Docker image to be deployed to AWS. It then passes its own
+ ;; command line to Tibanna. This is misguided because it only
+ ;; ever works if the local Snakemake command was run inside
+ ;; the same Docker image. In the case of using Guix this is
+ ;; never correct, so we need to replace the store reference.
+ (("tibanna_args.command = command")
+ (string-append
+ "tibanna_args.command = command.replace('"
+ #$output "/bin/snakemake', 'python3 -m snakemake')")))))
(add-after 'unpack 'patch-version
(lambda _
(substitute* "setup.py"