diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6150a8798f..6e1e289e90 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6032,7 +6032,19 @@ (define-public snakemake (build-system python-build-system) (arguments ;; TODO: Package missing test dependencies. - '(#:tests? #f)) + '(#:tests? #f + #:phases + (modify-phases %standard-phases + ;; For cluster execution Snakemake will call Python. Since there is + ;; no suitable PYTHONPATH set, cluster execution will fail. We fix + ;; this by calling the snakemake wrapper instead. + (add-after 'unpack 'call-wrapper-not-wrapped-snakemake + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "snakemake/executors.py" + (("\\{sys.executable\\} -m snakemake") + (string-append (assoc-ref outputs "out") + "/bin/snakemake"))) + #t))))) (propagated-inputs `(("python-wrapt" ,python-wrapt) ("python-requests" ,python-requests)))