ciccalab / SIMPLI

SIMPLI is a highly configurable pipeline for the analysis of multiplexed imaging data.
https://github.com/ciccalab/SIMPLI/wiki
Other
35 stars 5 forks source link

Support Singularity successor Apptainer (`Cannot enable more than one container engine -- Choose either one of: singularity, apptainer`) #8

Closed paulmenzel closed 1 year ago

paulmenzel commented 1 year ago

https://github.com/ciccalab/SIMPLI/blob/09e3bd432a247544d74154c90cf4bb46a2a32a08/nextflow.config#L1-L3

Apptainer is the successor of Singularity.

$ curl https://singularity.hpcng.org/
<!DOCTYPE html>
<html>             
    <head>
        <meta http-equiv="refresh" content="0; url='https://apptainer.org/index.html'" />
    </head>
    <body>
        <h2 style="text-align: center; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;">This page has been moved to our new domain! ( apptainer.org ). Please wait well we redirect you. </h2>
[…]

Nextflow supports a variety of container runtimes, including Apptainer. It’d be nice, if SIMPLI would support it too and not hardcode Singularity.

$ ./launch.sh run https://github.com/ciccalab/SIMPLI -profile test -with-apptainer /dev/shm/nextflow/singularity/containers/simpli_imaging-default-simpli_imctools_stardist-test.img
N E X T F L O W  ~  version 23.02.1-edge
Launching `https://github.com/ciccalab/SIMPLI` [condescending_dalembert] DSL2 - revision: 09e3bd432a [master]
Cannot enable more than one container engine -- Choose either one of: singularity, apptainer
MicheleBortol commented 1 year ago

Hi @paulmenzel,

Thank you for pointing this out it is a good suggestion. I updated the nextflow.config file to support both apptainer and singularity. See https://github.com/ciccalab/SIMPLI/commit/e9fc4f12dcb070b1761f3945229aa0c8dcf3bbc4 for details. To run the pipeline now you need to specify either apptainer or singularity as a profile. For instance:

Please let me know if this works for you.

Best wishes

Michele