Content deleted Content added
VulcanSphere (talk | contribs) m Trimming #ShortDescription #Computing #Unix #VulcanSphere |
Delaruellex (talk | contribs) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 4:
| name = Environment Modules
| logo = Environment_Modules_logo.svg
| latest_release_version = 5.
| latest_release_date = {{Start date and age|
| operating_system = [[Unix-like]]
| programming_language = [[Tcl]]
Line 11:
| website = {{URL|https://modules.sourceforge.net/}}
}}
The '''Environment Modules''' system is a [[software tool]] designed to help users
== Overview ==
Environment Modules allows users to dynamically configure their shell environment without permanently altering login scripts. This is especially useful in [[high-performance computing]] (HPC) environments where users may need to access multiple versions of the same application. Users load and unload scripts called modulefiles to modify environment variables such as {{mono|PATH}} or {{mono|LD_LIBRARY_PATH}}.
Environment Modules is shell independent and supports all major Unix shells ([[Bash (Unix shell)|Bash]], [[KornShell|ksh]], [[Z shell|zsh]], [[Fish (Unix shell)|Fish]], [[Bourne shell|sh]], [[tcsh]], and [[C shell|csh]]), Windows shells ([[CMD.EXE]] and [[PowerShell]]) and several [[Scripting language|Scripting languages]] ([[Perl]], [[Python (programming language)|Python]], [[Ruby (programming language)|Ruby]], [[Tcl]], [[CMake]] and [[R (programming language)|R]])
Environment Modules handles all kind of items part of shell environment, including [[environment variable]], [[Alias (command)|shell alias]], shell function and [[command-line completion]].
== Development ==
Modules has been around since the early 1990s<ref>{{cite journal |last=Furlani |first=John L. |date=September 30 – October 3, 1991 |title=Modules: Providing a Flexible User Environment |url=
== Modulefiles ==
The modules system is based on modulefiles,<ref>{{cite web |url=
The key advantage of Environment Modules is that it is shell independent and supports all major shells such as [[Bash (Unix shell)|Bash]] (bash), [[KornShell]] (ksh), [[Z shell]] (zsh), [[Fish (Unix shell)|Fish]] (fish), [[Bourne shell]] (sh), [[tcsh]], and [[C shell]] (csh). The second key advantage is that it allows to use multiple versions of the program or package from the same account by just loading proper module. Those two advantages were instrumental in making Environment Modules a part of most HPC cluster setups. It also inspired several alternative implementation such as lmod from University of Texas, which is written in [[Lua (programming language)|Lua]] instead of Tcl.
Modulefiles are created on per application per version basis. They can be dynamically loaded, unloaded, or switched. Along with the capability of using multiple versions of the same software it also can be used to implement site policies regarding the access and use of applications.
Line 181 ⟶ 188:
==== 8.6.1 version of Tcl built from /usr/local/src ====
Although the [[PCLinuxOS]] 64-bit repositories include Tcl they do not include a development package with the configuration files required to build Environment Modules on Linux from source. Building Tcl from source will make the required files available.<ref>{{cite web | url=
Extract source after downloading
Line 217 ⟶ 224:
* {{Official website|https://modules.sourceforge.net/}}
* {{GitHub|envmodules/modules}}
* John L. Furlani, [
* http://lmod.sourceforge.net - alternative implementation using Lua instead of Tcl
* http://www.lysator.liu.se/cmod/ - alternative implementation using C only
* [https://web.archive.org/web/20140203041538/http://rcc.its.psu.edu/user_guides/system_utilities/modules/ PennState Environment Modules User Guide]
* [
* [https://web.archive.org/web/20150217180220/https://www.xsede.org/software-environments Xsede Software Environments]. The Extreme Science and Engineering Discovery Environment ― National Science Foundation
* [http://www.nics.tennessee.edu/computing-resources/modules NICS Modules Description] ― The National Institute for Computational Sciences at Oak Ridge National Laboratory ― Department of Energy
Line 229 ⟶ 236:
[[Category:Free software programmed in Tcl]]
[[Category:Unix software]]
[[Category:Science software]]
[[Category:System administration]]
|