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

Reply via email to