--- title: "Create dependencies file" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{Create dependencies file} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ``` ```{r} library(attachment) ``` # Write instructions to install all dependencies from a "DESCRIPTION" file `create_dependencies_file()` creates "inst/dependencies.R" file with the instructions to install all dependencies listed in your "DESCRIPTION". This accounts for the "Remotes" field and write instructions accordingly. Use `create_dependencies_file(to = NULL)` to only retrieve the output as a list of character and not save a "inst/dependencies.R" file in your project. This can be used in a `Readme.Rmd` file for instance, to get the full list of each dependency to install and how, from any "DESCRIPTION" file. ```{r examples-create_dependencies_file} #| eval: yes # Create a fake package tmpdir <- tempfile(pattern = "depsfile") dir.create(tmpdir) file.copy(system.file("dummypackage",package = "attachment"), tmpdir, recursive = TRUE) dummypackage <- file.path(tmpdir, "dummypackage") # Create the dependencies commands but no file create_dependencies_file( path = file.path(dummypackage,"DESCRIPTION"), to = NULL, open_file = FALSE) # Create the dependencies files in the package create_dependencies_file( path = file.path(dummypackage,"DESCRIPTION"), to = file.path(dummypackage, "inst/dependencies.R"), open_file = FALSE) list.files(file.path(dummypackage, "inst")) # browseURL(dummypackage) # Clean temp files after this example unlink(tmpdir, recursive = TRUE) ```