galaxyproject / galaxyproject/galaxy

Auto-init Apptainer and use it for tool dependency resolution

Open
#20,105 1 comment 4 reactions 0 assignees View on GitHub
area/tool-dependencies status/planning
Dominant language
Python
Stars
1.9k
Forks
1.2k
Avg merge
2d 23h
Merged PRs (30d)
158

Description

The current default config initializes (installs) and uses Conda for dependencies. I believe we are at the point with our container build and distribution architecture that we should be preferring containers instead. This should generally be faster, more reliable, and more reproducible, as well. Apptainer has made great strides in [unprivileged, unpackaged, relocatable, non-setuid installation](https://apptainer.org/docs/admin/1.4/installation.html#install-unprivileged-from-pre-built-binaries), so it would be trivial to get a working Apptainer binary on a fresh install.

For this to work nicely, the `cached_mulled_singularity` resolver ought to be able to fetch from a URL, i.e. https://depot.galaxyproject.org/singularity. As things exist right now your options are to mount CVMFS or convert images from docker (with or without caching).

I guess the caveat is that this only applies to Linux - on macOS or WSL we probably want different defaults.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.