bioFAM / MOFA2

Multi-Omics Factor Analysis
https://biofam.github.io/MOFA2/
GNU Lesser General Public License v3.0
300 stars 52 forks source link

`Installation paths not writeable, unable to update packages` #98

Open bschilder opened 2 years ago

bschilder commented 2 years ago

This only seems to an issue when I try to install MOFA2 within a Docker container (using my local Rstudio installation works fine). Though the Docker container has Bioc v3.16 (devel), whereas my local installation has Bioc v3.15 (release), so it's possible this is actually the source of the difference.

Reprex

Create container

Create the MAGMA.Celltyping Docker container (full directions here):

docker pull neurogenomicslab/magma.celltyping

docker run \
  -d \
  -e ROOT=true \
  -e PASSWORD="<your_password>" \
  -v ~/Desktop:/Desktop \
  -v /Volumes:/Volumes \
  -p 8787:8787 \
  neurogenomicslab/magma.celltyping

Try to insall MOFA2

Within the Docker container Rstudio instance:

BiocManager::install("MOFA2")
'getOption("repos")' replaces Bioconductor standard repositories, see '?repositories' for details

replacement repositories:
    CRAN: https://cloud.r-project.org

Bioconductor version 3.16 (BiocManager 1.30.18), R Under development (unstable) (2022-02-25 r81808)
Installing package(s) 'MOFA2'
Installation paths not writeable, unable to update packages
  path: /usr/local/lib/R/library
  packages:
    cluster, MASS, Matrix, mgcv, nlme, survival
Warning message:
package ‘MOFA2’ is not available for Bioconductor version '3.16'

A version of this package for your version of R might be available elsewhere,
see the ideas at
https://cran.r-project.org/doc/manuals/r-devel/R-admin.html#Installing-packages 

Thanks for the great software!

Best, Brian

Session info

