On 10/13/2016 04:27 PM, Kenneth Hoste wrote:
I'm afraid I don't have one. We don't load Easybuild by default for our
users. But you should take a look at:
https://lmod.readthedocs.io/en/latest/070_standard_modules.html
Thanks, this page is actually useful and specific! So I've created a
new file /etc/profile.d/z01_EasyBuild.sh (to be loaded *after* Lmod's
z00_* scripts) with this content:
if [ -z "$__Init_Default_Modules" ]; then
export __Init_Default_Modules=1;
# module --initial_load restore
export EASYBUILD_MODULES_TOOL=Lmod
export EASYBUILD_PREFIX=/home/modules
module use $EASYBUILD_PREFIX/modules/all
Is this right?
Are the modules really in /home/modules/modules/all?
Yes, I NFS-mount /home/modules, and there are 5 EB directories there:
# ls -la /home/modules
total 16
drwxrwxr-x. 7 modules modules 80 Oct 13 12:17 .
drwxr-xr-x. 3 root root 0 Oct 13 16:34 ..
drwxrwxr-x. 2 modules modules 6 Oct 13 14:21 build
drwxrwxr-x. 35 modules modules 4096 Oct 13 14:21 ebfiles_repo
drwxrwxr-x. 15 modules modules 4096 Oct 13 13:55 modules
drwxrwxr-x. 36 modules modules 4096 Oct 13 14:21 software
drwxrwxr-x. 16 modules modules 4096 Sep 29 15:28 sources
Are you suggesting that only the "modules" subdirectory will actually be
needed by users? Anyway, the EB module building requires access to all
subdirectories, so it seems convenient to have all subdirectories
exposed this way. Am I making any mistakes here?
The recommended line "module --initial_load restore" generates an
unwarranted message:
The system default contains no modules
(env var: LMOD_SYSTEM_DEFAULT_MODULES is empty)
No changes in loaded modules
so I got rid of it by commenting this line out.
Well, you need to define $LMOD_SYSTEM_DEFAULT_MODULES :)
Do I really *need* to? What's the point, and what should I do then?
Question: Does anyone see potential problems or bad side effects with
such a global setup of EB for all users?
Having a proper default setup in place makes sense, but users can easily
override it with their own config file or via environment variables.
That sounds like a "Good Thing" for advanced users, right?
The only thing we do is load Lmod itself (a symlink to init/bash in
/etc/profile.d).
Question: How do your users initialize the usage of EB?
They can define a config file, or define environment variables
(typically via .bashrc), up to them...
Ah, so it's DIY for your users! I'm trying to make it easy for new
users so that they don't need to manipulate .bashrc after reading some
web documentation... I guess that's a matter of taste.
/Ole