How to add new tools
Guiding principles
Section titled “Guiding principles”To decide if a tool should be packaged in a Neurocontainer or installed in the Neurodesktop container, we are currently following these guiding principles:
1) Neurodesk is a platform, not a package manager: We don’t distribute tools that can be easily installed via standard package managers.
2) Multiple versions of tools: Neurodesk supports the use of multiple versions of a tool in parallel via Lmod. If a tool doesn’t support this, follow this instruction to package it in Neurocontainers.
3) Inter-container tool linking: Neurodesk is designed to facilitate the linking of tools from different containers, such as workflow managers like nipype or nextflow. Therefore, if a tool is needed to coordinate various container-tools, create an issue to have it installed directly in the Neurodesktop container.
Examples:
| Tool | Easy install | Coordinates containers | Small in size | Latest version is OK | Useful to most users | Conclusion |
|---|---|---|---|---|---|---|
| git | yes | yes | yes | yes | yes | neurodesktop |
| lmod | no | yes | yes | yes | yes | neurodesktop |
| itksnap | yes | no | yes | yes | yes | neurocontainer |
| convert3D | yes | no | yes | no | no | neurocontainer |
| fsl | no | no | no | no | no | neurocontainer |
Adding new tools to Neurocontainers
Section titled “Adding new tools to Neurocontainers”Follow these instructions to add new tools.