In the spirt of using EasyBuild and documenting modules to make science 
reproducible. You should not assume or allow libraries to install other 
libraries.  When installing libraries interactively with R, dependencies will 
be resolved and all dependent packages will be resolved and installed.  When I 
create easyconfigs I like to specify every package explicitly. 

Shameless plug for EasyUpdate. 
You can use "easy_update" to generate an exts_list for a specific package.  
Here is an example using rstan.  As you can see there are many dependencies. 
EasyUpdate will recursively resolve dependencies and create output that can be 
cut/paste into an EasyConfig.

./easy_update.py --rver 3.5 --search rstan
BioCondutor verserion: biocver not set
    ('Rcpp', '1.0.0', ext_options),
    ('BH', '1.69.0-1', ext_options),
    ('lattice', '0.20-38', ext_options),
    ('Matrix', '1.2-15', ext_options),
    ('RcppEigen', '0.3.3.5.0', ext_options),
    ('StanHeaders', '2.18.0-1', ext_options),
    ('gtable', '0.2.0', ext_options),
    ('withr', '2.1.2', ext_options),
    ('R6', '2.3.0', ext_options),
    ('viridisLite', '0.3.0', ext_options),
    ('labeling', '0.3', ext_options),
    ('RColorBrewer', '1.1-2', ext_options),
    ('colorspace', '1.4-0', ext_options),
    ('munsell', '0.5.0', ext_options),
    ('scales', '1.0.0', ext_options),
    ('rlang', '0.3.1', ext_options),
    ('lazyeval', '0.2.1', ext_options),
    ('plyr', '1.8.4', ext_options),
    ('magrittr', '1.5', ext_options),
    ('glue', '1.3.0', ext_options),
    ('stringi', '1.2.4', ext_options),
    ('stringr', '1.3.1', ext_options),
    ('reshape2', '1.4.3', ext_options),
    ('MASS', '7.3-51.1', ext_options),
    ('assertthat', '0.2.0', ext_options),
    ('crayon', '1.3.4', ext_options),
    ('cli', '1.0.1', ext_options),
    ('utf8', '1.1.4', ext_options),
    ('fansi', '0.4.0', ext_options),
    ('pillar', '1.3.1', ext_options),
    ('pkgconfig', '2.0.2', ext_options),
    ('tibble', '2.0.1', ext_options),
    ('nlme', '3.1-137', ext_options),
    ('mgcv', '1.8-26', ext_options),
    ('digest', '0.6.18', ext_options),
    ('ggplot2', '3.1.0', ext_options),
    ('prettyunits', '1.0.2', ext_options),
    ('ps', '1.3.0', ext_options),
    ('processx', '3.2.1', ext_options),
    ('callr', '3.1.1', ext_options),
    ('backports', '1.1.3', ext_options),
    ('rprojroot', '1.3-2', ext_options),
    ('desc', '1.2.0', ext_options),
    ('pkgbuild', '1.0.2', ext_options),
    ('matrixStats', '0.54.0', ext_options),
    ('loo', '2.0.0', ext_options),
    ('inline', '0.3.15', ext_options),
    ('gridExtra', '2.3', ext_options),
    ('rstan', '2.18.2', ext_options),

John Dey
https://github.com/fizwit/easy_update



On 1/22/19, 5:58 AM, "Loris Bennett" <[email protected]> wrote:

    Hi John,
    
    Am I right in assuming that the module file produced by the easyconfig
    is somewhat redundant, since the extra packages will be installed to the
    standard R library path and will be available as soon as the main R
    module is loaded, regardless of whether the module with the extras is
    loaded too?
    
    Cheers,
    
    Loris
    
    "Dey, John F" <[email protected]> writes:
    
    > To customize R to your site create a separate EasyConfig using easyblock =
    > 'Bundle' and exts_defaultclass = 'RPackage'.  Depend the "Published" R 
from the
    > official EasyBuild/EasyConfig repo. Create a new exts_list with packages 
local
    > to your site that are not in the base R easyconfig.  You will also be 
able to
    > add BioConductor packages to your new custom build of R.
    >
    > Please look at an example;  I add the suffix "fh1" for Fred Hutch". 
    > 
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_FredHutch_easybuild-2Dlife-2Dsciences_blob_master_fh-5Feasyconfigs_R-2D3.5.1-2Dfoss-2D2018b-2Dfh1.eb&d=DwIFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=3TR-iteG1SyRqQ5yubQg-_2KIAToz9bj5dZrRdW36Hc&m=UAEifr8pGQ_jcCneJbI76U1aVMFNYpHXezG4FDgjbwg&s=WtD21WLIG_WmNAFIIgvvlYofYd0vDAGOy_LvMLTSMVg&e=
    >
    >
    >
    > John Dey
    >
    > On 1/18/19, 4:05 AM, "[email protected] on behalf of Loris 
Bennett" <[email protected] on behalf of 
[email protected]> wrote:
    >
    >     Hi,
    >     
    >     I'm installing R and see that a whole bunch of R packages are also
    >     being installed via exts_list.  However, if I need additional 
packages,
    >     do I just make a copy of the original easyconfig and just add to
    >     exts_list?  Or is there some way of having a list of only the 
additional
    >     packages which could somehow be included by the current and all future
    >     standard R easyconfigs? 
    >     
    >     Cheers,
    >     
    >     Loris
    >     
    >     -- 
    >     Dr. Loris Bennett (Mr.)
    >     ZEDAT, Freie Universität Berlin         Email 
[email protected]
    >     
    >
    -- 
    Dr. Loris Bennett (Mr.)
    ZEDAT, Freie Universität Berlin         Email [email protected]
    

Reply via email to