Package {installationDriver}


Version: 1.0
Date: 2026-09-26
Title: Recursively Determine and Install Missing Dependencies
Maintainer: Barry Zeeberg <barryz2013@gmail.com>
Author: Barry Zeeberg [aut, cre]
Depends: R (≥ 4.2.0)
Imports: tools, utils, vprint
Description: For a list of specified package, we automate recursively determining and installing the missing CRAN package dependencies ("Depends", "Imports", "LinkingTo"). The main mechanisms used are tools::package_dependencies() and utils::install.packages().
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
Encoding: UTF-8
VignetteBuilder: knitr
Suggests: knitr, rmarkdown, testthat (≥ 3.0.0)
Config/roxygen2/version: 8.1.0
Config/testthat/edition: 3
NeedsCompilation: no
Packaged: 2026-09-26 15:52:28 UTC; barryzeeberg
Repository: CRAN
Date/Publication: 2026-10-07 08:00:02 UTC

installationDriver

Description

determine missing dependencies and install them, packs do not need to be installed or loaded

Usage

installationDriver(dir, packs, reportPacks = FALSE, verbose = 4)

Arguments

dir

character string containing the name of the directory holding packs

packs

list of package names

reportPacks

Boolean if FALSE do not return packages in parameter packs even if missing

verbose

integer passed to vprint()

Details

the return value 'missing' is a Boolean vector whose components are the names of missing dependencies
a value of FALSE means that the missing dependency is no longer missing because it was successfully installed

Value

returns a Boolean vector confirming installation of missing dependencies, also has side effect of installing some or all missing dependencies

Examples

## Not run: 
# you need to specify dir, packs that are on your own computer !!
# purposely remove a required library to make install go through its paces !!
remove.packages("hash")
dir1<-"~/personal/hearts/hearts_card_game_bayesian_inference"
dir2<-"packages/inference_packages/inference_packages/"
dir<-sprintf("%s/%s",dir1,dir2)
packs<-c("cardUtils","clickableImageMap","editDriver",
"heartsCIM","iterationDriver","logos","playOneTrick",
"playWholeHandDriverPassParams","probTab","relaxDriver")
missing<-installationDriver(dir,packs,reportPacks=FALSE,verbose=c(-1,4))

## End(Not run)


retrieveNamespace2

Description

retrieve a list of the imported packages in a NAMESPACE FILE, packs do not need to be installed or loaded

Usage

retrieveNamespace2(dir, packs)

Arguments

dir

character string containing the name of the directory holding packs

packs

list of package names

Value

returns a list containing the imported package names

Examples

## Not run: 
# you need to specify dir, packs that are on your own computer !!
dir1<-"~/personal/hearts/hearts_card_game_bayesian_inference"
dir2<-"packages/inference_packages/inference_packages/"
dir<-sprintf("%s/%s",dir1,dir2)
packs<-c("cardUtils","clickableImageMap","editDriver",
"heartsCIM","iterationDriver","logos","playOneTrick",
"playWholeHandDriverPassParams","probTab","relaxDriver")
rns<-retrieveNamespace2(dir,packs)

## End(Not run)