Hello Angel,
There currently are 3 ways to achieve hierarchical organization:
* using specific modulepaths and enabling/disabling them on demand
* playing with module visibility: hide modules that are not useful by
default, show them if one specific module is loaded
* module variants: 1 modulefile many variations of it
As Paul suggest, there is also the approach to limit the view to the
default (or latest) module version.
Based on your explanation and example, it may be interesting to add a
"group" feature to specifically sort modules of a given modulepath.
Group could be defined in .modulerc files with a new command
(module-group for instance). One may decide to view all the modules
sorted by group or not, thanks to the "avail_output" configuration
option.
Cheers,
Xavier
Le ven. 6 sept. 2024 à 20:00, Angel de Vicente via Modules-interest
<mod...@li...> a écrit :
>
> Hello,
>
> at our institution we make availabe via modules a large (and increasing)
> number of packages. I wanted to experiment with organizing them
> hierarchically so that our users can find them easier. I looked around
> the documentation and the web and couldn't find a way to do it (please
> let me know if I missed something).
>
> In the meantime I changed the code to allow for this, so we can get a
> more user-friendly (I hope) list of modules (different indentation and
> separator characters for different group levels; empty supergroups like
> "Reduction of Astronomical Data", just grouping other levels). Below a
> small demo (I hope the e-mail doesn't break the lines).
>
> I didn't follow the project guidelines, and it is the first time I touch
> any Tcl code in decades, so I'm sure my styles leaves much to be
> desired. Hence, before I try to clean my code and try to make a PR out
> of it, I wanted to ask if this an option that you think might be
> interesting (if this is only useful to us, probably I just leave the
> spaguetti code as is).
>
> Cheers,
>
>
>
>
> $ ml av
> ====================================================== Reduction of Astronomical Data ======================================================
>
> .......................................................... General Packages ...........................................................
> casa/6.6.3 gildas/apr24a heasoft/6.33.2
>
> .......................................................... Specialized Tools ..........................................................
> alfa/2.2 cloudy/23.01 galfit/3.0.5 healpix/3.82 molly/1.1.8 reduceme/5.0 sourcextractor++/0.22 visit/3.4.1
> astrometry.net/0.94 daophot/2004.01.15 gnuastro/0.22 imfit/1.9.0 neat/2.3 rmodel/3.2.3 ultracam/9.16
> bbarolo/1.7 ensemble/1.2 gnuastro/0.23 indexf/4.3 pamela/1.0.9 skymaker/4.2.0 vapor/3.9.1
>
> =================================================== Proposals and Observations Planning ====================================================
> starpos/0.0 xephem/4.2.0
>
> ====================================================== Display and Graphics Packages =======================================================
> aladin/12.060 ds9/8.5 fv/5.5.4 jhelioviewer/4.6.3 supermongo/2.4.36
>
> ======================================================= Editors and Text Processors ========================================================
> mendeley/2.111.0
>
> ======================================================== Programming and Libraries =========================================================
>
> ............................................................... General ...............................................................
> julia/1.10.2 julia/1.10.5 python/3.10 python/3.12
>
> ................................................................ INTEL ................................................................
> advisor/2024.1 compiler/2024.1.0 dnnl/3.4.0 intel_ipp_intel64/2021.11 oclfpga/2024.1.0
> ccl/2021.12.0 dal/2024.0.0 dpct/2024.1.0 intel_ippcp_intel64/2021.11 tbb/2021.12
> compiler-intel-llvm/2024.1.0 debugger/2024.1.0 dpl/2022.5 mkl/2024.1 vtune/2024.1
> compiler-rt/2024.1.0 dev-utilities/2024.0.0 ifort/2024.1.0 mpi/2021.12
>
> ............................................................... NVIDIA ................................................................
> nvhpc-byo-compiler/24.3 nvhpc-hpcx-cuda12/24.3 nvhpc-nompi/24.3 nvhpc/24.3
> nvhpc-hpcx-cuda11/24.3 nvhpc-hpcx/24.3 nvhpc-openmpi3/24.3
>
> Key:
> default-version modulepath
>
>
> --
> Ángel de Vicente
> Research Software Engineer (Supercomputing and BigData)
> Tel.: +34 922-605-747
> ---------------------------------------------------------------------------------------------
> AVISO LEGAL: Este mensaje puede contener información confidencial y/o privilegiada. Si usted no es el destinatario final del mismo o lo ha recibido por error, por favor notifíquelo al remitente inmediatamente. Cualquier uso no autorizadas del contenido de este mensaje está estrictamente prohibida. Más información en: https://www.iac.es/es/responsabilidad-legal
> DISCLAIMER: This message may contain confidential and / or privileged information. If you are not the final recipient or have received it in error, please notify the sender immediately. Any unauthorized use of the content of this message is strictly prohibited. More information: https://www.iac.es/en/disclaimer
>
>
> _______________________________________________
> Modules-interest mailing list
> Mod...@li...
> https://lists.sourceforge.net/lists/listinfo/modules-interest
|