We configure EB using env vars so I have EASYBUILD_HIDE_DEPS defined as so:
DEPS_LIST="Autoconf,Automake,Autotools,binutils,Bison,flex,gettext,help2man,hwloc,libpciaccess,libtool,libxml2,M4,ncurses,numactl,xorg-macros,XZ,zlib,libpng,ncurses,libsodium,pkg-config,Tcl,bzip2,OpenPGM,libreadline,util-linux,freetype,SQLite,libffi,gettext,expat,gperf,libxml2,fontconfig,gettext,GMP,ZeroMQ,XML-Parser,intltool,X11,Tk,Tkinter,SQLite,Doxygen,GSL,Guile,Libint,Szip,gc,libmatheval,libunistring,libxc,libxsmm,pkgconfig" export EASYBUILD_HIDE_DEPS=$(echo $DEPS_LIST | sed -e $'s:,:\\\n:g' | sort -n | paste -sd ',' - | sed 's:,:,:g') I'm in the habit of doing a dry run every time I install something now so I can have a quick scan of what EB is going to do and I add anything that I think the users won’t be too interested in. They can always see everything with ' ml av --show-hidden' (using Lmod). Cheers, Jon ------------------------------------------------ Jon Roddom SCARF Systems Administrator Scientific Computing Department STFC Rutherford Appleton Laboratory ------------------------------------------------ -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Ole Holm Nielsen Sent: 23 November 2018 11:10 To: [email protected] Subject: Re: [easybuild] Retrospectively hiding modules / hiding by default On 11/23/2018 11:44 AM, Alvarez, Damian wrote: > A few notes of caution when rebuilding the whole stack: > > -Doing --module-only is not guaranteed to work in all cases. Sometimes > variables are computed during the build, and might have an effect on the > module created. EB will print a diff if the module already exist, pay > attention to it. > -However, if you are reinstalling a newly hidden module, EB won't find the > old one (since it will look for module/version, instead of module/.version) > and so the diff won't be printed and you can potentially miss something. > -You will need to manually delete the old non-hidden modules carefully. > -You have to be careful and filter out the hidden dependencies, you can't say > "eb $MY_EB_REPO/*eb --module-only", or you'll be recreating already existing > and visible modules. Thanks very much for your important words of caution! Dragons are obviously lurking in this field! In this case, hiding of existing modules seems to be an error prone or impossible task. It may be better to develop an entirely new EasyBuild module stack from scratch. Then one can have two disjoint module stacks "old" and "current" available for the users, and users should be migrated slowly to the "current" stack until the "old" stack can be removed after a year or two. Does this sound like a good approach? We still need documentation of EASYBUILD_HIDE_DEPS and examples of usage for building a new stack. > In my opinion, for a full stack makes more sense to use the rc files from > lmod, as Markus said. Thanks. Robert McLay (the author of Lmod) did recommend the isVisibleHook though when I asked him at the Supercomputing 2018 conference. Thanks, Ole

