-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
55 additions
and
86 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,3 @@ | ||
|
||
# scdrake | ||
|
||
[![NEWS: | ||
|
@@ -114,27 +113,21 @@ you can use `singularity pull docker-daemon:<image>` | |
You can pull the Docker image with the latest stable `{scdrake}` version | ||
using | ||
|
||
``` bash | ||
docker pull jirinovo/scdrake:1.5.2 | ||
singularity pull docker:jirinovo/scdrake:1.5.2 | ||
``` | ||
docker pull jirinovo/scdrake:1.6.0 | ||
singularity pull docker:jirinovo/scdrake:1.6.0 | ||
|
||
or list available versions in [our Docker Hub | ||
repository](https://hub.docker.com/r/jirinovo/scdrake/tags). | ||
|
||
For the latest development version use | ||
|
||
``` bash | ||
docker pull jirinovo/scdrake:latest | ||
singularity pull docker:jirinovo/scdrake:latest | ||
``` | ||
docker pull jirinovo/scdrake:latest | ||
singularity pull docker:jirinovo/scdrake:latest | ||
|
||
**Note for Mac users with M1/M2 chipsets**: until version 1.5.0 | ||
(inclusive), `arm64` images are available. | ||
|
||
``` bash | ||
docker pull jirinovo/scdrake:1.5.0-bioc3.15-arm64 | ||
``` | ||
docker pull jirinovo/scdrake:1.5.0-bioc3.15-arm64 | ||
|
||
### Running the container | ||
|
||
|
@@ -143,39 +136,33 @@ and Windows or MacOS running Docker Desktop. | |
|
||
First make a shared directory that will be mounted to the container: | ||
|
||
``` bash | ||
mkdir ~/scdrake_projects | ||
cd ~/scdrake_projects | ||
``` | ||
mkdir ~/scdrake_projects | ||
cd ~/scdrake_projects | ||
|
||
And run the image that will expose RStudio Server on port 8787 on your | ||
host: | ||
|
||
``` bash | ||
docker run -d \ | ||
-v $(pwd):/home/rstudio/scdrake_projects \ | ||
-p 8787:8787 \ | ||
-e USERID=$(id -u) \ | ||
-e GROUPID=$(id -g) \ | ||
-e PASSWORD=1234 \ | ||
jirinovo/scdrake:1.5.2 | ||
``` | ||
docker run -d \ | ||
-v $(pwd):/home/rstudio/scdrake_projects \ | ||
-p 8787:8787 \ | ||
-e USERID=$(id -u) \ | ||
-e GROUPID=$(id -g) \ | ||
-e PASSWORD=1234 \ | ||
jirinovo/scdrake:1.6.0 | ||
|
||
For Singularity, also make shared directories and execute the container | ||
(“run and forget”): | ||
|
||
``` bash | ||
mkdir -p ~/scdrake_singularity | ||
cd ~/scdrake_singularity | ||
mkdir -p home/${USER} scdrake_projects | ||
singularity exec \ | ||
-e \ | ||
--no-home \ | ||
--bind "home/${USER}/:/home/${USER},scdrake_projects/:/home/${USER}/scdrake_projects" \ | ||
--pwd "/home/${USER}/scdrake_projects" \ | ||
path/to/scdrake_image.sif \ | ||
scdrake <args> <command> | ||
``` | ||
mkdir -p ~/scdrake_singularity | ||
cd ~/scdrake_singularity | ||
mkdir -p home/${USER} scdrake_projects | ||
singularity exec \ | ||
-e \ | ||
--no-home \ | ||
--bind "home/${USER}/:/home/${USER},scdrake_projects/:/home/${USER}/scdrake_projects" \ | ||
--pwd "/home/${USER}/scdrake_projects" \ | ||
path/to/scdrake_image.sif \ | ||
scdrake <args> <command> | ||
|
||
## Installing `{scdrake}` manually (not recommended) | ||
|
||
|
@@ -191,7 +178,7 @@ Click for details | |
- For MacOS: | ||
`$ brew install libxml2 imagemagick@6 harfbuzz fribidi libgit2 geos pandoc` | ||
|
||
### Install R \>= 4.2 | ||
### Install R >= 4.2 | ||
|
||
See <https://cloud.r-project.org/> | ||
|
||
|
@@ -204,79 +191,63 @@ management of local R libraries. It is intended to be used on a | |
per-project basis, i.e. each project should use its own library of R | ||
packages. | ||
|
||
``` r | ||
install.packages("renv") | ||
``` | ||
install.packages("renv") | ||
|
||
### Initialize a new `{renv}` library | ||
|
||
Switch to directory where you will analyze data and initialize a new | ||
`{renv}` library: | ||
|
||
``` r | ||
renv::consent(TRUE) | ||
renv::init() | ||
``` | ||
renv::consent(TRUE) | ||
renv::init() | ||
|
||
Now exit and run again R. You should see a message that renv library has | ||
been activated. | ||
|
||
### Install BiocManager | ||
|
||
``` r | ||
renv::install("BiocManager") | ||
``` | ||
renv::install("BiocManager") | ||
|
||
### Install Bioconductor 3.15 | ||
|
||
``` r | ||
BiocManager::install(version = "3.15") | ||
``` | ||
BiocManager::install(version = "3.15") | ||
|
||
### Restore `{scdrake}` dependencies from lockfile | ||
|
||
`{renv}` also allows to export the current installed versions of R | ||
packages (and other things) into a lockfile. Such lockfile is available | ||
for `{scdrake}` and you can use it to install all dependencies by | ||
|
||
``` r | ||
## -- This is a lockfile for the latest stable version of scdrake. | ||
download.file("https://raw.githubusercontent.com/bioinfocz/scdrake/1.5.2/renv.lock") | ||
## -- You can increase the number of CPU cores to speed up the installation. | ||
options(Ncpus = 2) | ||
renv::restore(lockfile = "renv.lock", repos = BiocManager::repositories()) | ||
``` | ||
## -- This is a lockfile for the latest stable version of scdrake. | ||
download.file("https://raw.githubusercontent.com/bioinfocz/scdrake/1.6.0/renv.lock") | ||
## -- You can increase the number of CPU cores to speed up the installation. | ||
options(Ncpus = 2) | ||
renv::restore(lockfile = "renv.lock", repos = BiocManager::repositories()) | ||
|
||
For the lockfile for the latest development version use | ||
|
||
``` r | ||
download.file("https://raw.githubusercontent.com/bioinfocz/scdrake/main/renv.lock") | ||
``` | ||
download.file("https://raw.githubusercontent.com/bioinfocz/scdrake/main/renv.lock") | ||
|
||
### Install the `{scdrake}` package | ||
|
||
Now we can finally install the `{scdrake}` package, but using a | ||
non-standard approach - without its dependencies (which are already | ||
installed from the lockfile). | ||
|
||
``` r | ||
remotes::install_github( | ||
"bioinfocz/[email protected]", | ||
dependencies = FALSE, upgrade = FALSE, | ||
keep_source = TRUE, build_vignettes = TRUE, | ||
repos = BiocManager::repositories() | ||
) | ||
``` | ||
remotes::install_github( | ||
"bioinfocz/[email protected]", | ||
dependencies = FALSE, upgrade = FALSE, | ||
keep_source = TRUE, build_vignettes = TRUE, | ||
repos = BiocManager::repositories() | ||
) | ||
|
||
For the latest development version use `"bioinfocz/scdrake"`. | ||
|
||
### Install the command line interface (CLI) | ||
|
||
Optionally, you can install `{scdrake}`’s CLI scripts with | ||
|
||
``` r | ||
scdrake::install_cli() | ||
``` | ||
scdrake::install_cli() | ||
|
||
CLI should be now accessible as a `scdrake` command. By default, the CLI | ||
is installed into `~/.local/bin`, which is usually present in the `PATH` | ||
|
@@ -328,7 +299,7 @@ vignette](https://bioinfocz.github.io/scdrake/articles/scdrake.html) | |
## Vignettes and other readings | ||
|
||
See <https://bioinfocz.github.io/scdrake> for a documentation website of | ||
the latest stable version (1.5.2) where links to vignettes below become | ||
the latest stable version (1.6.0) where links to vignettes below become | ||
real :-) | ||
|
||
See <https://bioinfocz.github.io/scdrake/dev> for a documentation | ||
|
@@ -353,25 +324,25 @@ website of the current development version. | |
- Config files (internals): `vignette("scdrake_config")` | ||
- Environment variables: `vignette("scdrake_envvars")` | ||
- General configs: | ||
- Pipeline config -\> `vignette("config_pipeline")` | ||
- Main config -\> `vignette("config_main")` | ||
- Pipeline config -> `vignette("config_pipeline")` | ||
- Main config -> `vignette("config_main")` | ||
- Pipelines and stages: | ||
- Single-sample pipeline: | ||
- Stage `01_input_qc`: reading in data, filtering, quality | ||
control -\> `vignette("stage_input_qc")` | ||
control -> `vignette("stage_input_qc")` | ||
- Stage `02_norm_clustering`: normalization, HVG selection, | ||
SVG selection, dimensionality reduction, clustering, | ||
(manual) cell type annotation -\> | ||
(manual) cell type annotation -> | ||
`vignette("stage_norm_clustering")` | ||
- Integration pipeline: | ||
- Stage `01_integration`: reading in data and integration -\> | ||
`vignette("stage_integration")` | ||
- Stage `01_integration`: reading in data and integration | ||
-> `vignette("stage_integration")` | ||
- Stage `02_int_clustering`: post-integration clustering and | ||
cell annotation -\> `vignette("stage_int_clustering")` | ||
cell annotation -> `vignette("stage_int_clustering")` | ||
- Common stages: | ||
- Stage `cluster_markers` -\> | ||
- Stage `cluster_markers` -> | ||
`vignette("stage_cluster_markers")` | ||
- Stage `contrasts` (differential expression) -\> | ||
- Stage `contrasts` (differential expression) -> | ||
`vignette("stage_contrasts")` | ||
|
||
We encourage all users to read | ||
|
@@ -393,9 +364,7 @@ Below is the citation output from using `citation("scdrake")` in R. | |
Please run this yourself to check for any updates on how to cite | ||
**scdrake**. | ||
|
||
``` r | ||
print(citation("scdrake"), bibtex = TRUE) | ||
``` | ||
print(citation("scdrake"), bibtex = TRUE) | ||
|
||
To cite package ‘scdrake’ in publications use: | ||
|
||
|
@@ -431,7 +400,7 @@ but if you need e.g. a general help. | |
|
||
If you want to contribute to `{scdrake}`, read the [contribution | ||
guide](.github/CONTRIBUTING.md), please. All pull requests are welcome! | ||
:slightly_smiling_face: | ||
:slightly\_smiling\_face: | ||
|
||
## Code of Conduct | ||
|
||
|