Repository navigation
Dependancy Management
To ensure reproducibility and simplify dependency management across platforms, Conduit uses the containerization features built into Snakemake. Each Snakemake rule runs inside a dedicated container, ensuring consistent environments for all steps.
All Conduit containers are hosted on Docker Hub: https://hub.docker.com/u/baynec2
Conduit is designed and tested on Linux. When running on Linux, use Apptainer (formerly Singularity) for container execution.
- Snakemake installed and accessible
- Apptainer (≥1.1.0) available on the system
Enable containers with the --use-apptainer flag:
snakemake --configfile experiments/your_experiment/config/snakemake.yaml \
--use-apptainer --cores 8HPC note: Most HPC systems provide an unprivileged build of Apptainer/Singularity (no root required). This build can run and cache containers from Docker Hub but cannot build or modify containers locally. Contact your system administrator for details.
On personal Linux systems with root access, the root-enabled version of Apptainer allows building new containers directly from Docker images.
macOS is not officially supported. Apptainer does not run natively on macOS.
If you need to run Conduit on macOS for development purposes, containers can be executed via Docker Desktop. Install Docker Desktop and run without the --use-apptainer flag:
snakemake --configfile experiments/your_experiment/config/snakemake.yaml --cores 8Note that production use cases (large reference databases, full metaproteomics datasets) are not practical on macOS.
Windows is not recommended. It may work without containers for light testing but is not a supported configuration.
If needed, containers can be executed via Docker Desktop for Windows. Install Docker Desktop and run without the --use-apptainer flag:
snakemake --configfile experiments/your_experiment/config/snakemake.yaml --cores 8