'Rcpp' Interface to the APT Package Manager
The 'APT Package Management System' provides Debian and
Debian-derived Linux systems with a powerful system to resolve package
dependencies. This package offers access directly from R. This can
only work on a system with a suitable 'libapt-pkg-dev' installation
so functionality is curtailed if such a library is not found.
Rcpp Interface to APT Package Manager
Debian and its derivatives like
Ubuntu utilize a powerful package managing backend /
frontend combination in APT (A Packaging Tool). Accessible at the
command-line via front-ends
apt-cache, ... as well as
numerous GUI variants, it is implemented using a library
small package provides R with access to this
library via Rcpp.
We can query packages by regular expression:
R> library(RcppAPT) R> getPackages("^r-base-.")
which returns a data frame with name, version (if installed) and section.
We can also check for installability of a given package or set of packages:
R> hasPackages(c("r-cran-rcpp", "r-cran-rcppapt")) r-cran-rcpp r-cran-rcppapt TRUE FALSE R>
which shows that Rcpp is (of course) available, but this (very new) package is (unsurprisingly) not available pre-built.
Moreover, we can look at the package information of a given package.
buildDepends() function extracts just the build dependencies:
R> buildDepends("r-cran-rcppeigen")  "debhelper" "r-base-dev" "cdbs"  "r-cran-rcpp" "r-cran-matrix" "r-cran-pkgkitten" R>
dumpPackages() functions display even more information.
We can also look at reverse dependencies:
R> reverseDepends("r-cran-rcpp$") package version 1 r-cran-surveillance 2 r-cran-rquantlib 0.11.0 3 r-cran-reshape2 4 r-cran-readxl 5 r-cran-rcppeigen 0.11.0-1 6 r-cran-rcpparmadillo 0.11.0 7 r-cran-plyr 8 r-cran-minqa 0.11.0 R>
The package is still fairly small, and functionality is (currently) limited to the examples shown above. It builds reliably on the supported systems.
libapt-pkg is pretty mature, and feature-rich, so this package acts
mostly as a wrapper from R.
The package is on CRAN so a very standard
will do. Make sure you install the libapt-pkg-dev package first as it is a build-dependency.
Versions of the package may also be available via drat via:
GPL (>= 2)
Functions in RcppAPT
|buildDepends||Return Build-Depends for given packages|
|reverseDepends||Return Reverse-Depends for given packages|
|dumpPackages||Display information for given packages|
|getDepends||Return Depends for given packages|
|showSrc||Display information for given packages|
|getPackages||Retrieve Names of All Installable Packages|
|RcppAPT-package||Rcpp Interface to the APT Package Manager|
|hasPackages||Test for Existence of Given Package|
|suitable||Test for Suitability of System|
Vignettes of RcppAPT
Last month downloads
Include our badge in your README