[Beowulf] software for activating one of many programs but not the others?

David Mathog mathog at caltech.edu
Fri Aug 23 12:43:29 PDT 2019

After messing around a bit with EasyBuild I found that for the packages 
I wanted it kept installing foss versions (not all were built with the 
same foss), and each of these were entire compiler/bintools/etc. sets of 
files.  Seemed kind of ridiculous since I already knew how to build 
those packages on Centos7, although sometimes devtoolset-7 was needed.  
So a default environment of:


was defined.  This module does basically nothing, but provides a 
reference in case some  other variant CentOS based environment is ever 

A script "module_generate_from_directory.sh" was written to 
semi-automatically generate lua files from the install directories.  I 
should probably have written it in lua but it is bash for now.  It makes 
some conservative assumptions about
directory names, but even those may not always be valid, so the lua file 
might need manual modification.  Anyway, it is a start, and it gets it 
right most of the time for packages which use "configure".

These two files are here:


Here is an example of one of the few mod files which has needed manual 
editing after it was generated:

module_generate_from_directory.sh \
    augustus \
    CentOS/vanilla \
    "AUGUSTUS is a program that predicts genes in eukaryotic genomic 
sequences." \
#-- added manually
#prepend_path("PATH", pathJoin(root, "scripts"))

#scripts subdir is not automatically added because in some cases it 
should NOT
#be on PATH.

module load augustus
module list

Currently Loaded Modules:
   1) CentOS/vanilla   2) augustus/3.3.2-CentOS-vanilla

augustus 2>&1 | head -2
AUGUSTUS (3.3.2) is a gene prediction tool
written by M. Stanke, O. Keller, S. K├Ânig, L. Gerischer and L. Romoth.


David Mathog
mathog at caltech.edu
Manager, Sequence Analysis Facility, Biology Division, Caltech

More information about the Beowulf mailing list