mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-08-27 02:34:53 +00:00
HilbertVisGUI depends on the deprecated gtk2 via gtkmm2. gtk2 is deprecated and planned to be removed. Tracking: https://github.com/NixOS/nixpkgs/issues/410814
2924 lines
76 KiB
Nix
2924 lines
76 KiB
Nix
# This file defines the composition for R packages.
|
|
|
|
let
|
|
importJSON = f: builtins.fromJSON (builtins.readFile f);
|
|
|
|
biocPackagesGenerated = importJSON ./bioc-packages.json;
|
|
biocAnnotationPackagesGenerated = importJSON ./bioc-annotation-packages.json;
|
|
biocExperimentPackagesGenerated = importJSON ./bioc-experiment-packages.json;
|
|
cranPackagesGenerated = importJSON ./cran-packages.json;
|
|
in
|
|
|
|
{
|
|
R,
|
|
pkgs,
|
|
overrides,
|
|
}:
|
|
|
|
let
|
|
inherit (pkgs)
|
|
cacert
|
|
fetchurl
|
|
stdenv
|
|
lib
|
|
;
|
|
|
|
buildRPackage = pkgs.callPackage ./generic-builder.nix {
|
|
inherit R;
|
|
inherit (pkgs) gettext gfortran;
|
|
};
|
|
|
|
# Generates package templates given per-repository settings
|
|
#
|
|
# some packages, e.g. cncaGUI, require X running while installation,
|
|
# so that we use xvfb-run if requireX is true.
|
|
mkDerive =
|
|
{
|
|
mkHomepage,
|
|
mkUrls,
|
|
hydraPlatforms ? null,
|
|
}:
|
|
args:
|
|
let
|
|
hydraPlatforms' = hydraPlatforms;
|
|
in
|
|
lib.makeOverridable (
|
|
{
|
|
name,
|
|
version,
|
|
sha256,
|
|
depends ? [ ],
|
|
doCheck ? true,
|
|
requireX ? false,
|
|
broken ? false,
|
|
platforms ? R.meta.platforms,
|
|
hydraPlatforms ? if hydraPlatforms' != null then hydraPlatforms' else platforms,
|
|
maintainers ? [ ],
|
|
}:
|
|
buildRPackage {
|
|
pname = name;
|
|
inherit version;
|
|
src = fetchurl {
|
|
inherit sha256;
|
|
urls = mkUrls (args // { inherit name version; });
|
|
};
|
|
inherit doCheck requireX;
|
|
propagatedBuildInputs = depends;
|
|
nativeBuildInputs = depends;
|
|
meta.homepage = mkHomepage (args // { inherit name; });
|
|
meta.platforms = platforms;
|
|
meta.hydraPlatforms = hydraPlatforms;
|
|
meta.broken = broken;
|
|
meta.maintainers = maintainers;
|
|
}
|
|
);
|
|
|
|
# Templates for generating Bioconductor and CRAN packages
|
|
# from the name, version, sha256, and optional per-package arguments above
|
|
#
|
|
deriveBioc = mkDerive {
|
|
mkHomepage =
|
|
{ name, biocVersion }: "https://bioconductor.org/packages/${biocVersion}/bioc/html/${name}.html";
|
|
mkUrls =
|
|
{
|
|
name,
|
|
version,
|
|
biocVersion,
|
|
}:
|
|
[
|
|
"mirror://bioc/${biocVersion}/bioc/src/contrib/${name}_${version}.tar.gz"
|
|
"mirror://bioc/${biocVersion}/bioc/src/contrib/Archive/${name}/${name}_${version}.tar.gz"
|
|
"mirror://bioc/${biocVersion}/bioc/src/contrib/Archive/${name}_${version}.tar.gz"
|
|
];
|
|
};
|
|
deriveBiocAnn = mkDerive {
|
|
mkHomepage =
|
|
{ name, biocVersion }:
|
|
"https://www.bioconductor.org/packages/${biocVersion}/data/annotation/html/${name}.html";
|
|
mkUrls =
|
|
{
|
|
name,
|
|
version,
|
|
biocVersion,
|
|
}:
|
|
[
|
|
"mirror://bioc/${biocVersion}/data/annotation/src/contrib/${name}_${version}.tar.gz"
|
|
];
|
|
hydraPlatforms = [ ];
|
|
};
|
|
deriveBiocExp = mkDerive {
|
|
mkHomepage =
|
|
{ name, biocVersion }:
|
|
"https://www.bioconductor.org/packages/${biocVersion}/data/experiment/html/${name}.html";
|
|
mkUrls =
|
|
{
|
|
name,
|
|
version,
|
|
biocVersion,
|
|
}:
|
|
[
|
|
"mirror://bioc/${biocVersion}/data/experiment/src/contrib/${name}_${version}.tar.gz"
|
|
];
|
|
hydraPlatforms = [ ];
|
|
};
|
|
deriveCran = mkDerive {
|
|
mkHomepage = { name }: "https://cran.r-project.org/web/packages/${name}/";
|
|
mkUrls =
|
|
{ name, version }:
|
|
[
|
|
"mirror://cran/${name}_${version}.tar.gz"
|
|
"mirror://cran/Archive/${name}/${name}_${version}.tar.gz"
|
|
];
|
|
};
|
|
|
|
# Overrides package definitions with nativeBuildInputs.
|
|
# For example,
|
|
#
|
|
# overrideNativeBuildInputs {
|
|
# foo = [ pkgs.bar ]
|
|
# } old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.overrideAttrs (attrs: {
|
|
# nativeBuildInputs = attrs.nativeBuildInputs ++ [ pkgs.bar ];
|
|
# });
|
|
# }
|
|
overrideNativeBuildInputs =
|
|
overrides: old:
|
|
lib.mapAttrs (
|
|
name: value:
|
|
(builtins.getAttr name old).overrideAttrs (attrs: {
|
|
nativeBuildInputs = attrs.nativeBuildInputs ++ value;
|
|
})
|
|
) overrides;
|
|
|
|
# Overrides package definitions with buildInputs.
|
|
# For example,
|
|
#
|
|
# overrideBuildInputs {
|
|
# foo = [ pkgs.bar ]
|
|
# } old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.overrideAttrs (attrs: {
|
|
# buildInputs = attrs.buildInputs ++ [ pkgs.bar ];
|
|
# });
|
|
# }
|
|
overrideBuildInputs =
|
|
overrides: old:
|
|
lib.mapAttrs (
|
|
name: value:
|
|
(builtins.getAttr name old).overrideAttrs (attrs: {
|
|
buildInputs = attrs.buildInputs ++ value;
|
|
})
|
|
) overrides;
|
|
|
|
# Overrides package definitions with maintainers.
|
|
# For example,
|
|
#
|
|
# overrideMaintainers {
|
|
# foo = [ lib.maintainers.jsmith ]
|
|
# } old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.override {
|
|
# maintainers = [ lib.maintainers.jsmith ];
|
|
# };
|
|
# }
|
|
overrideMaintainers =
|
|
overrides: old:
|
|
lib.mapAttrs (
|
|
name: value:
|
|
(builtins.getAttr name old).override {
|
|
maintainers = value;
|
|
}
|
|
) overrides;
|
|
|
|
# Overrides package definitions with new R dependencies.
|
|
# For example,
|
|
#
|
|
# overrideRDepends {
|
|
# foo = [ self.bar ]
|
|
# } old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.overrideAttrs (attrs: {
|
|
# nativeBuildInputs = attrs.nativeBuildInputs ++ [ self.bar ];
|
|
# propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ self.bar ];
|
|
# });
|
|
# }
|
|
overrideRDepends =
|
|
overrides: old:
|
|
lib.mapAttrs (
|
|
name: value:
|
|
(builtins.getAttr name old).overrideAttrs (attrs: {
|
|
nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ value;
|
|
propagatedBuildInputs = (attrs.propagatedBuildInputs or [ ]) ++ value;
|
|
})
|
|
) overrides;
|
|
|
|
# Overrides package definition requiring X running to install.
|
|
# For example,
|
|
#
|
|
# overrideRequireX [
|
|
# "foo"
|
|
# ] old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.override {
|
|
# requireX = true;
|
|
# };
|
|
# }
|
|
overrideRequireX =
|
|
packageNames: old:
|
|
let
|
|
nameValuePairs = map (name: {
|
|
inherit name;
|
|
value = (builtins.getAttr name old).override {
|
|
requireX = true;
|
|
};
|
|
}) packageNames;
|
|
in
|
|
builtins.listToAttrs nameValuePairs;
|
|
|
|
# Overrides package definition requiring a home directory to install or to
|
|
# run tests.
|
|
# For example,
|
|
#
|
|
# overrideRequireHome [
|
|
# "foo"
|
|
# ] old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.overrideAttrs (oldAttrs: {
|
|
# preInstall = ''
|
|
# ${oldAttrs.preInstall or ""}
|
|
# export HOME=$(mktemp -d)
|
|
# '';
|
|
# });
|
|
# }
|
|
overrideRequireHome =
|
|
packageNames: old:
|
|
let
|
|
nameValuePairs = map (name: {
|
|
inherit name;
|
|
value = (builtins.getAttr name old).overrideAttrs (oldAttrs: {
|
|
preInstall = ''
|
|
${oldAttrs.preInstall or ""}
|
|
export HOME=$(mktemp -d)
|
|
'';
|
|
});
|
|
}) packageNames;
|
|
in
|
|
builtins.listToAttrs nameValuePairs;
|
|
|
|
# Overrides package definition to skip check.
|
|
# For example,
|
|
#
|
|
# overrideSkipCheck [
|
|
# "foo"
|
|
# ] old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.override {
|
|
# doCheck = false;
|
|
# };
|
|
# }
|
|
overrideSkipCheck =
|
|
packageNames: old:
|
|
let
|
|
nameValuePairs = map (name: {
|
|
inherit name;
|
|
value = (builtins.getAttr name old).override {
|
|
doCheck = false;
|
|
};
|
|
}) packageNames;
|
|
in
|
|
builtins.listToAttrs nameValuePairs;
|
|
|
|
# Overrides package definition to mark it broken.
|
|
# For example,
|
|
#
|
|
# overrideBroken [
|
|
# "foo"
|
|
# ] old
|
|
#
|
|
# results in
|
|
#
|
|
# {
|
|
# foo = old.foo.override {
|
|
# broken = true;
|
|
# };
|
|
# }
|
|
overrideBroken =
|
|
packageNames: old:
|
|
let
|
|
nameValuePairs = map (name: {
|
|
inherit name;
|
|
value = (builtins.getAttr name old).override {
|
|
broken = true;
|
|
};
|
|
}) packageNames;
|
|
in
|
|
builtins.listToAttrs nameValuePairs;
|
|
|
|
defaultOverrides =
|
|
old: new:
|
|
let
|
|
old0 = old;
|
|
in
|
|
let
|
|
old1 = old0 // (overrideRequireX packagesRequiringX old0);
|
|
old2 = old1 // (overrideRequireHome packagesRequiringHome old1);
|
|
old3 = old2 // (overrideSkipCheck packagesToSkipCheck old2);
|
|
old4 = old3 // (overrideRDepends packagesWithRDepends old3);
|
|
old5 = old4 // (overrideNativeBuildInputs packagesWithNativeBuildInputs old4);
|
|
old6 = old5 // (overrideBuildInputs packagesWithBuildInputs old5);
|
|
old7 = old6 // (overrideBroken brokenPackages old6);
|
|
old8 = old7 // (overrideMaintainers packagesWithMaintainers old7);
|
|
old = old8;
|
|
in
|
|
old // (otherOverrides old new);
|
|
|
|
# Recursive override pattern.
|
|
# `_self` is a collection of packages;
|
|
# `self` is `_self` with overridden packages;
|
|
# packages in `_self` may depends on overridden packages.
|
|
self = (defaultOverrides _self self) // overrides;
|
|
_self = {
|
|
inherit buildRPackage;
|
|
}
|
|
// mkPackageSet deriveBioc biocPackagesGenerated
|
|
// mkPackageSet deriveBiocAnn biocAnnotationPackagesGenerated
|
|
// mkPackageSet deriveBiocExp biocExperimentPackagesGenerated
|
|
// mkPackageSet deriveCran cranPackagesGenerated;
|
|
|
|
# Takes in a generated JSON file's imported contents
|
|
# and transforms it by swapping each element of the depends array with the dependency's derivation
|
|
# and passing this new object to the provided derive function
|
|
mkPackageSet =
|
|
derive: packagesJSON:
|
|
lib.mapAttrs (
|
|
k: v:
|
|
derive packagesJSON.extraArgs (
|
|
v // { depends = lib.map (name: builtins.getAttr name self) v.depends; }
|
|
)
|
|
) packagesJSON.packages;
|
|
|
|
# tweaks for the individual packages and "in self" follow
|
|
|
|
packagesWithMaintainers = with lib.maintainers; {
|
|
# keep-sorted start block=yes
|
|
BiocManager = [ jbedo ];
|
|
RQuantLib = [ kupac ];
|
|
StructuralVariantAnnotation = [ jbedo ];
|
|
XLConnect = [ b-rodrigues ];
|
|
data_table = [ jbedo ];
|
|
ggplot2 = [ jbedo ];
|
|
iscream = [ jamespeapen ];
|
|
svaNUMT = [ jbedo ];
|
|
svaRetro = [ jbedo ];
|
|
# keep-sorted end
|
|
};
|
|
|
|
packagesWithRDepends = {
|
|
# keep-sorted start block=yes
|
|
BayesPET = [ self.rstantools ];
|
|
TriDimRegression = [ self.rstantools ];
|
|
bayesdfa = [ self.rstantools ];
|
|
bbmix = [ self.rstantools ];
|
|
disbayes = [ self.rstantools ];
|
|
gastempt = [ self.rstantools ];
|
|
interactiveDisplay = [ self.BiocManager ];
|
|
pliman = [ self.EBImage ];
|
|
rmsb = [ self.rstantools ];
|
|
spectralGraphTopology = [ self.CVXR ];
|
|
survextrap = [ self.rstantools ];
|
|
tipsae = [ self.rstantools ];
|
|
# keep-sorted end
|
|
};
|
|
|
|
packagesWithNativeBuildInputs = {
|
|
# keep-sorted start block=yes
|
|
Apollonius = [ pkgs.pkg-config ];
|
|
BayesXsrc = [ pkgs.gsl ]; # for gsl-config
|
|
BigDataStatMeth = [ pkgs.pkg-config ];
|
|
BiocCheck = [ pkgs.which ];
|
|
CBN2Path = [ pkgs.gsl ]; # for gsl-config
|
|
CLVTools = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
Cairo = [ pkgs.pkg-config ];
|
|
Cardinal = [ pkgs.which ];
|
|
ChemmineOB = [ pkgs.pkg-config ];
|
|
CytoML = [ pkgs.libxml2 ]; # for xml2-config
|
|
DirichletMultinomial = [ pkgs.gsl ]; # for gsl-config
|
|
GLAD = [ pkgs.gsl ]; # for gsl-config
|
|
GPBayes = [ pkgs.gsl ]; # for gsl-config
|
|
JMcmprsk = [ pkgs.gsl ]; # for gsl-config
|
|
KSgeneral = with pkgs; [ pkg-config ];
|
|
LCMCR = [ pkgs.gsl ]; # for gsl-config
|
|
ModelMetrics = lib.optional stdenv.hostPlatform.isDarwin pkgs.llvmPackages.openmp;
|
|
PEPBVS = [ pkgs.gsl ]; # for gsl-config
|
|
PICS = [ pkgs.gsl ];
|
|
QF = [ pkgs.gsl ]; # for gsl-config
|
|
R2SWF = [ pkgs.pkg-config ];
|
|
RAppArmor = [ pkgs.pkg-config ];
|
|
RCurl = [ pkgs.curl ]; # for curl-config
|
|
RDieHarder = [ pkgs.gsl ]; # for gsl-config
|
|
RFIF = [ pkgs.pkg-config ];
|
|
RGtk2 = [ pkgs.pkg-config ];
|
|
RJMCMCNucleosomes = [ pkgs.gsl ]; # for gsl-config
|
|
RKHSMetaMod = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
RMariaDB = [ pkgs.libmysqlclient ]; # for mysql_config
|
|
RMySQL = [ pkgs.libmysqlclient ]; # for mysql_config
|
|
RNetCDF = [ pkgs.pkg-config ];
|
|
RPesto = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
RPostgreSQL = with pkgs; [ libpq.pg_config ];
|
|
RProtoBuf = [ pkgs.pkg-config ];
|
|
RQuantLib = [ pkgs.quantlib ]; # for quantlib-config
|
|
RationalMatrix = [ pkgs.pkg-config ];
|
|
RcppCWB = with pkgs; [
|
|
pkg-config
|
|
pcre2 # for pcre2-config
|
|
];
|
|
RcppDPR = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
RcppGSL = [ pkgs.gsl ]; # for gsl-config
|
|
RcppMeCab = [ pkgs.mecab ]; # for mecab-config
|
|
RcppPlanc = with pkgs; [
|
|
which
|
|
cmake
|
|
pkg-config
|
|
];
|
|
RcppZiggurat = [ pkgs.gsl ]; # for gsl-config
|
|
Rhdf5lib = with pkgs; [
|
|
cmake
|
|
];
|
|
Rhisat2 = [
|
|
pkgs.which
|
|
pkgs.hostname
|
|
];
|
|
Rhpc = with pkgs; [
|
|
mpi
|
|
# deps for `R CMD config --ldflags`
|
|
bzip2
|
|
icu
|
|
libdeflate
|
|
xz
|
|
zlib
|
|
zstd
|
|
];
|
|
Rigraphlib = [ pkgs.cmake ];
|
|
Rlibeemd = [ pkgs.gsl ]; # for gsl-config
|
|
RmecabKo = [ pkgs.mecab ]; # for mecab-config
|
|
Rmpi = with pkgs; [
|
|
pkg-config
|
|
prrte
|
|
];
|
|
RoBMA = [ pkgs.pkg-config ];
|
|
RoBSA = [ pkgs.pkg-config ];
|
|
Rpoppler = [ pkgs.pkg-config ];
|
|
Rsubbotools = [ pkgs.gsl ]; # for gsl-config
|
|
Rsymphony = [ pkgs.pkg-config ];
|
|
SQLFormatteR = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
SimInf = [ pkgs.gsl ]; # for gsl-config
|
|
SuperGauss = [ pkgs.pkg-config ];
|
|
SymTS = [ pkgs.gsl ]; # for gsl-config
|
|
Uno = with pkgs; [
|
|
cmake
|
|
which
|
|
];
|
|
V8 = [ pkgs.pkg-config ];
|
|
VBLPCM = [ pkgs.gsl ]; # for gsl-config
|
|
XBRL = [ pkgs.libxml2 ]; # for xml2-config
|
|
XML = with pkgs; [
|
|
pkg-config
|
|
libxml2 # for xml2-config
|
|
];
|
|
a5R = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
abn = with pkgs; [
|
|
gsl # for gsl-config
|
|
jags
|
|
];
|
|
adimpro = [ pkgs.imagemagick ];
|
|
ahocorasick = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
alcyon = with pkgs; [
|
|
cmake
|
|
which
|
|
];
|
|
animation = [ pkgs.which ];
|
|
apcf = [ pkgs.geos ]; # for geos-config
|
|
apsimx = [ pkgs.which ];
|
|
arcgisgeocode = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
arcgisplaces = with pkgs; [
|
|
cargo
|
|
rustc
|
|
pkg-config
|
|
];
|
|
arcgisutils = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
arcpbf = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
arrow =
|
|
with pkgs;
|
|
[
|
|
pkg-config
|
|
cmake
|
|
]
|
|
++ lib.optionals stdenv.hostPlatform.isDarwin [ intltool ];
|
|
astgrepr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
automerge = with pkgs; [
|
|
cargo
|
|
cmake
|
|
rustc
|
|
];
|
|
awdb = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
b32 = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
b64 = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
bigGP = [ pkgs.mpi ];
|
|
bigrquerystorage = with pkgs; [
|
|
grpc
|
|
protobuf
|
|
which
|
|
];
|
|
bioacoustics = [ pkgs.cmake ];
|
|
blosc = [ pkgs.pkg-config ];
|
|
cairoDevice = [ pkgs.pkg-config ];
|
|
cartogramR = [ pkgs.pkg-config ];
|
|
catSurv = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
caugi = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
caviarpd = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
chebpol = [ pkgs.pkg-config ];
|
|
ciflyr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
cit = [ pkgs.gsl ]; # for gsl-config
|
|
clarabel = [ pkgs.cargo ];
|
|
cld3 = [ pkgs.protobuf ];
|
|
clustermq = [ pkgs.pkg-config ];
|
|
coga = [ pkgs.gsl ]; # for gsl-config
|
|
cpp11bigwig = [ pkgs.curl ]; # for curl-config
|
|
crc32c = [
|
|
pkgs.which
|
|
pkgs.cmake
|
|
];
|
|
data_table = (
|
|
# added extra parentheses so that `keep-sorted` doesn't get tripped up
|
|
[
|
|
pkgs.pkg-config
|
|
]
|
|
++ lib.optional stdenv.hostPlatform.isDarwin pkgs.llvmPackages.openmp
|
|
);
|
|
datefixR = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
diseq = [ pkgs.gsl ]; # for gsl-config
|
|
diversitree = [ pkgs.gsl ]; # for gsl-config
|
|
drogonR = [ pkgs.pkg-config ];
|
|
dynr = [ pkgs.gsl ]; # for gsl-config
|
|
eaf = [ pkgs.gsl ]; # for gsl-config
|
|
econetwork = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
enderecobr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
eulerr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
exactextractr = [ pkgs.geos ]; # for geos-config
|
|
excursions = [ pkgs.gsl ]; # for gsl-config
|
|
fRLR = [ pkgs.gsl ]; # for gsl-config
|
|
fangs = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
fastgeojson = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
fcl = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
fftw = [ pkgs.pkg-config ];
|
|
fftwtools = [ pkgs.pkg-config ];
|
|
fingerPro = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
fio = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
flan = [ pkgs.gsl ]; # for gsl-config
|
|
flint = [ pkgs.pkg-config ];
|
|
flowPeaks = [ pkgs.gsl ]; # for gsl-config
|
|
fozziejoin = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
frailtyMMpen = [ pkgs.gsl ]; # for gsl-config
|
|
fraq = [ pkgs.pkg-config ];
|
|
fru = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
gadjid = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
gdalcubes = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
netcdf # for nc-config
|
|
];
|
|
gdalraster = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
];
|
|
gdtools = [ pkgs.pkg-config ];
|
|
gert = [ pkgs.pkg-config ];
|
|
gglinedensity = [ pkgs.cargo ];
|
|
gifski = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
git2r = [ pkgs.pkg-config ];
|
|
glpkAPI = [ pkgs.glpk ]; # detects prefix from glpsol binary
|
|
gridmicrotex = [ pkgs.pkg-config ];
|
|
gsl = [ pkgs.gsl ]; # for gsl-config
|
|
gslnls = [ pkgs.gsl ]; # for gsl-config
|
|
gtfsrealtime = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
h3o = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
hSDM = [ pkgs.gsl ]; # for gsl-config
|
|
harbinger = [ pkgs.glibcLocales ];
|
|
heck = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
hellorust = [ pkgs.cargo ];
|
|
hgwrr = [ pkgs.gsl ]; # for gsl-config
|
|
highs = [
|
|
pkgs.which
|
|
pkgs.cmake
|
|
];
|
|
hypergeo2 = [ pkgs.pkg-config ];
|
|
iBMQ = [ pkgs.gsl ]; # for gsl-config
|
|
image_textlinedetector = [ pkgs.pkg-config ];
|
|
imager = [ pkgs.pkg-config ];
|
|
immunoClust = [ pkgs.gsl ]; # for gsl-config
|
|
interpolation = [ pkgs.pkg-config ];
|
|
iscream = with pkgs; [
|
|
pkg-config
|
|
which
|
|
];
|
|
island = [ pkgs.gsl ]; # for gsl-config
|
|
jSDM = [ pkgs.gsl ]; # for gsl-config
|
|
jack = [ pkgs.pkg-config ];
|
|
kza = [ pkgs.pkg-config ];
|
|
libdeflate = with pkgs; [
|
|
cmake
|
|
pkg-config
|
|
];
|
|
libimath = [ pkgs.cmake ];
|
|
libipldr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
llmjson = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
lnmixsurv = [ pkgs.gsl ]; # for gsl-config
|
|
lpsymphony = with pkgs; [
|
|
pkg-config
|
|
gfortran
|
|
gettext
|
|
];
|
|
lwgeom = with pkgs; [
|
|
pkg-config
|
|
geos # for geos-config
|
|
];
|
|
magick = [ pkgs.pkg-config ];
|
|
markets = [ pkgs.gsl ]; # for gsl-config
|
|
mashr = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
mcrPioda = [ pkgs.gsl ]; # for gsl-config
|
|
minimaxALT = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
mixlink = [ pkgs.gsl ]; # for gsl-config
|
|
mixture = [ pkgs.gsl ]; # for gsl-config
|
|
mmpca = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
monoreg = [ pkgs.gsl ]; # for gsl-config
|
|
multibridge = [ pkgs.pkg-config ];
|
|
mvabund = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
mvst = [ pkgs.gsl ]; # for gsl-config
|
|
mwaved = [ pkgs.pkg-config ];
|
|
mx_crypto = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
n1qn1 = [ pkgs.gfortran ];
|
|
ncdf4 = [ pkgs.netcdf ]; # for nc-config
|
|
neojags = [ pkgs.pkg-config ];
|
|
netboost = [ pkgs.perl ];
|
|
nloptr = [ pkgs.pkg-config ];
|
|
npRmpi = with pkgs; [
|
|
pkg-config
|
|
prrte
|
|
];
|
|
odbc = [ pkgs.pkg-config ];
|
|
opencv = [ pkgs.pkg-config ];
|
|
orbweaver = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
osmnxr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
otelsdk = with pkgs; [
|
|
cmake
|
|
which
|
|
];
|
|
pander = with pkgs; [
|
|
pandoc
|
|
which
|
|
];
|
|
pbdMPI = [ pkgs.mpi ];
|
|
pbdPROF = [ pkgs.mpi ];
|
|
pbdZMQ = [ pkgs.pkg-config ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.which ];
|
|
pcaL1 = [ pkgs.pkg-config ];
|
|
pdfsigner = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
pdftools = [ pkgs.pkg-config ];
|
|
pexm = [ pkgs.jags ];
|
|
phytools = [ pkgs.which ];
|
|
png = [ pkgs.libpng ]; # for libpng-config
|
|
protolite = [ pkgs.protobuf ];
|
|
prqlr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
qqconf = [ pkgs.pkg-config ];
|
|
qspray = [ pkgs.pkg-config ];
|
|
rGEDI = [ pkgs.gsl ]; # for gsl-config
|
|
rJava = [ pkgs.stripJavaArchivesHook ];
|
|
ragg = [ pkgs.pkg-config ];
|
|
rapport = [ pkgs.which ];
|
|
rapportools = [ pkgs.which ];
|
|
ratioOfQsprays = [ pkgs.pkg-config ];
|
|
ravetools = [ pkgs.pkg-config ];
|
|
rbedrock = with pkgs; [
|
|
which
|
|
cmake
|
|
];
|
|
rbm25 = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rcontroll = [ pkgs.gsl ]; # for gsl-config
|
|
redux = [ pkgs.pkg-config ];
|
|
reprex = [ pkgs.which ];
|
|
resultant = [ pkgs.pkg-config ];
|
|
rgdal = [ pkgs.gdal ]; # for gdal-config
|
|
rgeos = [ pkgs.geos ]; # for geos-config
|
|
ridge = [ pkgs.gsl ]; # for gsl-config
|
|
rip_opencv = [ pkgs.pkg-config ];
|
|
rjags = [ pkgs.pkg-config ];
|
|
rlas = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
geos # for geos-config
|
|
];
|
|
rlibkriging = [ pkgs.cmake ];
|
|
rmatio = [ pkgs.pkg-config ];
|
|
rnetcarto = [ pkgs.gsl ]; # for gsl-config
|
|
roxigraph = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rpanel = [ pkgs.tclPackages.bwidget ];
|
|
rrd = [ pkgs.pkg-config ];
|
|
rsamplr = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rsbml = [ pkgs.pkg-config ];
|
|
rsgeo = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rshift = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rsvg = [ pkgs.pkg-config ];
|
|
rswipl = with pkgs; [
|
|
cmake
|
|
pkg-config
|
|
];
|
|
rtiktoken = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
rtracklayer = [ pkgs.pkg-config ];
|
|
runjags = [ pkgs.pkg-config ];
|
|
rzmq = [ pkgs.pkg-config ];
|
|
s2 = [ pkgs.pkg-config ];
|
|
salso = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
sbrl = [ pkgs.gsl ]; # for gsl-config
|
|
sceua = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
scip = with pkgs; [
|
|
cmake
|
|
which
|
|
];
|
|
scorematchingad = [ pkgs.cmake ];
|
|
sf = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
geos # for geos-config
|
|
];
|
|
showtext = [ pkgs.pkg-config ];
|
|
shrinkTVP = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
smam = [ pkgs.gsl ]; # for gsl-config
|
|
smcryptoR = with pkgs; [
|
|
cargo
|
|
rustc
|
|
which
|
|
];
|
|
smoothbp = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
socratadata = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
sodium = [ pkgs.pkg-config ];
|
|
spate = [ pkgs.pkg-config ];
|
|
sphereTessellation = [ pkgs.pkg-config ];
|
|
spopt = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
stpphawkes = [ pkgs.gsl ]; # for gsl-config via RcppGSL
|
|
string2path = [ pkgs.cargo ];
|
|
stringfish = [ pkgs.pkg-config ];
|
|
stringi = [ pkgs.pkg-config ];
|
|
sundialr = [ pkgs.cmake ];
|
|
survSNP = [ pkgs.gsl ]; # for gsl-config
|
|
surveyvoi = [ pkgs.pkg-config ];
|
|
symbolicQspray = [ pkgs.pkg-config ];
|
|
sysfonts = [ pkgs.pkg-config ];
|
|
systemfonts = [ pkgs.pkg-config ];
|
|
talib = [ pkgs.pkg-config ];
|
|
tergo = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
terra = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
geos # for geos-config
|
|
];
|
|
tesseract = [ pkgs.pkg-config ];
|
|
textshaping = [ pkgs.pkg-config ];
|
|
tfevents = [ pkgs.protobuf ];
|
|
tinyimg = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
tok = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
tomledit = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
unigd = [ pkgs.pkg-config ];
|
|
unix = [ pkgs.pkg-config ];
|
|
unsum = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
uuidx = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
vapour = with pkgs; [
|
|
pkg-config
|
|
gdal # for gdal-config
|
|
];
|
|
watcher = with pkgs; [
|
|
cmake
|
|
which
|
|
];
|
|
waysign = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
webp = [ pkgs.pkg-config ];
|
|
xactonomial = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
xml2 = [ pkgs.pkg-config ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.perl ];
|
|
xslt = [ pkgs.pkg-config ];
|
|
yaml12 = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
ymd = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
zoomerjoin = with pkgs; [
|
|
cargo
|
|
rustc
|
|
];
|
|
# keep-sorted end
|
|
};
|
|
|
|
packagesWithBuildInputs = {
|
|
# keep-sorted start block=yes
|
|
AMOUNTAIN = [ pkgs.gsl ];
|
|
Apollonius = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
ArrayExpressHTS = with pkgs; [
|
|
zlib
|
|
curl
|
|
which
|
|
];
|
|
BNSP = [ pkgs.gsl ];
|
|
BayesChange = [ pkgs.gsl ];
|
|
BayesSAE = [ pkgs.gsl ];
|
|
BayesVarSel = [ pkgs.gsl ];
|
|
BigDataStatMeth = [ pkgs.zlib ];
|
|
BinaryDosage = [ pkgs.zlib ];
|
|
BitSeq = [ pkgs.zlib ];
|
|
CNEr = with pkgs; [ zlib ];
|
|
Cairo = [ pkgs.cairo ];
|
|
CellBarcode = [ pkgs.zlib ];
|
|
ChemmineOB = with pkgs; [
|
|
eigen
|
|
openbabel
|
|
zlib
|
|
];
|
|
DEploid = [ pkgs.zlib ];
|
|
DEploid_utils = [ pkgs.zlib ];
|
|
DGP4LCF = [
|
|
pkgs.lapack
|
|
pkgs.blas
|
|
];
|
|
DiffBind = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
DropletUtils = [ pkgs.zlib ];
|
|
EHRmuse = [ pkgs.gsl ];
|
|
FLAMES = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
xz
|
|
];
|
|
GLAD = [ pkgs.gsl ];
|
|
GMMAT = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
];
|
|
GRAB = [ pkgs.zlib ];
|
|
GeneralizedWendland = [ pkgs.gsl ];
|
|
GeoFIS = with pkgs; [
|
|
mpfr
|
|
gmp
|
|
];
|
|
GrafGen = [ pkgs.zlib ];
|
|
HDF5Array = [ pkgs.zlib ];
|
|
HiCDCPlus = [ pkgs.zlib ];
|
|
HiCParser = [ pkgs.zlib ];
|
|
HiCseg = [ pkgs.gsl ];
|
|
HiSpaR = [ pkgs.armadillo ];
|
|
KFKSDS = [ pkgs.gsl ];
|
|
KSgeneral = [ pkgs.fftw ];
|
|
LOMAR = [ pkgs.gmp ];
|
|
Libra = [ pkgs.gsl ];
|
|
MAGEE = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
];
|
|
MedianaDesigner = [ pkgs.zlib ];
|
|
MethScope = with pkgs; [
|
|
ncurses
|
|
zlib
|
|
];
|
|
NanoMethViz = [ pkgs.zlib ];
|
|
OpenCL = with pkgs; [
|
|
opencl-clhpp
|
|
ocl-icd
|
|
];
|
|
PING = [ pkgs.gsl ];
|
|
PKI = [ pkgs.openssl ];
|
|
PROJ = [ pkgs.proj ];
|
|
PoissonBinomial = [ pkgs.fftw ];
|
|
PoissonMultinomial = [ pkgs.fftw ];
|
|
PopGenome = [ pkgs.zlib ];
|
|
QuasR = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
R2SWF = with pkgs; [
|
|
zlib
|
|
libpng
|
|
freetype
|
|
];
|
|
RAppArmor = lib.optionals stdenv.hostPlatform.isLinux [ pkgs.libapparmor ];
|
|
RFIF = [ pkgs.fftw ];
|
|
RGtk2 = [ pkgs.gtk2 ];
|
|
RITCH = [ pkgs.zlib ];
|
|
RKHSMetaMod = [ pkgs.gsl ];
|
|
RMark = [ pkgs.which ];
|
|
RNetCDF = with pkgs; [
|
|
netcdf
|
|
udunits
|
|
];
|
|
RNifti = [ pkgs.zlib ];
|
|
RNiftyReg = [ pkgs.zlib ];
|
|
RODBC = [ pkgs.libiodbc ];
|
|
RPostgres = with pkgs; [ libpq ];
|
|
RProtoBuf = with pkgs; [
|
|
protobuf
|
|
abseil-cpp
|
|
];
|
|
RPushbullet = [ pkgs.which ];
|
|
RQuantLib = with pkgs; [
|
|
boost
|
|
quantlib
|
|
];
|
|
RSclient = [ pkgs.openssl ];
|
|
RVowpalWabbit = with pkgs; [
|
|
boost
|
|
zlib
|
|
];
|
|
Rarr = [ pkgs.zlib ];
|
|
RationalMatrix = [ pkgs.gmp ];
|
|
Rbowtie = with pkgs; [ zlib ];
|
|
Rbowtie2 = [ pkgs.zlib ];
|
|
Rbwa = [ pkgs.zlib ];
|
|
RcppAlgos = [ pkgs.gmp ];
|
|
RcppBigIntAlgos = [ pkgs.gmp ];
|
|
RcppCNPy = [ pkgs.zlib ];
|
|
RcppCWB = with pkgs; [
|
|
pcre2
|
|
glib
|
|
];
|
|
RcppPlanc = with pkgs; [
|
|
hwloc
|
|
hdf5
|
|
];
|
|
RcppZiggurat = [ pkgs.gsl ];
|
|
Rfastp = with pkgs; [
|
|
xz
|
|
bzip2
|
|
zlib
|
|
];
|
|
Rglpk = [ pkgs.glpk ];
|
|
Rhdf5lib = with pkgs; [
|
|
curl
|
|
zlib
|
|
];
|
|
Rhtslib = with pkgs; [
|
|
bzip2
|
|
curl
|
|
xz
|
|
zlib
|
|
];
|
|
Rlibeemd = [ pkgs.gsl ];
|
|
Rmmquant = [ pkgs.zlib ];
|
|
Rmpfr = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
Rmpi = [ pkgs.mpi ];
|
|
RoBMA = [ pkgs.jags ];
|
|
RoBSA = [ pkgs.jags ];
|
|
Rpoppler = [ pkgs.poppler ];
|
|
Rsamtools = with pkgs; [
|
|
bzip2
|
|
xz
|
|
zlib
|
|
];
|
|
Rserve = [ pkgs.openssl ];
|
|
Rssa = [ pkgs.fftw ];
|
|
Rsubread = [ pkgs.zlib ];
|
|
Rsymphony = with pkgs; [
|
|
symphony
|
|
doxygen
|
|
graphviz
|
|
subversion
|
|
cgl
|
|
clp
|
|
];
|
|
Rwbo = [ pkgs.zlib ];
|
|
SICtools = with pkgs; [
|
|
zlib
|
|
ncurses
|
|
];
|
|
SLmetrics = [ pkgs.zlib ];
|
|
SPARSEMODr = [ pkgs.gsl ];
|
|
SemiCompRisks = [ pkgs.gsl ];
|
|
ShortRead = [ pkgs.zlib ];
|
|
Signac = [ pkgs.zlib ];
|
|
SuperGauss = [ pkgs.fftw ];
|
|
SynExtend = [ pkgs.zlib ];
|
|
TAQMNGR = [ pkgs.zlib ];
|
|
TDA = [ pkgs.gmp ];
|
|
TransView = with pkgs; [
|
|
xz
|
|
bzip2
|
|
zlib
|
|
];
|
|
V8 = with pkgs; [
|
|
nodejs-slim_22.libv8
|
|
# This should be the same icu version as the one used by nodejs
|
|
# See: pkgs/development/web/nodejs/nodejs.nix
|
|
icu
|
|
];
|
|
VariantAnnotation = with pkgs; [
|
|
zlib
|
|
curl
|
|
bzip2
|
|
xz
|
|
];
|
|
XML = with pkgs; [
|
|
libtool
|
|
libxml2
|
|
xmlsec
|
|
libxslt
|
|
];
|
|
XVector = [ pkgs.zlib ];
|
|
XYomics = [ pkgs.boost ];
|
|
adbcpostgresql = with pkgs; [
|
|
readline
|
|
zlib
|
|
openssl
|
|
libkrb5
|
|
openpam
|
|
libpq
|
|
];
|
|
adimpro = with pkgs; [
|
|
which
|
|
xdpyinfo
|
|
];
|
|
affyPLM = [ pkgs.zlib ];
|
|
affyio = [ pkgs.zlib ];
|
|
arcgisplaces = [ pkgs.openssl ];
|
|
archive = [ pkgs.libarchive ];
|
|
arrangements = with pkgs; [ gmp ];
|
|
asciicast = with pkgs; [
|
|
# deps for `R CMD config --ldflags`
|
|
bzip2
|
|
icu
|
|
libdeflate
|
|
xz
|
|
zlib
|
|
zstd
|
|
];
|
|
audio = [ pkgs.portaudio ];
|
|
bamsignals = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
baseline = [ pkgs.lapack ];
|
|
bayesWatch = [ pkgs.boost ];
|
|
bbl = with pkgs; [ gsl ];
|
|
bgx = [ pkgs.boost ];
|
|
bigmemory = lib.optionals stdenv.hostPlatform.isLinux [ pkgs.libuuid ];
|
|
bigrquerystorage = with pkgs; [
|
|
grpc
|
|
protobuf
|
|
];
|
|
bigsnpr = [ pkgs.zlib ];
|
|
bio3d = [ pkgs.zlib ];
|
|
bioacoustics = [ pkgs.fftw ];
|
|
blosc = [ pkgs.c-blosc ];
|
|
bnpmr = [ pkgs.gsl ];
|
|
cairoDevice = [ pkgs.gtk2 ];
|
|
cartogramR = [ pkgs.fftw ];
|
|
catSurv = [ pkgs.gsl ];
|
|
ccfindR = [ pkgs.gsl ];
|
|
chebpol = with pkgs; [
|
|
fftw
|
|
gsl
|
|
];
|
|
cit = [ pkgs.gsl ];
|
|
cld3 = [ pkgs.protobuf ];
|
|
clustermq = [ pkgs.zeromq ];
|
|
cmtkr = [ pkgs.zlib ];
|
|
cpp11bigwig = [ pkgs.zlib ];
|
|
cpp11qpdf = with pkgs; [
|
|
libjpeg
|
|
zlib
|
|
];
|
|
crandep = [ pkgs.gsl ];
|
|
csaw = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
curl
|
|
];
|
|
curl = [ pkgs.curl ];
|
|
data_table = [ pkgs.zlib ];
|
|
deepSNV = with pkgs; [
|
|
xz
|
|
bzip2
|
|
zlib
|
|
];
|
|
devEMF = [ pkgs.zlib ];
|
|
diffHic = with pkgs; [
|
|
xz
|
|
bzip2
|
|
];
|
|
diversitree = [ pkgs.fftw ];
|
|
divest = [ pkgs.zlib ];
|
|
drogonR = with pkgs; [
|
|
openssl
|
|
zlib
|
|
];
|
|
econetwork = [ pkgs.gsl ];
|
|
eds = [ pkgs.zlib ];
|
|
epialleleR = with pkgs; [
|
|
xz
|
|
bzip2
|
|
zlib
|
|
];
|
|
fastpng = [ pkgs.zlib ];
|
|
fftw = [ pkgs.fftw ];
|
|
fftwtools = [ pkgs.fftw ];
|
|
fingerPro = [ pkgs.gsl ];
|
|
flan = [ pkgs.gsl ];
|
|
flint = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
flint
|
|
];
|
|
flowWorkspace = [ pkgs.zlib ];
|
|
frailtyMMpen = [ pkgs.gsl ];
|
|
fraq = with pkgs; [
|
|
zlib
|
|
zstd
|
|
];
|
|
fs = [ pkgs.libuv ];
|
|
gamstransfer = [ pkgs.zlib ];
|
|
gaston = with pkgs; [ zlib ];
|
|
gdalcubes = with pkgs; [
|
|
proj
|
|
sqlite
|
|
];
|
|
gdalraster = [ pkgs.proj ];
|
|
gdtools =
|
|
with pkgs;
|
|
[
|
|
cairo
|
|
fontconfig
|
|
freetype
|
|
]
|
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
|
expat
|
|
libxdmcp
|
|
];
|
|
gert = [ pkgs.libgit2 ];
|
|
gfilogisreg = [ pkgs.gmp ];
|
|
ggiraph = [ pkgs.libpng ];
|
|
git2r = [ pkgs.libgit2 ];
|
|
glpkAPI = [ pkgs.gmp ];
|
|
gmapR = [ pkgs.zlib ];
|
|
gmp = [ pkgs.gmp ];
|
|
gpg = [ pkgs.gpgme ];
|
|
gpuMagic = [ pkgs.ocl-icd ];
|
|
gridGraphics = [ pkgs.which ];
|
|
gridmicrotex = [ pkgs.freetype ];
|
|
h5vc = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
xz
|
|
];
|
|
hadron = [ pkgs.gsl ];
|
|
haven = [ pkgs.zlib ];
|
|
hipread = [ pkgs.zlib ];
|
|
httpuv = [ pkgs.zlib ];
|
|
hypergeo2 = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
iBMQ = [ pkgs.gsl ];
|
|
igraph = with pkgs; [
|
|
gmp
|
|
libxml2
|
|
glpk
|
|
];
|
|
ijtiff = with pkgs; [
|
|
libtiff
|
|
libjpeg
|
|
zlib
|
|
];
|
|
image_CannyEdges = with pkgs; [
|
|
fftw
|
|
libpng
|
|
];
|
|
image_textlinedetector = [ pkgs.opencv ];
|
|
imager = with pkgs; [
|
|
fftw
|
|
libtiff
|
|
libx11
|
|
];
|
|
imbibe = [ pkgs.zlib ];
|
|
immunoClust = [ pkgs.gsl ];
|
|
impARI = [ pkgs.boost ];
|
|
interpolation = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
iscream = with pkgs; [
|
|
bzip2
|
|
xz
|
|
zlib
|
|
];
|
|
jack = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
jackalope = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
jpeg = [ pkgs.libjpeg ];
|
|
jqr = [ pkgs.jq ];
|
|
knowYourCG = with pkgs; [
|
|
zlib
|
|
ncurses
|
|
];
|
|
kza = [ pkgs.fftw ];
|
|
landsepi = [ pkgs.gsl ];
|
|
largeList = [ pkgs.zlib ];
|
|
leidenAlg = [ pkgs.gmp ];
|
|
libdeflate = [ pkgs.libdeflate ];
|
|
libstable4u = [ pkgs.gsl ];
|
|
libstableR = [ pkgs.gsl ];
|
|
littler = with pkgs; [
|
|
# deps for `R CMD config --ldflags`
|
|
bzip2
|
|
icu
|
|
libdeflate
|
|
xz
|
|
zlib
|
|
zstd
|
|
];
|
|
lpsymphony = with pkgs; [
|
|
symphony
|
|
cgl
|
|
clp
|
|
];
|
|
lstar = [ pkgs.zlib ];
|
|
lwgeom = [ pkgs.proj ];
|
|
mBvs = [ pkgs.gsl ];
|
|
maftools = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
xz
|
|
];
|
|
magick = [ pkgs.imagemagick ];
|
|
mappoly = [ pkgs.zlib ];
|
|
markets = [ pkgs.gsl ];
|
|
matchingMarkets = [ pkgs.zlib ];
|
|
methylKit = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
xz
|
|
];
|
|
milorGWAS = [ pkgs.zlib ];
|
|
minimaxALT = [ pkgs.gsl ];
|
|
mitoClone2 = with pkgs; [
|
|
xz
|
|
bzip2
|
|
zlib
|
|
];
|
|
mixcat = [ pkgs.gsl ];
|
|
multibridge = [ pkgs.mpfr ];
|
|
mutscan = [ pkgs.zlib ];
|
|
mvabund = [ pkgs.gsl ];
|
|
mwaved = [ pkgs.fftw ];
|
|
nanonext = with pkgs; [
|
|
mbedtls
|
|
nng
|
|
];
|
|
nat = [ pkgs.which ];
|
|
nat_templatebrains = [ pkgs.which ];
|
|
ncdfFlow = [ pkgs.zlib ];
|
|
ndjson = [ pkgs.zlib ];
|
|
neojags = [ pkgs.jags ];
|
|
nloptr = [ pkgs.nlopt ];
|
|
npRmpi = [ pkgs.mpi ];
|
|
odbc = [ pkgs.unixodbc ];
|
|
oligo = [ pkgs.zlib ];
|
|
otelsdk = with pkgs; [
|
|
curl
|
|
protobuf
|
|
zlib
|
|
];
|
|
pak = [ pkgs.curl ];
|
|
parseLatex = [ pkgs.icu ];
|
|
pbdZMQ = [ pkgs.zeromq ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.darwin.binutils ];
|
|
pcaL1 = [ pkgs.clp ];
|
|
pdftools = [ pkgs.poppler ];
|
|
pgenlibr = [ pkgs.zlib ];
|
|
pliman = with pkgs; [
|
|
fftw
|
|
libpng
|
|
];
|
|
png = [ pkgs.libpng ];
|
|
podkat = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
poisbinom = [ pkgs.fftw ];
|
|
pqsfinder = [ pkgs.boost ];
|
|
proj4 = [ pkgs.proj ];
|
|
protolite = [ pkgs.protobuf ];
|
|
psbcGroup = [ pkgs.gsl ];
|
|
qckitfastq = [ pkgs.zlib ];
|
|
qpdf = with pkgs; [
|
|
libjpeg
|
|
zlib
|
|
];
|
|
qqconf = [ pkgs.fftw ];
|
|
qrqc = [ pkgs.zlib ];
|
|
qspray = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
rDEA = [ pkgs.glpk ];
|
|
rGEDI = with pkgs; [
|
|
libgeotiff
|
|
libaec
|
|
zlib
|
|
hdf5
|
|
];
|
|
rJPSGCS = [ pkgs.zlib ];
|
|
rJava = with pkgs; [
|
|
# deps for `R CMD config --ldflags`
|
|
bzip2
|
|
icu
|
|
libdeflate
|
|
xz
|
|
zstd
|
|
zlib
|
|
];
|
|
raer = with pkgs; [
|
|
zlib
|
|
xz
|
|
bzip2
|
|
];
|
|
ragg =
|
|
with pkgs;
|
|
[
|
|
freetype
|
|
libpng
|
|
libtiff
|
|
zlib
|
|
libjpeg
|
|
bzip2
|
|
libwebp
|
|
]
|
|
++ lib.optional stdenv.hostPlatform.isDarwin lerc;
|
|
ratioOfQsprays = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
ravetools = [ pkgs.fftw ];
|
|
rawrr = [ pkgs.mono ];
|
|
rbedrock = [ pkgs.zlib ];
|
|
rcdd = [ pkgs.gmp ];
|
|
redux = [ pkgs.hiredis ];
|
|
resultant = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
rgdal = [ pkgs.proj ];
|
|
rgl = with pkgs; [
|
|
libGLU
|
|
libGL
|
|
libx11
|
|
freetype
|
|
libpng
|
|
];
|
|
rhdf5filters = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
];
|
|
ridge = [ pkgs.gsl ];
|
|
rip_opencv = [ pkgs.opencv ];
|
|
rjags = [ pkgs.jags ];
|
|
rlas = with pkgs; [
|
|
proj
|
|
sqlite
|
|
];
|
|
rmatio = [ pkgs.zlib ];
|
|
rmumps = with pkgs; [ zlib ];
|
|
rrd = [ pkgs.rrdtool ];
|
|
rsbml = [ pkgs.libsbml ];
|
|
rsvg = [ pkgs.librsvg ];
|
|
rswipl = with pkgs; [
|
|
ncurses
|
|
libxcrypt
|
|
zlib
|
|
];
|
|
rtk = [ pkgs.zlib ];
|
|
rtmpt = [ pkgs.gsl ];
|
|
rtracklayer = with pkgs; [
|
|
zlib
|
|
curl
|
|
];
|
|
runjags = [ pkgs.jags ];
|
|
rvMF = [ pkgs.mpfr ];
|
|
rvg = [ pkgs.libpng ];
|
|
rzmq = [ pkgs.zeromq ];
|
|
s2 = with pkgs; [
|
|
abseil-cpp
|
|
openssl
|
|
];
|
|
saeMSPE = [ pkgs.gsl ];
|
|
sbrl = [ pkgs.gmp ];
|
|
scModels = [ pkgs.mpfr ];
|
|
scPipe = with pkgs; [
|
|
bzip2
|
|
xz
|
|
zlib
|
|
];
|
|
screenCounter = [ pkgs.zlib ];
|
|
sdcTable = with pkgs; [
|
|
gmp
|
|
glpk
|
|
];
|
|
seqTools = [ pkgs.zlib ];
|
|
seqbias = with pkgs; [
|
|
zlib
|
|
bzip2
|
|
xz
|
|
];
|
|
seqinr = [ pkgs.zlib ];
|
|
seqminer = with pkgs; [
|
|
bzip2
|
|
sqlite
|
|
zlib
|
|
zstd
|
|
];
|
|
sf = with pkgs; [
|
|
proj
|
|
sqlite
|
|
];
|
|
showtext = with pkgs; [
|
|
zlib
|
|
libpng
|
|
freetype
|
|
];
|
|
simplexreg = [ pkgs.gsl ];
|
|
snpStats = [ pkgs.zlib ];
|
|
sodium = [ pkgs.libsodium ];
|
|
spFW = [ pkgs.fftw ];
|
|
spaMM = [ pkgs.gsl ];
|
|
sparkwarc = [ pkgs.zlib ];
|
|
spate = [ pkgs.fftw ];
|
|
specklestar = [ pkgs.fftw ];
|
|
sphereTessellation = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
spp = with pkgs; [ zlib ];
|
|
ssh = with pkgs; [ libssh ];
|
|
strawr = [ pkgs.curl ];
|
|
stringfish = [ pkgs.pcre2 ];
|
|
stringi = [ pkgs.icu74 ];
|
|
stsm = [ pkgs.gsl ];
|
|
sundialr = [ pkgs.sundials ];
|
|
surveyvoi = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
svKomodo = [ pkgs.which ];
|
|
svglite = [ pkgs.libpng ];
|
|
symbolicQspray = with pkgs; [
|
|
gmp
|
|
mpfr
|
|
];
|
|
symengine = with pkgs; [
|
|
mpfr
|
|
symengine
|
|
flint
|
|
];
|
|
sysfonts = with pkgs; [
|
|
zlib
|
|
libpng
|
|
freetype
|
|
];
|
|
systemfonts = with pkgs; [
|
|
fontconfig
|
|
freetype
|
|
];
|
|
talib = [ pkgs.ta-lib ];
|
|
tcltk2 = with pkgs; [
|
|
tcl
|
|
tk
|
|
];
|
|
telegramR = [ pkgs.openssl ];
|
|
terra = with pkgs; [
|
|
proj
|
|
sqlite
|
|
];
|
|
tesseract = with pkgs; [
|
|
tesseract
|
|
leptonica
|
|
];
|
|
textshaping = with pkgs; [
|
|
harfbuzz
|
|
freetype
|
|
fribidi
|
|
libpng
|
|
];
|
|
tfevents = [ pkgs.protobuf ];
|
|
themetagenomics = [ pkgs.zlib ];
|
|
tidypopgen = [ pkgs.zlib ];
|
|
tiff = [ pkgs.libtiff ];
|
|
tikzDevice = with pkgs; [
|
|
which
|
|
texliveMedium
|
|
];
|
|
tkrplot = with pkgs; [
|
|
libx11
|
|
tk
|
|
];
|
|
topicmodels = [ pkgs.gsl ];
|
|
transmogR = [ pkgs.zlib ];
|
|
udunits2 = with pkgs; [
|
|
udunits
|
|
expat
|
|
];
|
|
ulid = [ pkgs.zlib ];
|
|
unigd =
|
|
with pkgs;
|
|
[
|
|
cairo
|
|
libpng
|
|
]
|
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
|
expat
|
|
libxdmcp
|
|
];
|
|
units = [ pkgs.udunits ];
|
|
unix = lib.optionals stdenv.hostPlatform.isLinux [ pkgs.libapparmor ];
|
|
unrtf = with pkgs; [
|
|
# deps from $(LIBS) (same as `R CMD config --ldflags`)
|
|
bzip2
|
|
icu
|
|
libdeflate
|
|
xz
|
|
zlib
|
|
zstd
|
|
];
|
|
vapour = [ pkgs.proj ];
|
|
vcfR = with pkgs; [ zlib ];
|
|
vcfppR = with pkgs; [
|
|
bzip2
|
|
curl
|
|
libdeflate
|
|
xz
|
|
zlib
|
|
];
|
|
vdiffr = [ pkgs.libpng ];
|
|
webp = [ pkgs.libwebp ];
|
|
writexl = with pkgs; [ zlib ];
|
|
xdvir = [ pkgs.freetype ];
|
|
xml2 = [ pkgs.libxml2 ];
|
|
xslt =
|
|
with pkgs;
|
|
[
|
|
libxslt
|
|
libxml2
|
|
]
|
|
++ lib.optionals stdenv.hostPlatform.isDarwin [ xz ];
|
|
yyjsonr = [ pkgs.zlib ];
|
|
zlib = [ pkgs.zlib ];
|
|
# keep-sorted end
|
|
};
|
|
|
|
packagesRequiringX = [
|
|
# keep-sorted start
|
|
"AnalyzeFMRI"
|
|
"AnnotLists"
|
|
"BCA"
|
|
"CommunityCorrelogram"
|
|
"DeducerPlugInExample"
|
|
"DeducerPlugInScaling"
|
|
"DeducerSpatial"
|
|
"DeducerSurvival"
|
|
"DeducerText"
|
|
"Demerelate"
|
|
"EasyqpcR"
|
|
"GGEBiplotGUI"
|
|
"HiveR"
|
|
"Meth27QC"
|
|
"OligoSpecificitySystem"
|
|
"RSurvey"
|
|
"RandomFields"
|
|
"RclusTool"
|
|
"RcmdrPlugin_FuzzyClust"
|
|
"RcmdrPlugin_IPSUR"
|
|
"RcmdrPlugin_PcaRobust"
|
|
"RcmdrPlugin_SCDA"
|
|
"RcmdrPlugin_SLC"
|
|
"RcmdrPlugin_coin"
|
|
"RcmdrPlugin_lfstat"
|
|
"RcmdrPlugin_plotByGroup"
|
|
"RcmdrPlugin_pointG"
|
|
"RcmdrPlugin_sampling"
|
|
"RcmdrPlugin_steepness"
|
|
"SOLOMON"
|
|
"SimpleTable"
|
|
"SyNet"
|
|
"TTAinterfaceTrendAnalysis"
|
|
"VecStatGraphs3D"
|
|
"analogueExtra"
|
|
"asbio"
|
|
"biplotbootGUI"
|
|
"cairoDevice"
|
|
"cncaGUI"
|
|
"dave"
|
|
"diveR"
|
|
"dpa"
|
|
"dynamicGraph"
|
|
"exactLoglinTest"
|
|
"fisheyeR"
|
|
"forams"
|
|
"forensim"
|
|
"gWidgets2RGtk2"
|
|
"gWidgets2tcltk"
|
|
"gsubfn"
|
|
"iClick"
|
|
"iDynoR"
|
|
"ic50"
|
|
"iplots"
|
|
"likeLTD"
|
|
"loon"
|
|
"loon_ggplot"
|
|
"loon_shiny"
|
|
"loon_tourr"
|
|
"mixsep"
|
|
"multibiplotGUI"
|
|
"optbdmaeAT"
|
|
"optrcdmaeAT"
|
|
"paleoMAS"
|
|
"rfviz"
|
|
"rich"
|
|
"simba"
|
|
"soptdmaeA"
|
|
"strvalidator"
|
|
"stylo"
|
|
"switchboard"
|
|
"tkImgR"
|
|
"twiddler"
|
|
"uHMM"
|
|
# keep-sorted end
|
|
];
|
|
|
|
packagesRequiringHome = [
|
|
# keep-sorted start
|
|
"ACNE"
|
|
"APAlyzer"
|
|
"BAT"
|
|
"CaDrA"
|
|
"CoTiMA"
|
|
"DiceView"
|
|
"EstMix"
|
|
"GNOSIS"
|
|
"GapAnalysis"
|
|
"MSnID"
|
|
"OmnipathR"
|
|
"PCRA"
|
|
"PECA"
|
|
"PKbioanalysis"
|
|
"PSCBS"
|
|
"Patterns"
|
|
"PhIPData"
|
|
"Quartet"
|
|
"RKorAPClient"
|
|
"R_cache"
|
|
"R_filesets"
|
|
"R_rsp"
|
|
"Rogue"
|
|
"ShinyQuickStarter"
|
|
"SpatialDecon"
|
|
"TBRDist"
|
|
"TIN"
|
|
"TotalCopheneticIndex"
|
|
"TreeDist"
|
|
"TreeSearch"
|
|
"TreeTools"
|
|
"aroma_affymetrix"
|
|
"aroma_cn"
|
|
"aroma_core"
|
|
"avotrex"
|
|
"beer"
|
|
"biocthis"
|
|
"calmate"
|
|
"ceramic"
|
|
"cfdnakit"
|
|
"connections"
|
|
"covidmx"
|
|
"csodata"
|
|
"dataverse"
|
|
"facmodTS"
|
|
"fgga"
|
|
"fixest"
|
|
"fulltext"
|
|
"fwtraits"
|
|
"gasanalyzer"
|
|
"ggiraph"
|
|
"iemisc"
|
|
"immuneSIM"
|
|
"margaret"
|
|
"mastif"
|
|
"matlab2r"
|
|
"orthGS"
|
|
"pannotator"
|
|
"paxtoolsr"
|
|
"pins"
|
|
"precommit"
|
|
"protGear"
|
|
"rdss"
|
|
"ready4"
|
|
"red"
|
|
"repmis"
|
|
"salso"
|
|
"scholar"
|
|
"shinymeta"
|
|
"shinyobjects"
|
|
"stepR"
|
|
"styler"
|
|
"systemPipeShiny"
|
|
"tabs"
|
|
"teal_code"
|
|
"wppi"
|
|
# keep-sorted end
|
|
];
|
|
|
|
packagesToSkipCheck = [
|
|
# keep-sorted start
|
|
"ReactomeContentService4R" # tries to connect to Reactome
|
|
"coMethDMR" # tries to connect to ExperimentHub
|
|
"multiMiR" # tries to connect to DB
|
|
"rfaRm" # tries to connect to Ebi
|
|
"snapcount" # tries to connect to snaptron.cs.jhu.edu
|
|
# keep-sorted end
|
|
];
|
|
|
|
# Packages which cannot be installed due to lack of dependencies or other reasons.
|
|
brokenPackages = [
|
|
# keep-sorted start
|
|
"HIBAG"
|
|
"HierO"
|
|
"HilbertVisGUI" # depends on the deprecated gtk2 via gtkmm2
|
|
"HiveR"
|
|
"NetLogoR"
|
|
"av"
|
|
"minired" # deprecated on CRAN
|
|
"netboost" # opens store path in append mode
|
|
"valse"
|
|
# keep-sorted end
|
|
|
|
# Impure network access during build
|
|
# keep-sorted start
|
|
"BulkSignalR"
|
|
"switchr"
|
|
"tiledb"
|
|
"waddR"
|
|
# keep-sorted end
|
|
|
|
# ExperimentHub dependents, require net access during build
|
|
# keep-sorted start
|
|
"CTexploreR"
|
|
"DuoClustering2018"
|
|
"FieldEffectCrc"
|
|
"GenomicDistributionsData"
|
|
"HDCytoData"
|
|
"HMP16SData"
|
|
"PANTHER_db"
|
|
"RNAmodR_Data"
|
|
"SCATEData"
|
|
"SingleMoleculeFootprintingData"
|
|
"TabulaMurisData"
|
|
"benchmarkfdrData2019"
|
|
"bodymapRat"
|
|
"clustifyrdatahub"
|
|
"depmap"
|
|
"emtdata"
|
|
"hpar"
|
|
"metaboliteIDmapping"
|
|
"msigdb"
|
|
"muscData"
|
|
"nullrangesData"
|
|
"org_Mxanthus_db"
|
|
"scpdata"
|
|
"signatureSearch"
|
|
# keep-sorted end
|
|
];
|
|
|
|
otherOverrides = old: new: {
|
|
# keep-sorted start block=yes newline_separated=yes
|
|
ACME = old.ACME.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# Avoid incompatible pointer type error
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-incompatible-pointer-types";
|
|
};
|
|
});
|
|
|
|
AneuFinder = old.AneuFinder.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace src/utility.cpp src/densities.cpp src/loghmm.cpp src/scalehmm.cpp \
|
|
--replace-fail "Calloc(" "R_Calloc(" \
|
|
--replace-fail "Free(" "R_Free("
|
|
'';
|
|
});
|
|
|
|
BiocParallel = old.BiocParallel.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE =
|
|
attrs.env.NIX_CFLAGS_COMPILE
|
|
+ lib.optionalString stdenv.hostPlatform.isDarwin " -Wno-error=missing-template-arg-list-after-template-kw";
|
|
};
|
|
});
|
|
|
|
ChIPXpress = old.ChIPXpress.override { hydraPlatforms = [ ]; };
|
|
|
|
ChemmineOB = old.ChemmineOB.overrideAttrs (attrs: {
|
|
# pkg-config knows openbabel-3 without the .0
|
|
# Eigen3 is also looked for in the wrong location
|
|
# pointer was changed in newer version of openbabel:
|
|
# https://github.com/openbabel/openbabel/commit/305a6fd3183540e4a8ae1d79d10bf1860e6aa373
|
|
postPatch = ''
|
|
substituteInPlace configure \
|
|
--replace-fail openbabel-3.0 openbabel-3
|
|
substituteInPlace src/Makevars.in \
|
|
--replace-fail "-I/usr/include/eigen3" "-I${pkgs.eigen}/include/eigen3"
|
|
substituteInPlace src/ChemmineOB.cpp \
|
|
--replace-fail "obsharedptr<" "std::shared_ptr<"
|
|
'';
|
|
|
|
# copied from fastnlo-toolkit:
|
|
# None of our currently packaged versions of swig are C++17-friendly
|
|
# Use a workaround from https://github.com/swig/swig/issues/1538
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE =
|
|
(attrs.env.NIX_CFLAGS_COMPILE or "")
|
|
+ lib.optionalString stdenv.hostPlatform.isDarwin " -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES";
|
|
};
|
|
});
|
|
|
|
FLAMES = old.FLAMES.overrideAttrs (attrs: {
|
|
patches = [ ./patches/FLAMES.patch ];
|
|
});
|
|
|
|
FlexReg = old.FlexReg.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# needed to avoid "log limit exceeded" on Hydra
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
|
|
};
|
|
|
|
# consumes a lot of resources in parallel
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
HilbertVis = old.HilbertVis.overrideAttrs (attrs: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
JavaGD = old.JavaGD.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
export JAVA_CPPFLAGS=-I${pkgs.jdk}/include/
|
|
export JAVA_HOME=${pkgs.jdk}
|
|
'';
|
|
});
|
|
|
|
MANOR = old.MANOR.overrideAttrs (attrs: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
ModelMetrics = old.ModelMetrics.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE =
|
|
attrs.env.NIX_CFLAGS_COMPILE + lib.optionalString stdenv.hostPlatform.isDarwin " -fopenmp";
|
|
};
|
|
});
|
|
|
|
NGCHM = old.NGCHM.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace "inst/base.config/conf.d/01-server-protocol-scl.R" \
|
|
--replace-fail \
|
|
"/bin/hostname" "${lib.getBin pkgs.hostname}/bin/hostname"
|
|
'';
|
|
});
|
|
|
|
OpenMx = old.OpenMx.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# needed to avoid "log limit exceeded" on Hydra
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
|
|
};
|
|
});
|
|
|
|
PICS = old.PICS.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
# https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
|
|
substituteInPlace "src/segment.c" \
|
|
--replace-fail "Calloc" "R_Calloc"
|
|
'';
|
|
});
|
|
|
|
RAppArmor = old.RAppArmor.overrideAttrs (attrs: {
|
|
postPatch = lib.optionalString stdenv.hostPlatform.isLinux ''
|
|
# ignore apparmor detection logic
|
|
substituteInPlace configure \
|
|
--replace-fail '[ ! -e "/sys/module/apparmor" ]' 'false'
|
|
'';
|
|
});
|
|
|
|
RBioFormats = old.RBioFormats.overrideAttrs (attrs: {
|
|
# 1. Never download the jar file
|
|
# 2. Use jar from pkgs.bftools instead
|
|
# 3. Break the build if versions don't match
|
|
propagatedBuildInputs = (attrs.propagatedBuildInputs or [ ]) ++ [ pkgs.bftools ];
|
|
|
|
postPatch = ''
|
|
substituteInPlace "R/zzz.R" \
|
|
--replace-fail '!file.exists(bf_jar)' 'FALSE' \
|
|
--replace-fail \
|
|
'.jpackage(pkg, lib.loc = lib, morePaths = c(jars, bf_jar))' \
|
|
'.jpackage(pkg, lib.loc = lib, morePaths = union(jars, "${lib.getBin pkgs.bftools}/share/java/bioformats_package.jar"))' \
|
|
--replace-fail 'bf_jar <-' 'stopifnot(bf_ver == "${pkgs.bftools.version}");bf_jar <-'
|
|
'';
|
|
|
|
# Ensure that bftools version matches that in the package DESCRIPTION
|
|
preInstall = ''
|
|
rbf_version="$(sed -n 's/^BioFormats: //p' DESCRIPTION)"
|
|
bf_version="${pkgs.bftools.version}"
|
|
if [ "$rbf_version" != "$bf_version" ]; then
|
|
echo "BioFormats version mismatch detected!"
|
|
echo "RBioformats needs: $rbf_version"
|
|
echo "bftools provides: $bf_version"
|
|
exit 1
|
|
fi
|
|
'';
|
|
});
|
|
|
|
ROracle = old.ROracle.overrideAttrs (attrs: {
|
|
configureFlags = [
|
|
"--with-oci-lib=${lib.getLib pkgs.oracle-instantclient}/lib"
|
|
"--with-oci-inc=${lib.getDev pkgs.oracle-instantclient}/include"
|
|
];
|
|
});
|
|
|
|
RProtoBuf = old.RProtoBuf.overrideAttrs (attrs: {
|
|
configureFlags = [ "ac_cv_prog_cxx_cxx11=" ];
|
|
});
|
|
|
|
RVowpalWabbit = old.RVowpalWabbit.overrideAttrs (attrs: {
|
|
configureFlags = [
|
|
"--with-boost=${lib.getDev pkgs.boost}"
|
|
"--with-boost-libdir=${lib.getLib pkgs.boost}/lib"
|
|
];
|
|
});
|
|
|
|
RandomFieldsUtils = old.RandomFieldsUtils.override {
|
|
platforms = lib.platforms.x86_64 ++ lib.platforms.x86;
|
|
};
|
|
|
|
Rbwa = old.Rbwa.overrideAttrs (attrs: {
|
|
# Parallel build cleans up *.o before they can be packed in a library
|
|
postPatch = ''
|
|
substituteInPlace src/Makefile --replace-fail \
|
|
"all:\$(PROG) ../inst/bwa clean" \
|
|
"all:\$(PROG) ../inst/bwa"
|
|
'';
|
|
});
|
|
|
|
Rdisop = old.Rdisop.overrideAttrs (_: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
Rhdf5lib =
|
|
let
|
|
hdf5 = pkgs.hdf5.overrideAttrs (attrs: {
|
|
cmakeFlags = attrs.cmakeFlags ++ [ "-DHDF5_ENABLE_ROS3_VFD:BOOL=TRUE" ];
|
|
buildInputs = attrs.buildInputs ++ [ pkgs.curl ];
|
|
postInstall = attrs.postInstall or "" + ''
|
|
cp src/libhdf5.settings $dev/lib
|
|
'';
|
|
});
|
|
in
|
|
old.Rhdf5lib.overrideAttrs (attrs: {
|
|
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
|
|
hdf5
|
|
pkgs.libaec
|
|
];
|
|
patches = [ ./patches/Rhdf5lib.patch ];
|
|
passthru.hdf5 = hdf5;
|
|
});
|
|
|
|
Rhisat2 = old.Rhisat2.overrideAttrs (attrs: {
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
Rhtslib = old.Rhtslib.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
substituteInPlace R/zzz.R --replace-fail "-lcurl" "-L${pkgs.curl.out}/lib -lcurl"
|
|
'';
|
|
});
|
|
|
|
Rrdrand = old.Rrdrand.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
|
|
|
|
Rserve = old.Rserve.overrideAttrs (attrs: {
|
|
patches = [ ./patches/Rserve.patch ];
|
|
configureFlags = [
|
|
"--with-server"
|
|
"--with-client"
|
|
];
|
|
});
|
|
|
|
SAIGEgds = old.SAIGEgds.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -fpermissive";
|
|
};
|
|
});
|
|
|
|
SICtools = old.SICtools.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace src/Makefile --replace-fail "-lcurses" "-lncurses"
|
|
'';
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
SamplerCompare = old.SamplerCompare.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
|
};
|
|
});
|
|
|
|
SingleR = old.SingleR.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace src/find_classic_markers.cpp --replace-fail \
|
|
"Rcpp::IntegerVector val(de_n);" \
|
|
"Rcpp::IntegerVector val(static_cast<int>(de_n));"
|
|
'';
|
|
});
|
|
|
|
SynExtend = old.SynExtend.overrideAttrs (attrs: {
|
|
# build might fail due to race condition
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
V8 = old.V8.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
export V8_PKG_CFLAGS="$(pkg-config --cflags v8)";
|
|
export V8_PKG_LIBS="$(pkg-config --libs v8)";
|
|
'';
|
|
|
|
env = (attrs.env or { }) // {
|
|
R_MAKEVARS_SITE = lib.optionalString (pkgs.stdenv.system == "aarch64-linux") (
|
|
pkgs.writeText "Makevars" ''
|
|
CXX14PICFLAGS = -fPIC
|
|
''
|
|
);
|
|
};
|
|
});
|
|
|
|
XLConnect =
|
|
let
|
|
poi-ooxml-full = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/poi/poi-ooxml-full/5.4.1/poi-ooxml-full-5.4.1.jar";
|
|
hash = "sha256-xRsFFlXVjXTV64nn03NscFLCV09Dx52wyKg60hb23Tc=";
|
|
};
|
|
poi-ooxml = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/poi/poi-ooxml/5.4.1/poi-ooxml-5.4.1.jar";
|
|
hash = "sha256-/SAMnm901wQWCpfp1SBBmV7YdDlFRTAAHt2SBojxn1M=";
|
|
};
|
|
poi = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/poi/poi/5.4.1/poi-5.4.1.jar";
|
|
hash = "sha256-2lq/QtpGBMWnvKOJVq9unW8ZbZttTLfqvuT0gLWA1QU=";
|
|
};
|
|
commons-compress = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/commons/commons-compress/1.27.1/commons-compress-1.27.1.jar";
|
|
hash = "sha256-KT2A9UtTa3QJXc1+o88KKbv8NAJRkoEzJJX0Qg03DRY=";
|
|
};
|
|
commons-lang3 = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/commons/commons-lang3/3.16.0/commons-lang3-3.16.0.jar";
|
|
hash = "sha256-CHCd101gK3Bc5AF9JlRCEAVqS6WD1bIMCTc0Bv56APg=";
|
|
};
|
|
xmlbeans = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/xmlbeans/xmlbeans/5.3.0/xmlbeans-5.3.0.jar";
|
|
hash = "sha256-bMado7TTW4PF5HfNTauiBORBCYM+NK8rmoosh4gomRc=";
|
|
};
|
|
commons-collections4 = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/commons/commons-collections4/4.4/commons-collections4-4.4.jar";
|
|
hash = "sha256-Hfi5QwtcjtFD14FeQD4z71NxskAKrb6b2giDdi4IRtE=";
|
|
};
|
|
commons-math3 = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/commons/commons-math3/3.6.1/commons-math3-3.6.1.jar";
|
|
hash = "sha256-HlbXsFjSi2Wr0la4RY44hbZ0wdWI+kPNfRy7nH7yswg=";
|
|
};
|
|
log4j-api = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-api/2.24.3/log4j-api-2.24.3.jar";
|
|
hash = "sha256-W0oKDNDnUd7UMcFiRCvb3VMyjR+Lsrrl/Bu+7g9m2A8=";
|
|
};
|
|
commons-codec = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/commons-codec/commons-codec/1.18.0/commons-codec-1.18.0.jar";
|
|
hash = "sha256-ugBfMEzvkqPe3iSjitWsm4r8zw2PdYOdbBM4Y0z39uQ=";
|
|
};
|
|
commons-io = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/commons-io/commons-io/2.18.0/commons-io-2.18.0.jar";
|
|
hash = "sha256-88oPjWPEDiOlbVQQHGDV7e4Ta0LYS/uFvHljCTEJz4s=";
|
|
};
|
|
SparseBitSet = fetchurl {
|
|
url = "https://repo1.maven.org/maven2/com/zaxxer/SparseBitSet/1.3/SparseBitSet-1.3.jar";
|
|
hash = "sha256-92uFrbDAByGuJnt8/eTaf3HTEhzCFgyfwAwMifjFPIo=";
|
|
};
|
|
in
|
|
old.XLConnect.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
cp ${poi-ooxml-full} inst/java/poi-ooxml-full-5.4.1.jar
|
|
cp ${poi-ooxml} inst/java/poi-ooxml-5.4.1.jar
|
|
cp ${poi} inst/java/poi-5.4.1.jar
|
|
cp ${commons-compress} inst/java/commons-compress-1.27.1.jar
|
|
cp ${commons-lang3} inst/java/commons-lang3-3.16.0.jar
|
|
cp ${xmlbeans} inst/java/xmlbeans-5.3.0.jar
|
|
cp ${commons-collections4} inst/java/commons-collections4-4.4.jar
|
|
cp ${commons-math3} inst/java/commons-math3-3.6.1.jar
|
|
cp ${log4j-api} inst/java/log4j-api-2.24.3.jar
|
|
cp ${commons-codec} inst/java/commons-codec-1.18.0.jar
|
|
cp ${commons-io} inst/java/commons-io-2.18.0.jar
|
|
cp ${SparseBitSet} inst/java/SparseBitSet-1.3.jar
|
|
'';
|
|
|
|
postPatch = ''
|
|
substituteInPlace R/onLoad.R \
|
|
--replace-fail 'system2("java",' 'system2("${lib.getExe pkgs.jre_headless}",'
|
|
|
|
# Misleading startup message, JARs are downloaded at build-time
|
|
substituteInPlace R/onAttach.R \
|
|
--replace-fail 'if(file.exists(file.path(libname, pkgname, ".fail"))){' 'if(FALSE){'
|
|
'';
|
|
});
|
|
|
|
alcyon = old.alcyon.overrideAttrs (attrs: {
|
|
configureFlags = [
|
|
"--enable-force-openmp"
|
|
];
|
|
});
|
|
|
|
# it can happen that the major version of arrow-cpp is ahead of the
|
|
# rPackages.arrow that would be built from CRAN sources; therefore, to avoid
|
|
# build failures and manual updates of the hash, we use the R source at
|
|
# the GitHub release state of libarrow (arrow-cpp) in Nixpkgs. This may
|
|
# not exactly represent the CRAN sources, but because patching of the
|
|
# CRAN R package is mostly done to meet special CRAN build requirements,
|
|
# this is a straightforward approach. Example where patching was necessary
|
|
# -> arrow 14.0.0.2 on CRAN; was lagging behind libarrow release:
|
|
# https://github.com/apache/arrow/issues/39698 )
|
|
arrow = old.arrow.overrideAttrs (attrs: {
|
|
src = pkgs.arrow-cpp.src;
|
|
name = "r-arrow-${pkgs.arrow-cpp.version}";
|
|
prePatch = "cd r";
|
|
buildInputs = attrs.buildInputs ++ [
|
|
pkgs.arrow-cpp
|
|
];
|
|
});
|
|
|
|
cisPath = old.cisPath.overrideAttrs (attrs: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
covidsymptom = old.covidsymptom.overrideAttrs (attrs: {
|
|
preConfigure = "rm R/covidsymptomdata.R";
|
|
});
|
|
|
|
cubature = old.cubature.overrideAttrs (attrs: {
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
data_table = old.data_table.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -fopenmp";
|
|
};
|
|
});
|
|
|
|
dbarts = old.dbarts.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
|
|
|
|
exifr = old.exifr.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
for f in .onLoad .onAttach ; do
|
|
substituteInPlace R/load_hook.R \
|
|
--replace-fail \
|
|
"$f <- function(libname, pkgname) {" \
|
|
"$f <- function(libname, pkgname) {
|
|
options(
|
|
exifr.perlpath = \"${lib.getBin pkgs.perl}/bin/perl\",
|
|
exifr.exiftoolcommand = \"${lib.getBin pkgs.exiftool}/bin/exiftool\"
|
|
)"
|
|
done
|
|
'';
|
|
});
|
|
|
|
findpython = old.findpython.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace "R/find_python_cmd.r" \
|
|
--replace-fail 'python_cmds[which(python_cmds != "")]' \
|
|
'python_cmds <- c(python_cmds, file.path("${lib.getBin pkgs.python3}", "bin", "python3"))
|
|
python_cmds[which(python_cmds != "")]'
|
|
'';
|
|
});
|
|
|
|
float = old.float.overrideAttrs (attrs: {
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
flowClust = old.flowClust.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
|
|
|
|
gdtools = old.gdtools.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_LDFLAGS = "-lfontconfig -lfreetype";
|
|
};
|
|
});
|
|
|
|
genoCN = old.genoCN.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
# https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
|
|
substituteInPlace "src/xCNV.c" \
|
|
--replace-fail "Calloc" "R_Calloc" \
|
|
--replace-fail "Free" "R_Free"
|
|
'';
|
|
});
|
|
|
|
geojsonio = old.geojsonio.overrideAttrs (attrs: {
|
|
buildInputs = [ cacert ] ++ attrs.buildInputs;
|
|
});
|
|
|
|
geomorph = old.geomorph.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
RGL_USE_NULL = "true";
|
|
};
|
|
});
|
|
|
|
gmapR = old.gmapR.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# Avoid incompatible pointer type error
|
|
NIX_CFLAGS_COMPILE =
|
|
attrs.env.NIX_CFLAGS_COMPILE
|
|
+ " -Wno-implicit-function-declaration -Wno-incompatible-pointer-types";
|
|
};
|
|
});
|
|
|
|
gpuMagic = old.gpuMagic.overrideAttrs (_: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
h2o = old.h2o.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
# prevent download of jar file during install and postpone to first use
|
|
sed -i '/downloadJar()/d' R/zzz.R
|
|
|
|
# during runtime the package directory is not writable as it's in the
|
|
# nix store, so store the jar in the user's cache directory instead
|
|
substituteInPlace R/connection.R --replace-fail \
|
|
'dest_file <- file.path(dest_folder, "h2o.jar")' \
|
|
'dest_file <- file.path("~/.cache/", "h2o.jar")'
|
|
'';
|
|
});
|
|
|
|
harbinger = old.harbinger.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
LC_ALL = "en_US.UTF-8";
|
|
};
|
|
});
|
|
|
|
hdf5r = old.hdf5r.overrideAttrs (attrs: {
|
|
nativeBuildInputs = attrs.nativeBuildInputs ++ [ new.Rhdf5lib.hdf5 ];
|
|
buildInputs = attrs.buildInputs ++ [ new.Rhdf5lib.hdf5 ];
|
|
});
|
|
|
|
immunotation =
|
|
let
|
|
MHC41alleleList = fetchurl {
|
|
url = "https://services.healthtech.dtu.dk/services/NetMHCpan-4.1/allele.list";
|
|
hash = "sha256-CRZ+0uHzcq5zK5eONucAChXIXO8tnq5sSEAS80Z7jhg=";
|
|
};
|
|
|
|
MHCII40alleleList = fetchurl {
|
|
url = "https://services.healthtech.dtu.dk/services/NetMHCIIpan-4.0/alleles_name.list";
|
|
hash = "sha256-K4Ic2NUs3P4IkvOODwZ0c4Yh8caex5Ih0uO5jXRHp40=";
|
|
};
|
|
|
|
# List of valid countries, regions and ethnic groups
|
|
# The original page is changing a bit every day, but the relevant
|
|
# content does not. Use archive.org to get a stable snapshot.
|
|
# It can be updated from time to time, or when the package becomes
|
|
# deficient. This may be difficult to know.
|
|
# Update the snapshot date, and add id_ after it, as described here:
|
|
# https://web.archive.org/web/20130806040521/http://faq.web.archive.org/page-without-wayback-code/
|
|
validGeographics = fetchurl {
|
|
url = "https://web.archive.org/web/20240418194005id_/http://www.allelefrequencies.net/hla6006a.asp";
|
|
hash = "sha256-m7Wkmh/cPxeqn94LwoznIh+fcFXskmSGErUYj6kTqak=";
|
|
};
|
|
in
|
|
old.immunotation.overrideAttrs (attrs: {
|
|
patches = [ ./patches/immunotation.patch ];
|
|
postPatch = ''
|
|
substituteInPlace "R/external_resources_input.R" --replace-fail \
|
|
"nix-NetMHCpan-4.1-allele-list" ${MHC41alleleList}
|
|
|
|
substituteInPlace "R/external_resources_input.R" --replace-fail \
|
|
"nix-NETMHCIIpan-4.0-alleles-name-list" ${MHCII40alleleList}
|
|
|
|
substituteInPlace "R/AFND_interface.R" --replace-fail \
|
|
"nix-valid-geographics" ${validGeographics}
|
|
'';
|
|
});
|
|
|
|
iscream = old.iscream.overrideAttrs (attrs: {
|
|
# https://huishenlab.github.io/iscream/articles/htslib.html
|
|
# Rhtslib (in LinkingTo) is not needed if we provide a proper htslib
|
|
propagatedBuildInputs =
|
|
builtins.filter (el: el != pkgs.rPackages.Rhtslib) attrs.propagatedBuildInputs
|
|
++ [ pkgs.htslib ];
|
|
});
|
|
|
|
littler = old.littler.overrideAttrs (attrs: {
|
|
postInstall = ''
|
|
install -d $out/bin $out/share/man/man1
|
|
ln -s ../library/littler/bin/r $out/bin/r
|
|
ln -s ../library/littler/bin/r $out/bin/lr
|
|
ln -s ../../../library/littler/man-page/r.1 $out/share/man/man1
|
|
# these won't run without special provisions, so better remove them
|
|
rm -r $out/library/littler/script-tests
|
|
'';
|
|
});
|
|
|
|
lpsymphony = old.lpsymphony.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace configure \
|
|
--replace-fail '--libs SYMPHONY' '--libs symphony' \
|
|
--replace-fail '--cflags SYMPHONY' '--cflags symphony'
|
|
'';
|
|
});
|
|
|
|
luajr = old.luajr.overrideAttrs (attrs: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
metahdep = old.metahdep.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# Avoid incompatible pointer type error
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-int-conversion";
|
|
};
|
|
});
|
|
|
|
mongolite = old.mongolite.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKGCONFIG_CFLAGS = "-I${lib.getDev pkgs.openssl}/include -I${lib.getDev pkgs.cyrus_sasl}/include -I${lib.getDev pkgs.zlib}/include";
|
|
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -L${pkgs.cyrus_sasl.out}/lib -L${pkgs.zlib.out}/lib -lssl -lcrypto -lsasl2 -lz";
|
|
};
|
|
});
|
|
|
|
nanonext = old.nanonext.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_LDFLAGS = "-lnng -lmbedtls -lmbedx509 -lmbedcrypto";
|
|
};
|
|
});
|
|
|
|
nearfar =
|
|
let
|
|
angrist = fetchurl {
|
|
url = "https://raw.githubusercontent.com/joerigdon/nearfar/master/angrist.csv";
|
|
hash = "sha256-lb+HMHnRGonc26merFGB0B7Vk1Lk+sIJlay+JtQC8m4=";
|
|
};
|
|
in
|
|
old.nearfar.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace "R/nearfar.R" --replace-fail \
|
|
'url("https://raw.githubusercontent.com/joerigdon/nearfar/master/angrist.csv")' '"${angrist}"'
|
|
'';
|
|
});
|
|
|
|
networkscaleup = old.networkscaleup.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# needed to avoid "log limit exceeded" on Hydra
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
|
|
};
|
|
|
|
# consumes a lot of resources in parallel
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
oligo = old.oligo.overrideAttrs (_: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
opencv =
|
|
let
|
|
opencvGtk = pkgs.opencv.override (old: {
|
|
enableGtk3 = true;
|
|
});
|
|
in
|
|
old.opencv.overrideAttrs (attrs: {
|
|
buildInputs = attrs.buildInputs ++ [ opencvGtk ];
|
|
});
|
|
|
|
openssl = old.openssl.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKGCONFIG_CFLAGS = "-I${lib.getDev pkgs.openssl}/include";
|
|
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
|
};
|
|
});
|
|
|
|
pak = old.pak.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
patchShebangs src/library/*/configure
|
|
'';
|
|
});
|
|
|
|
pbdZMQ = old.pbdZMQ.overrideAttrs (attrs: {
|
|
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
|
for file in R/*.{r,r.in}; do
|
|
sed -i 's#system("which \(\w\+\)"[^)]*)#"${pkgs.cctools}/bin/\1"#g' $file
|
|
done
|
|
'';
|
|
});
|
|
|
|
quarto = old.quarto.overrideAttrs (attrs: {
|
|
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ pkgs.quarto ];
|
|
postPatch = ''
|
|
substituteInPlace "R/quarto.R" \
|
|
--replace-fail "Sys.getenv(\"QUARTO_PATH\", unset = NA_character_)" "Sys.getenv(\"QUARTO_PATH\", unset = '${lib.getBin pkgs.quarto}/bin/quarto')"
|
|
'';
|
|
});
|
|
|
|
rGADEM = old.rGADEM.overrideAttrs (attrs: {
|
|
hardeningDisable = [ "format" ];
|
|
});
|
|
|
|
rJava = old.rJava.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
export JAVA_CPPFLAGS=-I${pkgs.jdk}/include/
|
|
export JAVA_HOME=${pkgs.jdk}
|
|
substituteInPlace R/zzz.R.in \
|
|
--replace-fail ".onLoad <- function(libname, pkgname) {" \
|
|
".onLoad <- function(libname, pkgname) {
|
|
Sys.setenv(\"JAVA_HOME\" = Sys.getenv(\"JAVA_HOME\", unset = \"${pkgs.jdk}\"))"
|
|
'';
|
|
});
|
|
|
|
rawrr = old.rawrr.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace "R/zzz.R" "R/dotNetAssembly.R" --replace-warn \
|
|
"Sys.which('mono')" "'${lib.getBin pkgs.mono}/bin/mono'"
|
|
|
|
substituteInPlace "R/dotNetAssembly.R" --replace-warn \
|
|
"Sys.which(\"xbuild\")" "\"${lib.getBin pkgs.mono}/bin/xbuild\""
|
|
|
|
substituteInPlace "R/dotNetAssembly.R" --replace-warn \
|
|
"cmd <- ifelse(Sys.which(\"msbuild\") != \"\", \"msbuild\", \"xbuild\")" \
|
|
"cmd <- \"${lib.getBin pkgs.mono}/bin/xbuild\""
|
|
|
|
substituteInPlace "R/rawrr.R" --replace-warn \
|
|
"Sys.which(\"mono\")" "\"${lib.getBin pkgs.mono}/bin/mono\""
|
|
'';
|
|
});
|
|
|
|
redatamx = old.redatamx.overrideAttrs (
|
|
finalAttrs: previousAttrs:
|
|
let
|
|
fetchCore =
|
|
{ platform, hash }:
|
|
pkgs.fetchzip {
|
|
name = "redatam-core-${platform}-${finalAttrs.version}";
|
|
url = "https://redatam-core.s3.us-west-2.amazonaws.com/core-dev/${platform}/redatamx-core-${platform}-${finalAttrs.version}-final.zip";
|
|
inherit hash;
|
|
};
|
|
in
|
|
{
|
|
passthru = (previousAttrs.passthru or { }) // {
|
|
redatam-core-per-system = {
|
|
"x86_64-linux" = fetchCore {
|
|
platform = "linux";
|
|
hash = "sha256-LNusDc4K6B+kAd+qWo789eiQG0dToEwu/RWwoFEjgRo=";
|
|
};
|
|
"aarch64-darwin" = fetchCore {
|
|
platform = "macos-arm64";
|
|
hash = "sha256-l7qLjM6jDtytAPgY7qVuVPEE6HUnZ1fPFxAzS6VnFY4=";
|
|
};
|
|
};
|
|
|
|
redatam-core = finalAttrs.passthru.redatam-core-per-system.${stdenv.hostPlatform.system};
|
|
};
|
|
|
|
# upstream is checking for the wrong filename, so it tries and fails to download redatam-core
|
|
# even if it's already installed to the target location, so let's just disable the check
|
|
postPatch = ''
|
|
substituteInPlace configure \
|
|
--replace-fail '[ ! -e inst/redengine/$engine_file ]' 'false'
|
|
'';
|
|
|
|
preConfigure = ''
|
|
install -Dm755 ${finalAttrs.passthru.redatam-core}/lib/libredengine* -t ./inst/redengine/
|
|
'';
|
|
|
|
meta = (previousAttrs.meta or { }) // {
|
|
platforms = lib.attrNames finalAttrs.passthru.redatam-core-per-system;
|
|
license = lib.licenses.unfree; # See https://github.com/ideasybits/redatamx4r/blob/main/inst/License.txt
|
|
};
|
|
}
|
|
);
|
|
|
|
redland = old.redland.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKGCONFIG_CFLAGS = "-I${pkgs.redland}/include -I${pkgs.librdf_raptor2}/include/raptor2 -I${pkgs.librdf_rasqal}/include/rasqal";
|
|
PKGCONFIG_LIBS = "-L${pkgs.redland}/lib -L${pkgs.librdf_raptor2}/lib -L${pkgs.librdf_rasqal}/lib -lrdf -lraptor2 -lrasqal";
|
|
};
|
|
});
|
|
|
|
# Append cargo path to path variable
|
|
# This will provide cargo in case it's not set by the user
|
|
rextendr = old.rextendr.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace R/zzz.R --replace-fail \
|
|
".onLoad <- function(...) {" \
|
|
'.onLoad <- function(...) {
|
|
Sys.setenv(PATH = paste0(Sys.getenv("PATH"), ":${lib.getBin pkgs.cargo}/bin"))'
|
|
'';
|
|
});
|
|
|
|
rgl = old.rgl.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
RGL_USE_NULL = "true";
|
|
};
|
|
});
|
|
|
|
rgoslin = old.rgoslin.overrideAttrs (attrs: {
|
|
enableParallelBuilding = false;
|
|
});
|
|
|
|
rhdf5 = old.rhdf5.overrideAttrs (attrs: {
|
|
patches = [ ./patches/rhdf5.patch ];
|
|
env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
|
|
});
|
|
|
|
rhdf5filters = old.rhdf5filters.overrideAttrs (attrs: {
|
|
patches = [ ./patches/rhdf5filters.patch ];
|
|
});
|
|
|
|
rlibkriging = old.rlibkriging.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
patchShebangs tools/ src/libK/tools/
|
|
'';
|
|
});
|
|
|
|
rmarkdown = old.rmarkdown.overrideAttrs (_: {
|
|
preConfigure = ''
|
|
substituteInPlace R/pandoc.R \
|
|
--replace-fail '"~/opt/pandoc"' '"~/opt/pandoc", "${pkgs.pandoc}/bin"'
|
|
'';
|
|
});
|
|
|
|
roxigraph = old.roxigraph.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
LIBCLANG_PATH = "${lib.getLib pkgs.libclang}/lib";
|
|
};
|
|
});
|
|
|
|
rpanel = old.rpanel.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
export TCLLIBPATH="${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}"
|
|
'';
|
|
env = (attrs.env or { }) // {
|
|
TCLLIBPATH = "${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}";
|
|
};
|
|
});
|
|
|
|
rstan = old.rstan.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -DBOOST_PHOENIX_NO_VARIADIC_EXPRESSION";
|
|
};
|
|
});
|
|
|
|
rstanarm = old.rstanarm.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
# needed to avoid "log limit exceeded" on Hydra
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
|
|
};
|
|
});
|
|
|
|
rvisidata = old.rvisidata.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
substituteInPlace R/main.r --replace-fail \
|
|
"system(\"vd" "system(\"${lib.getBin pkgs.visidata}/bin/vd"
|
|
substituteInPlace R/tmux.r --replace-fail \
|
|
"return(\"vd\")" "return(\"${lib.getBin pkgs.visidata}/bin/vd\")"
|
|
'';
|
|
});
|
|
|
|
s2 = old.s2.overrideAttrs (attrs: {
|
|
preConfigure = ''
|
|
substituteInPlace "configure" \
|
|
--replace-fail "absl_s2" "absl_flags absl_check"
|
|
'';
|
|
});
|
|
|
|
slfm = old.slfm.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
|
};
|
|
});
|
|
|
|
sparklyr = old.sparklyr.overrideAttrs (attrs: {
|
|
# Pyspark's spark is full featured and better maintained than pkgs.spark
|
|
preConfigure = ''
|
|
if grep "onLoad" R/zzz.R; then
|
|
echo "onLoad is already present, patch needs to be updated!"
|
|
exit 1
|
|
fi
|
|
|
|
cat >> R/zzz.R <<EOF
|
|
.onLoad <- function(...) {
|
|
Sys.setenv("SPARK_HOME" = Sys.getenv("SPARK_HOME", unset = "${pkgs.python3Packages.pyspark}/${pkgs.python3Packages.python.sitePackages}/pyspark"))
|
|
Sys.setenv("JAVA_HOME" = Sys.getenv("JAVA_HOME", unset = "${pkgs.jdk}"))
|
|
}
|
|
EOF
|
|
'';
|
|
});
|
|
|
|
symengine = old.symengine.overrideAttrs (_: {
|
|
preConfigure = ''
|
|
rm configure
|
|
cat > src/Makevars << EOF
|
|
PKG_LIBS=-lsymengine
|
|
all: $(SHLIB)
|
|
EOF
|
|
'';
|
|
});
|
|
|
|
talib = old.talib.overrideAttrs (attrs: {
|
|
# the conftest.c compilation test fails because for some reason ta-lib doesn't link libm
|
|
env = (attrs.env or { }) // {
|
|
NIX_LDFLAGS = (attrs.env.NIX_LDFLAGS or "") + " -lm";
|
|
};
|
|
});
|
|
|
|
tesseract = old.tesseract.overrideAttrs (_: {
|
|
preConfigure = ''
|
|
substituteInPlace configure \
|
|
--replace-fail 'PKG_CONFIG_NAME="tesseract"' 'PKG_CONFIG_NAME="tesseract lept"'
|
|
'';
|
|
});
|
|
|
|
textshaping = old.textshaping.overrideAttrs (attrs: {
|
|
env.NIX_LDFLAGS = "-lfribidi -lharfbuzz";
|
|
});
|
|
|
|
timeless = old.timeless.overrideAttrs (attrs: {
|
|
cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
|
|
src = attrs.src;
|
|
sourceRoot = "timeless/src/rust";
|
|
hash = "sha256-5TV7iCzaaFwROfJNO6pvSUbJBzV+wZlU5+ZK4AMT6X0=";
|
|
};
|
|
|
|
cargoRoot = "src/rust";
|
|
|
|
nativeBuildInputs = attrs.nativeBuildInputs ++ [
|
|
pkgs.rustPlatform.cargoSetupHook
|
|
pkgs.cargo
|
|
];
|
|
});
|
|
|
|
trajeR = old.trajeR.overrideAttrs (attrs: {
|
|
patches = [ ./patches/trajeR.patch ];
|
|
});
|
|
|
|
trigger = old.trigger.overrideAttrs (attrs: {
|
|
postPatch = ''
|
|
# https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
|
|
substituteInPlace "src/trigger.c" \
|
|
--replace-fail "Calloc" "R_Calloc" \
|
|
--replace-fail "Free" "R_Free"
|
|
'';
|
|
});
|
|
|
|
universalmotif = old.universalmotif.overrideAttrs (attrs: {
|
|
patches = [ ./patches/universalmotif.patch ];
|
|
});
|
|
|
|
unix = old.unix.overrideAttrs (attrs: {
|
|
postPatch = lib.optionalString stdenv.hostPlatform.isLinux ''
|
|
# ignore apparmor detection logic
|
|
substituteInPlace configure \
|
|
--replace-fail '[ ! -d "/sys/module/apparmor" ]' 'false'
|
|
'';
|
|
});
|
|
|
|
vegan3d = old.vegan3d.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
RGL_USE_NULL = "true";
|
|
};
|
|
});
|
|
|
|
websocket = old.websocket.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
PKGCONFIG_CFLAGS = "-I${lib.getDev pkgs.openssl}/include";
|
|
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
|
};
|
|
});
|
|
|
|
xslt = old.xslt.overrideAttrs (attrs: {
|
|
env = (attrs.env or { }) // {
|
|
NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -fpermissive";
|
|
};
|
|
});
|
|
# keep-sorted end
|
|
};
|
|
in
|
|
self
|