Skip to content

Lmod missing .version file in module tree #450

@nlvw

Description

@nlvw

Describe the bug
Following the getting started guide, as well as any of the install instructions in the registries, fails when performing any referenced module load command. This is due to how shpc is creating the directory tree. Lmod expects the .lua file to be the version and the directory to be the name. Since shpc is creating the version as a directory, and then a module.lua file, Lmod is getting confused. To solve this shpc should be creating an empty .version file in the same folder as the version directory (see https://lmod.readthedocs.io/en/latest/055_module_names.html#module-naming-scheme-name-version-version-n-v-v.

To Reproduce
Install any container and try to load it following the provided commands. Following the getting started guide in the docs works too.

Expected behavior
The name should be separate from the software version. So for the following

$ module avail

---------------------------------- /software/singularity/shpc/shpc/modules -----------------------------------
   biocontainers/samtools/v1.9-4-deb_cv1/module (L)

'biocontaners/samtools' should be the name and 'v1.9-4-deb_cv1/module' should be the version. This allows for module load biocontainers/samtools to work.

Other
lmod showing '/module' as part of the full module name bugs me but I see no way to suppress this other then an overhaul of how shpc organizing things.

Software Versions

  • Lmod = 8.2.7
  • shpc = 0.0.34
  • singularity = 3.8.0
  • OS = CentOS 7.9

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions