summaryrefslogtreecommitdiffstats
path: root/pkgs/development
diff options
context:
space:
mode:
authorPhil Dyer <phildyer@protonmail.com>2021-06-25 12:33:54 +1000
committerPhil Dyer <phildyer@protonmail.com>2021-08-24 09:11:14 +1000
commitd7ac07cdbbba71cdd8a5f6a762595f1e7082c9a9 (patch)
tree5d4236e33023a6d5eeddf2a43c2a9f1bbb211cc2 /pkgs/development
parent99967a54d893b9742b38809ccfe3172b6918bdef (diff)
r-modules: fix r package build failures
r-modules: fix r package system dependencies r-modules: fix terra package dependencies r-modules: fix edge case for R package import The R package "import" has a name that clashes with the nix function "import". The package name in nixpkgs is correctly modified to avoid the clash, but the name of the R package was also being changed in cran-packages.nix, which broke downloading of the package. cran-packages.nix has been manually patched, and genreate-r-packages.R has been fixed so future automatic updates will succeed. r-modules: fix repeated `pkgs.` and svglite
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/r-modules/cran-packages.nix2
-rw-r--r--pkgs/development/r-modules/default.nix112
-rwxr-xr-xpkgs/development/r-modules/generate-r-packages.R3
3 files changed, 66 insertions, 51 deletions
diff --git a/pkgs/development/r-modules/cran-packages.nix b/pkgs/development/r-modules/cran-packages.nix
index 25c945c29f72..a09fa4af80a6 100644
--- a/pkgs/development/r-modules/cran-packages.nix
+++ b/pkgs/development/r-modules/cran-packages.nix
@@ -10268,7 +10268,7 @@ in with self; {
implicitMeasures = derive2 { name="implicitMeasures"; version="0.2.0"; sha256="0w0dwnzfhw5v5j7q3zpfsca4ydmq7b9fzspvyf9sibyh587isb9c"; depends=[ggplot2 stringr tidyr xtable]; };
implied = derive2 { name="implied"; version="0.3.1"; sha256="11mrvpsh9qc5a5s5mpbsksri6vx36ij1gvpli6lyz6dkg48a9kdn"; depends=[]; };
implyr = derive2 { name="implyr"; version="0.4.0"; sha256="0rblsmx1z2n4g3fims5wa3wyf5znr0gkwd2yfz3130bcm6346da0"; depends=[assertthat DBI dbplyr dplyr rlang tidyselect]; };
- r_import = derive2 { name="r_import"; version="1.2.0"; sha256="018s0x224gqnv4cjfh0fwliyfg6ma9vslmwybrlizfsmqcc5wp37"; depends=[]; };
+ r_import = derive2 { name="import"; version="1.2.0"; sha256="018s0x224gqnv4cjfh0fwliyfg6ma9vslmwybrlizfsmqcc5wp37"; depends=[]; };
importar = derive2 { name="importar"; version="0.1.1"; sha256="0xv445fmjhsbdlsq03k2rlycnggn3rcyq5a49zrg4jvjamzr0rgr"; depends=[]; };
importinegi = derive2 { name="importinegi"; version="1.1.3"; sha256="1r0p01mc9wb24ifldn3dmi0fqxwkp0290h0qrgr72grd34v2xszc"; depends=[data_table dplyr foreign haven rgdal]; };
impressionist_colors = derive2 { name="impressionist.colors"; version="1.0"; sha256="03z5w7y7vbvlnn30r9y3ip93h364f87nhwdb9hcki26csiq2bnlv"; depends=[]; };
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index eb244ae91df8..cc8a840eda25 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -237,54 +237,56 @@ let
audio = [ pkgs.portaudio ];
BayesSAE = [ pkgs.gsl_1 ];
BayesVarSel = [ pkgs.gsl_1 ];
- BayesXsrc = [ pkgs.readline.dev pkgs.ncurses ];
+ BayesXsrc = with pkgs; [ readline.dev ncurses ];
bigGP = [ pkgs.mpi ];
bio3d = [ pkgs.zlib ];
BiocCheck = [ pkgs.which ];
Biostrings = [ pkgs.zlib ];
bnpmr = [ pkgs.gsl_1 ];
cairoDevice = [ pkgs.gtk2.dev ];
- Cairo = [ pkgs.libtiff pkgs.libjpeg pkgs.cairo.dev pkgs.x11 pkgs.fontconfig.lib ];
+ Cairo = with pkgs; [ libtiff libjpeg cairo.dev x11 fontconfig.lib ];
Cardinal = [ pkgs.which ];
chebpol = [ pkgs.fftw ];
- ChemmineOB = [ pkgs.openbabel pkgs.pkg-config ];
+ ChemmineOB = with pkgs; [ openbabel pkg-config ];
curl = [ pkgs.curl.dev ];
- data_table = [pkgs.zlib.dev] ++ lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
- devEMF = [ pkgs.xorg.libXft.dev pkgs.x11 ];
- diversitree = [ pkgs.gsl_1 pkgs.fftw ];
+ data_table = [ pkgs.zlib.dev ] ++ lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
+ devEMF = with pkgs; [ xorg.libXft.dev x11 ];
+ diversitree = with pkgs; [ gsl_1 fftw ];
+ exactextractr = [ pkgs.geos ];
EMCluster = [ pkgs.lapack ];
fftw = [ pkgs.fftw.dev ];
- fftwtools = [ pkgs.fftw.dev ];
+ fftwtools = with pkgs; [ fftw.dev pkg-config ];
Formula = [ pkgs.gmp ];
- gdtools = [ pkgs.cairo.dev pkgs.fontconfig.lib pkgs.freetype.dev ];
- git2r = [ pkgs.zlib.dev pkgs.openssl.dev pkgs.libssh2.dev pkgs.libgit2 pkgs.pkg-config ];
+ gdtools = with pkgs; [ cairo.dev fontconfig.lib freetype.dev ];
+ git2r = with pkgs; [ zlib.dev openssl.dev libssh2.dev libgit2 pkg-config ];
GLAD = [ pkgs.gsl_1 ];
- glpkAPI = [ pkgs.gmp pkgs.glpk ];
+ glpkAPI = with pkgs; [ gmp glpk ];
gmp = [ pkgs.gmp.dev ];
graphscan = [ pkgs.gsl_1 ];
gsl = [ pkgs.gsl_1 ];
gert = [ pkgs.libgit2 ];
- haven = [ pkgs.libiconv pkgs.zlib.dev ];
+ haven = with pkgs; [ libiconv zlib.dev ];
h5vc = [ pkgs.zlib.dev ];
HiCseg = [ pkgs.gsl_1 ];
imager = [ pkgs.x11 ];
iBMQ = [ pkgs.gsl_1 ];
- igraph = [ pkgs.gmp pkgs.libxml2.dev ];
+ igraph = with pkgs; [ gmp libxml2.dev ];
JavaGD = [ pkgs.jdk ];
jpeg = [ pkgs.libjpeg.dev ];
jqr = [ pkgs.jq.dev ];
KFKSDS = [ pkgs.gsl_1 ];
kza = [ pkgs.fftw.dev ];
- lwgeom = [ pkgs.gdal pkgs.geos pkgs.proj ];
+ lpsymphony = with pkgs; [ pkg-config gfortran gettext ];
+ lwgeom = with pkgs; [pkgs.proj.dev proj pkg-config geos sqlite gdal ];
magick = [ pkgs.imagemagick.dev ];
ModelMetrics = lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
mvabund = [ pkgs.gsl_1 ];
mwaved = [ pkgs.fftw.dev ];
ncdf4 = [ pkgs.netcdf ];
- nloptr = [ pkgs.nlopt pkgs.pkg-config ];
+ nloptr = with pkgs; [ nlopt pkg-config ];
n1qn1 = [ pkgs.gfortran ];
odbc = [ pkgs.unixODBC ];
- pander = [ pkgs.pandoc pkgs.which ];
+ pander = with pkgs; [ pandoc which ];
pbdMPI = [ pkgs.mpi ];
pbdPROF = [ pkgs.mpi ];
pbdZMQ = lib.optionals stdenv.isDarwin [ pkgs.which ];
@@ -294,7 +296,7 @@ let
png = [ pkgs.libpng.dev ];
proj4 = [ pkgs.proj ];
protolite = [ pkgs.protobuf ];
- R2SWF = [ pkgs.zlib pkgs.libpng pkgs.freetype.dev ];
+ R2SWF = with pkgs; [ zlib libpng freetype.dev ];
RAppArmor = [ pkgs.libapparmor ];
rapportools = [ pkgs.which ];
rapport = [ pkgs.which ];
@@ -304,42 +306,43 @@ let
RcppGSL = [ pkgs.gsl_1 ];
RcppZiggurat = [ pkgs.gsl_1 ];
reprex = [ pkgs.which ];
- rgdal = [ pkgs.proj.dev pkgs.gdal ];
+ rgdal = with pkgs; [ proj.dev gdal ];
rgeos = [ pkgs.geos ];
Rglpk = [ pkgs.glpk ];
RGtk2 = [ pkgs.gtk2.dev ];
rhdf5 = [ pkgs.zlib ];
Rhdf5lib = [ pkgs.zlib.dev ];
- Rhpc = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.xz.dev pkgs.mpi pkgs.pcre.dev ];
- Rhtslib = [ pkgs.zlib.dev pkgs.automake pkgs.autoconf pkgs.bzip2.dev pkgs.xz.dev pkgs.curl.dev ];
+ Rhpc = with pkgs; [ zlib bzip2.dev icu xz.dev mpi pcre.dev ];
+ Rhtslib = with pkgs; [ zlib.dev automake autoconf bzip2.dev xz.dev curl.dev ];
rjags = [ pkgs.jags ];
- rJava = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.xz.dev pkgs.pcre.dev pkgs.jdk pkgs.libzip ];
+ rJava = with pkgs; [ zlib bzip2.dev icu xz.dev pcre.dev jdk libzip ];
Rlibeemd = [ pkgs.gsl_1 ];
rmatio = [ pkgs.zlib.dev ];
- Rmpfr = [ pkgs.gmp pkgs.mpfr.dev ];
+ Rmpfr = with pkgs; [ gmp mpfr.dev ];
Rmpi = [ pkgs.mpi ];
- RMySQL = [ pkgs.zlib pkgs.libmysqlclient pkgs.openssl.dev ];
- RNetCDF = [ pkgs.netcdf pkgs.udunits ];
+ RMySQL = with pkgs; [ zlib libmysqlclient openssl.dev ];
+ RNetCDF = with pkgs; [ netcdf udunits ];
RODBC = [ pkgs.libiodbc ];
rpanel = [ pkgs.bwidget ];
Rpoppler = [ pkgs.poppler ];
- RPostgreSQL = [ pkgs.postgresql pkgs.postgresql ];
+ RPostgreSQL = with pkgs; [ postgresql postgresql ];
RProtoBuf = [ pkgs.protobuf ];
RSclient = [ pkgs.openssl.dev ];
Rserve = [ pkgs.openssl ];
Rssa = [ pkgs.fftw.dev ];
rsvg = [ pkgs.pkg-config ];
runjags = [ pkgs.jags ];
- RVowpalWabbit = [ pkgs.zlib.dev pkgs.boost ];
- rzmq = [ pkgs.zeromq pkgs.pkg-config ];
+ RVowpalWabbit = with pkgs; [ zlib.dev boost ];
+ rzmq = with pkgs; [ zeromq pkg-config ];
clustermq = [ pkgs.zeromq ];
- SAVE = [ pkgs.zlib pkgs.bzip2 pkgs.icu pkgs.xz pkgs.pcre ];
- sdcTable = [ pkgs.gmp pkgs.glpk ];
- seewave = [ pkgs.fftw.dev pkgs.libsndfile.dev ];
+ SAVE = with pkgs; [ zlib bzip2 icu xz pcre ];
+ sdcTable = with pkgs; [ gmp glpk ];
+ seewave = with pkgs; [ fftw.dev libsndfile.dev ];
seqinr = [ pkgs.zlib.dev ];
- seqminer = [ pkgs.zlib.dev pkgs.bzip2 ];
- sf = [ pkgs.gdal pkgs.proj pkgs.geos ];
- showtext = [ pkgs.zlib pkgs.libpng pkgs.icu pkgs.freetype.dev ];
+ seqminer = with pkgs; [ zlib.dev bzip2 ];
+ sf = with pkgs; [ gdal proj geos ];
+ terra = with pkgs; [ gdal proj geos ];
+ showtext = with pkgs; [ zlib libpng icu freetype.dev ];
simplexreg = [ pkgs.gsl_1 ];
spate = [ pkgs.fftw.dev ];
ssanv = [ pkgs.proj ];
@@ -347,19 +350,19 @@ let
stringi = [ pkgs.icu.dev ];
survSNP = [ pkgs.gsl_1 ];
svglite = [ pkgs.libpng.dev ];
- sysfonts = [ pkgs.zlib pkgs.libpng pkgs.freetype.dev ];
- systemfonts = [ pkgs.fontconfig.dev pkgs.freetype.dev ];
+ sysfonts = with pkgs; [ zlib libpng freetype.dev ];
+ systemfonts = with pkgs; [ fontconfig.dev freetype.dev ];
TAQMNGR = [ pkgs.zlib.dev ];
- tesseract = [ pkgs.tesseract pkgs.leptonica ];
+ tesseract = with pkgs; [ tesseract leptonica ];
tiff = [ pkgs.libtiff.dev ];
- tkrplot = [ pkgs.xorg.libX11 pkgs.tk.dev ];
+ tkrplot = with pkgs; [ xorg.libX11 tk.dev ];
topicmodels = [ pkgs.gsl_1 ];
- udunits2 = [ pkgs.udunits pkgs.expat ];
+ udunits2 = with pkgs; [ udunits expat ];
units = [ pkgs.udunits ];
V8 = [ pkgs.v8 ];
- XBRL = [ pkgs.zlib pkgs.libxml2.dev ];
+ XBRL = with pkgs; [ zlib libxml2.dev ];
xml2 = [ pkgs.libxml2.dev ] ++ lib.optionals stdenv.isDarwin [ pkgs.perl ];
- XML = [ pkgs.libtool pkgs.libxml2.dev pkgs.xmlsec pkgs.libxslt ];
+ XML = with pkgs; [ libtool libxml2.dev xmlsec libxslt ];
affyPLM = [ pkgs.zlib.dev ];
bamsignals = [ pkgs.zlib.dev ];
BitSeq = [ pkgs.zlib.dev ];
@@ -369,10 +372,10 @@ let
gmapR = [ pkgs.zlib.dev ];
Rsubread = [ pkgs.zlib.dev ];
XVector = [ pkgs.zlib.dev ];
- Rsamtools = [ pkgs.zlib.dev pkgs.curl.dev ];
+ Rsamtools = with pkgs; [ zlib.dev curl.dev ];
rtracklayer = [ pkgs.zlib.dev ];
affyio = [ pkgs.zlib.dev ];
- VariantAnnotation = [ pkgs.zlib.dev pkgs.curl.dev ];
+ VariantAnnotation = with pkgs; [ zlib.dev curl.dev ];
snpStats = [ pkgs.zlib.dev ];
hdf5r = [ pkgs.hdf5.dev ];
};
@@ -396,7 +399,7 @@ let
RcppEigen = [ pkgs.libiconv ];
RCurl = [ pkgs.curl.dev ];
R2SWF = [ pkgs.pkg-config ];
- rgl = [ pkgs.libGLU pkgs.libGLU.dev pkgs.libGL pkgs.xlibsWrapper ];
+ rgl = with pkgs; [ libGLU libGLU.dev libGL xlibsWrapper ];
RGtk2 = [ pkgs.pkg-config ];
RProtoBuf = [ pkgs.pkg-config ];
Rpoppler = [ pkgs.pkg-config ];
@@ -407,13 +410,14 @@ let
gdtools = [ pkgs.pkg-config ];
jqr = [ pkgs.jq.lib ];
kza = [ pkgs.pkg-config ];
- lwgeom = [ pkgs.pkg-config pkgs.proj.dev pkgs.sqlite.dev ];
+ lwgeom = with pkgs; [ pkg-config proj.dev sqlite.dev ];
magick = [ pkgs.pkg-config ];
mwaved = [ pkgs.pkg-config ];
odbc = [ pkgs.pkg-config ];
openssl = [ pkgs.pkg-config ];
pdftools = [ pkgs.pkg-config ];
- sf = [ pkgs.pkg-config pkgs.sqlite.dev pkgs.proj.dev ];
+ sf = with pkgs; [ pkg-config sqlite.dev proj.dev ];
+ terra = with pkgs; [ pkg-config sqlite.dev proj.dev ];
showtext = [ pkgs.pkg-config ];
spate = [ pkgs.pkg-config ];
stringi = [ pkgs.pkg-config ];
@@ -426,11 +430,11 @@ let
mashr = [ pkgs.gsl ];
hadron = [ pkgs.gsl ];
AMOUNTAIN = [ pkgs.gsl ];
- Rsymphony = [ pkgs.pkg-config pkgs.doxygen pkgs.graphviz pkgs.subversion ];
- tcltk2 = [ pkgs.tcl pkgs.tk ];
- tikzDevice = [ pkgs.which pkgs.texlive.combined.scheme-medium ];
+ Rsymphony = with pkgs; [ pkg-config doxygen graphviz subversion ];
+ tcltk2 = with pkgs; [ tcl tk ];
+ tikzDevice = with pkgs; [ which texlive.combined.scheme-medium ];
gridGraphics = [ pkgs.which ];
- adimpro = [ pkgs.which pkgs.xorg.xdpyinfo ];
+ adimpro = with pkgs; [ which xorg.xdpyinfo ];
mzR = [ pkgs.netcdf ];
cluster = [ pkgs.libiconv ];
KernSmooth = [ pkgs.libiconv ];
@@ -951,6 +955,18 @@ let
'';
});
+ R_cache = old.R_cache.overrideDerivation (attrs: {
+ preConfigure = ''
+ export R_CACHE_ROOTPATH=$TMP
+ '';
+ });
+
+ lpsymphony = old.lpsymphony.overrideDerivation (attrs: {
+ preConfigure = ''
+ patchShebangs configure
+ '';
+ });
+
};
in
self
diff --git a/pkgs/development/r-modules/generate-r-packages.R b/pkgs/development/r-modules/generate-r-packages.R
index da9e0970b0f4..1ac15ef79e79 100755
--- a/pkgs/development/r-modules/generate-r-packages.R
+++ b/pkgs/development/r-modules/generate-r-packages.R
@@ -48,8 +48,7 @@ escapeName <- function(name) {
}
formatPackage <- function(name, version, sha256, depends, imports, linkingTo) {
- name <- escapeName(name)
- attr <- gsub(".", "_", name, fixed=TRUE)
+ attr <- gsub(".", "_", escapeName(name), fixed=TRUE)
options(warn=5)
depends <- paste( if (is.na(depends)) "" else gsub("[ \t\n]+", "", depends)
, if (is.na(imports)) "" else gsub("[ \t\n]+", "", imports)