mauricer demo

Richèl J.C. Bilderbeek



mauricer is an R package to handle BEAST2 package management from R, similar to the BEAST2 package manager.

The BEAST2 package manager

The BEAST2 package manager

In this vignette, we will:

To do so, we’ll need to load mauricer. We’ll also load testthat for testing:

#> Loading required package: beastier

To install BEAST2 packages, one needs

If there is no internet connection, or if BEAST2 is not installed, this vignette will be close to empty.

if (!curl::has_internet()) {
  print("No internet connection")
if (!beastier::is_beast2_installed()) {
  print("No BEAST2 installed")

List all BEAST2 packages

Use get_beast2_pkg_names to get a data frame with the name, version and install status of all BEAST2 packages:

if (curl::has_internet() && beastier::is_beast2_installed()) {
  beast2_packages <- get_beast2_pkg_names()
name installed_version latest_version dependencies description
BEAST 2.6.6 2.6.7 BEAST package
Babel NA 0.3.2 BEASTLabs BABEL = BEAST analysis backing effective linguistics
bacter NA 2.2.5 Bacterial ARG inference.
BADTRIP NA 1.0.0 Infer transmission time for non-haplotype data and epi data
BASTA NA 3.0.1 Bayesian structured coalescent approximation
bdmm NA 1.0.2 MASTER, SA, MultiTypeTree Multitype birth-death model (aka birth-death-migration model)

Install the first non-installed BEAST2 package

Find a package that is not installed:

if (curl::has_internet() && beastier::is_beast2_installed()) {
  package_name <- beast2_packages[
    beast2_packages$installed_version == "NA",
#> [1] "Babel"

Install that package:

if (curl::has_internet() && beastier::is_beast2_installed()) {

Note that this installation uses a non-CRAN package, called mauricerinstall, as installing software is against CRAN policy.

Uninstall the BEAST2 package

Use uninstall_beast2_pkg:

if (curl::has_internet() && beastier::is_beast2_installed()) {

Also this code uses a non-CRAN package, called mauricerinstall, as installing software is against CRAN policy.