Skip to content

environment-modules #48

@xdelaruelle

Description

@xdelaruelle

Software Name

Environment Modules


Public URL

http://modules.sourceforge.net/


Technical Overview

The original module command. The Environment Modules project was live again in 2017 and a lot of new stuff has been added to the module command since them. Here is an overview of some of the new features added and a roadmap for the next releases. This slide deck also contains a short comparison with Lmod.

Version 5.1 has been released few days ago and starting this version Environment Modules can handle the Tcl modulefiles written for Lmod. So it now copes with the family, depends-on, module try-add commands used in OpenHPC modulefiles.

So it seems this is a good time to ask for the integration of Environment Modules in OpenHPC, as an alternative choice for users to the default solution (Lmod).


Latest stable version number

5.1.0


Open-source license type

GPLv2+


Relationship to component?

  • contributing developer
  • user
  • other

If other, please describe:


Build system

  • autotools-based
  • CMake
  • other

If other, please describe:
configure script is a bash script, but it acts like an autotools-generated configure script.

A RPM spec file is available at https://github.com/cea-hpc/modules/blob/master/contrib/rpm/environment-modules.spec.in

Does the current build system support staged path installations?
For example: make install DESTIR=/tmp/foo (or equivalent)

  • yes
  • no

Does component run in user space or are administrative credentials required?

  • user space
  • admin

Does component require post-installation configuration.

  • yes
  • no

If yes, please describe briefly:
If you want to achieve an initial configuration of the user environment, with default modulepaths set and default module loaded, the /etc/environment-modules/initrc configuration file has to be changed. For instance, to reproduce a similar configuration than the one set in /etc/profile.d/lmod.{sh,csh}:

#%Module5.0
# ensure that module command is still defined in sub-shells
module config set_shell_startup 1

module use /opt/ohpc/pub/modulefiles
if {[module-info username root]} {
    module use /opt/ohpc/admin/modulefiles
}

# Load baseline OpenHPC environment
module try-add ohpc

If component is selected, are you willing and able to collaborate with OpenHPC maintainers during the integration process?

  • yes
  • no

Does the component include test collateral (e.g. regression/verification tests) in the publicly shipped source?

  • yes
  • no

If yes, please briefly describe the intent and location of the tests.
Modules is shipped with:

  • a testsuite, checking that the generated modulecmd.tcl script behaves properly for all a large variety of situations (17k+ tests): run make test
  • an installation testsuite, checking the overall Modules installation behaves properly (1k tests): run make testinstall

All these tests rely on the DejaGnu framework


Does the component have additional software dependencies (beyond compilers/MPI) that are not part of standard Linux distributions?

  • yes
  • no

If yes, please list the dependencies and associated licenses.


Does the component include online or installable documentation?

  • yes
  • no

If available online, please provide URL.
https://modules.readthedocs.io/en/stable/INSTALL.html


[Optional]: Would you like to receive additional review feedback by email?

  • yes
  • no

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