RE: https://mastodon.social/@andrewnez/116074494241015138
Maybe applicable to @spack and @easybuild ?
RE: https://mastodon.social/@andrewnez/116074494241015138
Maybe applicable to @spack and @easybuild ?
@AlanSill @easybuild Spack already does this; it was designed with air gaps in mind.
* `spack fetch` will download what you need to install and env or package and cache it in a local mirror: https://spack.readthedocs.io/en/latest/command_index.html#spack-fetch
* you can also create a mirror for multiple packages or for an env: https://spack.readthedocs.io/en/latest/mirrors.html#spack-mirror
* Special instructions for bootstrapping in an airgapped env: https://spack.readthedocs.io/en/latest/bootstrapping.html#creating-a-mirror-for-air-gapped-systems
@spack @AlanSill Likewise for EasyBuild, pretty much.
EasyBuild "caches" source downloads, so it only downloads once.
You can use “eb --fetch" to download sources for a bunch of easyconfigs (incl. dependencies if you also use --robot).
See also https://docs.easybuild.io/partial-installations/#partial_installation_fetch