``` R Under development (unstable) (2022-02-25 r81808) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 20.04.3 LTS Matrix products: default BLAS/LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.8.so locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] tidytext_0.3.3 future_1.27.0 sp_1.5-0 SeuratObject_4.1.0 Seurat_4.1.1 [6] dplyr_1.0.9 ggplot2_3.3.6 data.table_1.14.2 MungeSumstats_1.5.9 MAGMA.Celltyping_2.0.6 loaded via a namespace (and not attached): [1] ica_1.0-3 class_7.3-20 Rsamtools_2.13.3 foreach_1.5.2 [5] lmtest_0.9-40 rprojroot_2.0.3 crayon_1.5.1 spatstat.core_2.4-4 [9] rbibutils_2.2.8 MASS_7.3-58.1 nlme_3.1-159 backports_1.4.1 [13] rlang_1.0.4 XVector_0.37.0 ROCR_1.0-11 readxl_1.4.0 [17] irlba_2.3.5 nloptr_2.0.3 limma_3.53.5 filelock_1.0.2 [21] BiocParallel_1.31.12 rjson_0.2.21 bit64_4.0.5 glue_1.6.2 [25] sctransform_0.3.3 pbkrtest_0.5.1 parallel_4.2.0 spatstat.sparse_2.1-1 [29] AnnotationDbi_1.59.1 BiocGenerics_0.43.1 HGNChelper_0.8.1 isoband_0.2.5 [33] spatstat.geom_2.4-0 tidyselect_1.1.2 SummarizedExperiment_1.27.1 fitdistrplus_1.1-8 [37] variancePartition_1.27.3 XML_3.99-0.10 tidyr_1.2.0 zoo_1.8-10 [41] ggpubr_0.4.0 GenomicAlignments_1.33.1 ontologyIndex_2.7 xtable_1.8-4 [45] magrittr_2.0.3 evaluate_0.16 Rdpack_2.4 cli_3.3.0 [49] zlibbioc_1.43.0 rstudioapi_0.13 miniUI_0.1.1.1 rpart_4.1.16 [53] aod_1.3.2 treeio_1.21.0 maps_3.4.0 shiny_1.7.2 [57] xfun_0.32 cluster_2.1.3 caTools_1.18.2 TSP_1.2-1 [61] GeneOverlap_1.33.0 KEGGREST_1.37.3 tibble_3.1.8 interactiveDisplayBase_1.35.0 [65] expm_0.999-6 ggrepel_0.9.1 ape_5.6-2 listenv_0.8.0 [69] dendextend_1.16.0 Biostrings_2.65.1 png_0.1-7 withr_2.5.0 [73] bitops_1.0-7 plyr_1.8.7 cellranger_1.1.0 phenomix_0.99.4 [77] sparsesvd_0.2 e1071_1.7-11 pillar_1.8.0 gplots_3.1.3 [81] cachem_1.0.6 GenomicFeatures_1.49.5 fs_1.5.2 googleAuthR_2.0.0 [85] vctrs_0.4.1 ellipsis_0.3.2 generics_0.1.3 tools_4.2.0 [89] munsell_0.5.0 proxy_0.4-27 DelayedArray_0.23.1 fastmap_1.1.0 [93] compiler_4.2.0 abind_1.4-5 httpuv_1.6.5 rtracklayer_1.57.0 [97] ExperimentHub_2.5.0 ewceData_1.5.0 DescTools_0.99.45 plotly_4.10.0 [101] rgeos_0.5-9 GenomeInfoDbData_1.2.8 gridExtra_2.3 lattice_0.20-45 [105] deldir_1.0-6 utf8_1.2.2 later_1.3.0 BiocFileCache_2.5.0 [109] jsonlite_1.8.0 tokenizers_0.2.1 scales_1.2.0 gld_2.6.5 [113] tidytree_0.3.9 pbapply_1.5-0 carData_3.0-5 lazyeval_0.2.2 [117] promises_1.2.0.1 car_3.1-0 doParallel_1.0.17 R.utils_2.12.0 [121] goftest_1.2-3 spatstat.utils_2.3-1 reticulate_1.25 rmarkdown_2.14 [125] cowplot_1.1.1 webshot_0.5.3 Rtsne_0.16 dichromat_2.0-0.1 [129] BSgenome_1.65.2 Biobase_2.57.1 uwot_0.1.11 igraph_1.3.4 [133] survival_3.4-0 yaml_2.3.5 htmltools_0.5.3 memoise_2.0.1 [137] VariantAnnotation_1.43.2 BiocIO_1.7.1 seriation_1.3.6 IRanges_2.31.0 [141] here_1.0.1 viridisLite_0.4.0 digest_0.6.29 assertthat_0.2.1 [145] RhpcBLASctl_0.21-247.1 mime_0.12 piggyback_0.1.4 rappdirs_0.3.3 [149] registry_0.5-1 pals_1.7 RSQLite_2.2.15 yulab.utils_0.0.5 [153] future.apply_1.9.0 mapproj_1.2.8 Exact_3.1 orthogene_1.3.1 [157] blob_1.2.3 S4Vectors_0.35.1 R.oo_1.25.0 labeling_0.4.2 [161] splines_4.2.0 AnnotationHub_3.5.0 RCurl_1.98-1.8 broom_1.0.0 [165] hms_1.1.1 gprofiler2_0.2.1 colorspace_2.0-3 BiocManager_1.30.18 [169] GenomicRanges_1.49.0 scNLP_0.1.0 aplot_0.1.6 Rcpp_1.0.9 [173] RANN_2.6.1 mvtnorm_1.1-3 fansi_1.0.3 SnowballC_0.7.0 [177] parallelly_1.32.1 R6_2.5.1 grid_4.2.0 ggridges_0.5.3 [181] lifecycle_1.0.1 rootSolve_1.8.2.3 curl_4.3.2 ggsignif_0.6.3 [185] minqa_1.2.4 leiden_0.4.2 Matrix_1.4-1 RcppAnnoy_0.0.19 [189] org.Hs.eg.db_3.15.0 RColorBrewer_1.1-3 iterators_1.0.14 stringr_1.4.0 [193] htmlwidgets_1.5.4 polyclip_1.10-0 biomaRt_2.53.2 purrr_0.3.4 [197] crosstalk_1.2.0 janeaustenr_0.1.5 gridGraphics_0.5-1 mgcv_1.8-40 [201] globals_0.16.0 lmom_2.9 patchwork_1.1.1 spatstat.random_2.2-0 [205] progressr_0.10.1 codetools_0.2-18 matrixStats_0.62.0 gtools_3.9.3 [209] EWCE_1.5.5 prettyunits_1.1.1 SingleCellExperiment_1.19.0 dbplyr_2.2.1 [213] RSpectra_0.16-1 R.methodsS3_1.8.2 GenomeInfoDb_1.33.5 gtable_0.3.0 [217] DBI_1.1.3 stats4_4.2.0 ggfun_0.0.6 tensor_1.5 [221] httr_1.4.3 KernSmooth_2.23-20 stringi_1.7.8 progress_1.2.2 [225] farver_2.1.1 reshape2_1.4.4 heatmaply_1.3.0 viridis_0.6.2 [229] ggtree_3.5.1 xml2_1.3.3 ggdendro_0.1.23 boot_1.3-28 [233] lme4_1.1-30 restfulr_0.0.15 RNOmni_1.0.0 ggplotify_0.1.0 [237] homologene_1.4.68.19.3.27 scattermore_0.8 BiocVersion_3.16.0 bit_4.0.4 [241] MatrixGenerics_1.9.1 spatstat.data_2.2-0 pkgconfig_2.0.3 babelgene_22.3 [245] gargle_1.2.0 rstatix_0.7.0 knitr_1.39 ```
gtca commented 2 years ago

Does installing other packages work in this setting? Or updating cluster or any other packages listed here?

bschilder commented 2 years ago

@gtca Not sure about cluster specifically, but all other packages I've tried install fine.

bschilder commented 2 years ago

Just confirmed, all of the dependencies including cluster installed fine, it's just MOFA2 itself that seems to be the issue.

This may have something to do with the fact that MOFA2 is failing to build on Bioc devel/3.16 (which my container uses): https://www.bioconductor.org/packages/devel/bioc/html/MOFA2.html

gtca commented 2 years ago

Thanks for checking, @bschilder!

That's probably it. You can of course install it straight from GitHub alternatively. Not sure why their build is failing specifically on Linux...

bschilder commented 2 years ago

Thanks for checking, @bschilder!

That's probably it. You can of course install it straight from GitHub alternatively. Not sure why their build is failing specifically on Linux...

Thanks, installing from GitHub does indeed work fine in the meantime. Was trying to get it to work with Bioc since I can't have any remote dependencies for the Bioconductor R package I'm making. But by the time I go to submit the package this will probably be fixed anyways.

remotes::install_github("bioFAM/MOFA2")

Looks like just one of the vignettes is failing, so hopefully should be relatively easy to fix.

gtca commented 2 years ago

Great! I can't reproduce their build fail though, we'll try to do something about it if it continues to fail on Linux.