1# This file defines the composition for R packages.
2
3let
4 importJSON = f: builtins.fromJSON (builtins.readFile f);
5
6 biocPackagesGenerated = importJSON ./bioc-packages.json;
7 biocAnnotationPackagesGenerated = importJSON ./bioc-annotation-packages.json;
8 biocExperimentPackagesGenerated = importJSON ./bioc-experiment-packages.json;
9 cranPackagesGenerated = importJSON ./cran-packages.json;
10in
11
12{
13 R,
14 pkgs,
15 overrides,
16}:
17
18let
19 inherit (pkgs)
20 cacert
21 fetchurl
22 stdenv
23 lib
24 ;
25
26 buildRPackage = pkgs.callPackage ./generic-builder.nix {
27 inherit R;
28 inherit (pkgs) gettext gfortran;
29 };
30
31 # Generates package templates given per-repository settings
32 #
33 # some packages, e.g. cncaGUI, require X running while installation,
34 # so that we use xvfb-run if requireX is true.
35 mkDerive =
36 {
37 mkHomepage,
38 mkUrls,
39 hydraPlatforms ? null,
40 }:
41 args:
42 let
43 hydraPlatforms' = hydraPlatforms;
44 in
45 lib.makeOverridable (
46 {
47 name,
48 version,
49 sha256,
50 depends ? [ ],
51 doCheck ? true,
52 requireX ? false,
53 broken ? false,
54 platforms ? R.meta.platforms,
55 hydraPlatforms ? if hydraPlatforms' != null then hydraPlatforms' else platforms,
56 maintainers ? [ ],
57 }:
58 buildRPackage {
59 name = "${name}-${version}";
60 src = fetchurl {
61 inherit sha256;
62 urls = mkUrls (args // { inherit name version; });
63 };
64 inherit doCheck requireX;
65 propagatedBuildInputs = depends;
66 nativeBuildInputs = depends;
67 meta.homepage = mkHomepage (args // { inherit name; });
68 meta.platforms = platforms;
69 meta.hydraPlatforms = hydraPlatforms;
70 meta.broken = broken;
71 meta.maintainers = maintainers;
72 }
73 );
74
75 # Templates for generating Bioconductor and CRAN packages
76 # from the name, version, sha256, and optional per-package arguments above
77 #
78 deriveBioc = mkDerive {
79 mkHomepage =
80 { name, biocVersion }: "https://bioconductor.org/packages/${biocVersion}/bioc/html/${name}.html";
81 mkUrls =
82 {
83 name,
84 version,
85 biocVersion,
86 }:
87 [
88 "mirror://bioc/${biocVersion}/bioc/src/contrib/${name}_${version}.tar.gz"
89 "mirror://bioc/${biocVersion}/bioc/src/contrib/Archive/${name}/${name}_${version}.tar.gz"
90 "mirror://bioc/${biocVersion}/bioc/src/contrib/Archive/${name}_${version}.tar.gz"
91 ];
92 };
93 deriveBiocAnn = mkDerive {
94 mkHomepage =
95 { name, biocVersion }:
96 "https://www.bioconductor.org/packages/${biocVersion}/data/annotation/html/${name}.html";
97 mkUrls =
98 {
99 name,
100 version,
101 biocVersion,
102 }:
103 [
104 "mirror://bioc/${biocVersion}/data/annotation/src/contrib/${name}_${version}.tar.gz"
105 ];
106 hydraPlatforms = [ ];
107 };
108 deriveBiocExp = mkDerive {
109 mkHomepage =
110 { name, biocVersion }:
111 "https://www.bioconductor.org/packages/${biocVersion}/data/experiment/html/${name}.html";
112 mkUrls =
113 {
114 name,
115 version,
116 biocVersion,
117 }:
118 [
119 "mirror://bioc/${biocVersion}/data/experiment/src/contrib/${name}_${version}.tar.gz"
120 ];
121 hydraPlatforms = [ ];
122 };
123 deriveCran = mkDerive {
124 mkHomepage = { name }: "https://cran.r-project.org/web/packages/${name}/";
125 mkUrls =
126 { name, version }:
127 [
128 "mirror://cran/${name}_${version}.tar.gz"
129 "mirror://cran/Archive/${name}/${name}_${version}.tar.gz"
130 ];
131 };
132
133 # Overrides package definitions with nativeBuildInputs.
134 # For example,
135 #
136 # overrideNativeBuildInputs {
137 # foo = [ pkgs.bar ]
138 # } old
139 #
140 # results in
141 #
142 # {
143 # foo = old.foo.overrideAttrs (attrs: {
144 # nativeBuildInputs = attrs.nativeBuildInputs ++ [ pkgs.bar ];
145 # });
146 # }
147 overrideNativeBuildInputs =
148 overrides: old:
149 lib.mapAttrs (
150 name: value:
151 (builtins.getAttr name old).overrideAttrs (attrs: {
152 nativeBuildInputs = attrs.nativeBuildInputs ++ value;
153 })
154 ) overrides;
155
156 # Overrides package definitions with buildInputs.
157 # For example,
158 #
159 # overrideBuildInputs {
160 # foo = [ pkgs.bar ]
161 # } old
162 #
163 # results in
164 #
165 # {
166 # foo = old.foo.overrideAttrs (attrs: {
167 # buildInputs = attrs.buildInputs ++ [ pkgs.bar ];
168 # });
169 # }
170 overrideBuildInputs =
171 overrides: old:
172 lib.mapAttrs (
173 name: value:
174 (builtins.getAttr name old).overrideAttrs (attrs: {
175 buildInputs = attrs.buildInputs ++ value;
176 })
177 ) overrides;
178
179 # Overrides package definitions with maintainers.
180 # For example,
181 #
182 # overrideMaintainers {
183 # foo = [ lib.maintainers.jsmith ]
184 # } old
185 #
186 # results in
187 #
188 # {
189 # foo = old.foo.override {
190 # maintainers = [ lib.maintainers.jsmith ];
191 # };
192 # }
193 overrideMaintainers =
194 overrides: old:
195 lib.mapAttrs (
196 name: value:
197 (builtins.getAttr name old).override {
198 maintainers = value;
199 }
200 ) overrides;
201
202 # Overrides package definitions with new R dependencies.
203 # For example,
204 #
205 # overrideRDepends {
206 # foo = [ self.bar ]
207 # } old
208 #
209 # results in
210 #
211 # {
212 # foo = old.foo.overrideAttrs (attrs: {
213 # nativeBuildInputs = attrs.nativeBuildInputs ++ [ self.bar ];
214 # propagatedNativeBuildInputs = attrs.propagatedNativeBuildInputs ++ [ self.bar ];
215 # });
216 # }
217 overrideRDepends =
218 overrides: old:
219 lib.mapAttrs (
220 name: value:
221 (builtins.getAttr name old).overrideAttrs (attrs: {
222 nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ value;
223 propagatedNativeBuildInputs = (attrs.propagatedNativeBuildInputs or [ ]) ++ value;
224 })
225 ) overrides;
226
227 # Overrides package definition requiring X running to install.
228 # For example,
229 #
230 # overrideRequireX [
231 # "foo"
232 # ] old
233 #
234 # results in
235 #
236 # {
237 # foo = old.foo.override {
238 # requireX = true;
239 # };
240 # }
241 overrideRequireX =
242 packageNames: old:
243 let
244 nameValuePairs = map (name: {
245 inherit name;
246 value = (builtins.getAttr name old).override {
247 requireX = true;
248 };
249 }) packageNames;
250 in
251 builtins.listToAttrs nameValuePairs;
252
253 # Overrides package definition requiring a home directory to install or to
254 # run tests.
255 # For example,
256 #
257 # overrideRequireHome [
258 # "foo"
259 # ] old
260 #
261 # results in
262 #
263 # {
264 # foo = old.foo.overrideAttrs (oldAttrs: {
265 # preInstall = ''
266 # ${oldAttrs.preInstall or ""}
267 # export HOME=$(mktemp -d)
268 # '';
269 # });
270 # }
271 overrideRequireHome =
272 packageNames: old:
273 let
274 nameValuePairs = map (name: {
275 inherit name;
276 value = (builtins.getAttr name old).overrideAttrs (oldAttrs: {
277 preInstall = ''
278 ${oldAttrs.preInstall or ""}
279 export HOME=$(mktemp -d)
280 '';
281 });
282 }) packageNames;
283 in
284 builtins.listToAttrs nameValuePairs;
285
286 # Overrides package definition to skip check.
287 # For example,
288 #
289 # overrideSkipCheck [
290 # "foo"
291 # ] old
292 #
293 # results in
294 #
295 # {
296 # foo = old.foo.override {
297 # doCheck = false;
298 # };
299 # }
300 overrideSkipCheck =
301 packageNames: old:
302 let
303 nameValuePairs = map (name: {
304 inherit name;
305 value = (builtins.getAttr name old).override {
306 doCheck = false;
307 };
308 }) packageNames;
309 in
310 builtins.listToAttrs nameValuePairs;
311
312 # Overrides package definition to mark it broken.
313 # For example,
314 #
315 # overrideBroken [
316 # "foo"
317 # ] old
318 #
319 # results in
320 #
321 # {
322 # foo = old.foo.override {
323 # broken = true;
324 # };
325 # }
326 overrideBroken =
327 packageNames: old:
328 let
329 nameValuePairs = map (name: {
330 inherit name;
331 value = (builtins.getAttr name old).override {
332 broken = true;
333 };
334 }) packageNames;
335 in
336 builtins.listToAttrs nameValuePairs;
337
338 defaultOverrides =
339 old: new:
340 let
341 old0 = old;
342 in
343 let
344 old1 = old0 // (overrideRequireX packagesRequiringX old0);
345 old2 = old1 // (overrideRequireHome packagesRequiringHome old1);
346 old3 = old2 // (overrideSkipCheck packagesToSkipCheck old2);
347 old4 = old3 // (overrideRDepends packagesWithRDepends old3);
348 old5 = old4 // (overrideNativeBuildInputs packagesWithNativeBuildInputs old4);
349 old6 = old5 // (overrideBuildInputs packagesWithBuildInputs old5);
350 old7 = old6 // (overrideBroken brokenPackages old6);
351 old8 = old7 // (overrideMaintainers packagesWithMaintainers old7);
352 old = old8;
353 in
354 old // (otherOverrides old new);
355
356 # Recursive override pattern.
357 # `_self` is a collection of packages;
358 # `self` is `_self` with overridden packages;
359 # packages in `_self` may depends on overridden packages.
360 self = (defaultOverrides _self self) // overrides;
361 _self = {
362 inherit buildRPackage;
363 }
364 // mkPackageSet deriveBioc biocPackagesGenerated
365 // mkPackageSet deriveBiocAnn biocAnnotationPackagesGenerated
366 // mkPackageSet deriveBiocExp biocExperimentPackagesGenerated
367 // mkPackageSet deriveCran cranPackagesGenerated;
368
369 # Takes in a generated JSON file's imported contents
370 # and transforms it by swapping each element of the depends array with the dependency's derivation
371 # and passing this new object to the provided derive function
372 mkPackageSet =
373 derive: packagesJSON:
374 lib.mapAttrs (
375 k: v:
376 derive packagesJSON.extraArgs (
377 v // { depends = lib.map (name: builtins.getAttr name self) v.depends; }
378 )
379 ) packagesJSON.packages;
380
381 # tweaks for the individual packages and "in self" follow
382
383 packagesWithMaintainers = with lib.maintainers; {
384 data_table = [ jbedo ];
385 BiocManager = [ jbedo ];
386 ggplot2 = [ jbedo ];
387 svaNUMT = [ jbedo ];
388 svaRetro = [ jbedo ];
389 StructuralVariantAnnotation = [ jbedo ];
390 RQuantLib = [ kupac ];
391 };
392
393 packagesWithRDepends = {
394 spectralGraphTopology = [ self.CVXR ];
395 FactoMineR = [ self.car ];
396 pander = [ self.codetools ];
397 rmsb = [ self.rstantools ];
398 gastempt = [ self.rstantools ];
399 interactiveDisplay = [ self.BiocManager ];
400 disbayes = [ self.rstantools ];
401 tipsae = [ self.rstantools ];
402 TriDimRegression = [ self.rstantools ];
403 bbmix = [ self.rstantools ];
404 };
405
406 packagesWithNativeBuildInputs = {
407 adimpro = [ pkgs.imagemagick ];
408 animation = [ pkgs.which ];
409 Apollonius = with pkgs; [
410 pkg-config
411 gmp.dev
412 mpfr.dev
413 ];
414 arrow =
415 with pkgs;
416 [
417 pkg-config
418 cmake
419 ]
420 ++ lib.optionals stdenv.hostPlatform.isDarwin [ intltool ];
421 alcyon = with pkgs; [
422 cmake
423 which
424 ];
425 audio = [ pkgs.portaudio ];
426 BayesChange = [ pkgs.gsl ];
427 BayesSAE = [ pkgs.gsl ];
428 BayesVarSel = [ pkgs.gsl ];
429 BayesXsrc = with pkgs; [
430 readline.dev
431 ncurses
432 gsl
433 ];
434 bioacoustics = [
435 pkgs.fftw.dev
436 pkgs.cmake
437 ];
438 bigGP = [ pkgs.mpi ];
439 bigrquerystorage = with pkgs; [
440 grpc
441 protobuf
442 which
443 ];
444 bio3d = [ pkgs.zlib ];
445 BiocCheck = [ pkgs.which ];
446 Biostrings = [ pkgs.zlib ];
447 CellBarcode = [ pkgs.zlib ];
448 cld3 = [ pkgs.protobuf ];
449 cpp11qpdf = with pkgs; [
450 zlib.dev
451 libjpeg
452 ];
453 bnpmr = [ pkgs.gsl ];
454 caviarpd = with pkgs; [
455 cargo
456 rustc
457 ];
458 cairoDevice = [ pkgs.gtk2.dev ];
459 Cairo = with pkgs; [
460 libtiff
461 libjpeg
462 cairo.dev
463 xorg.libXt.dev
464 fontconfig.lib
465 ];
466 Cardinal = [ pkgs.which ];
467 chebpol = [ pkgs.fftw.dev ];
468 ChemmineOB = [ pkgs.pkg-config ];
469 interpolation = [ pkgs.pkg-config ];
470 clarabel = [ pkgs.cargo ];
471 curl = [ pkgs.curl.dev ];
472 CytoML = [ pkgs.libxml2.dev ];
473 data_table =
474 with pkgs;
475 [
476 pkg-config
477 zlib.dev
478 ]
479 ++ lib.optional stdenv.hostPlatform.isDarwin pkgs.llvmPackages.openmp;
480 devEMF = with pkgs; [ xorg.libXft.dev ];
481 DEploid_utils = [ pkgs.zlib.dev ];
482 diversitree = with pkgs; [
483 gsl
484 fftw
485 ];
486 exactextractr = [ pkgs.geos ];
487 EMCluster = [ pkgs.lapack ];
488 fangs = with pkgs; [
489 cargo
490 rustc
491 ];
492 fastpng = [ pkgs.zlib.dev ];
493 fcl = with pkgs; [
494 cargo
495 rustc
496 ];
497 fftw = [ pkgs.fftw.dev ];
498 fftwtools = with pkgs; [
499 fftw.dev
500 pkg-config
501 ];
502 flint = with pkgs; [
503 pkg-config
504 gmp.dev
505 mpfr.dev
506 flint
507 ];
508 fingerPro = [ pkgs.gsl ];
509 Formula = [ pkgs.gmp ];
510 frailtyMMpen = [ pkgs.gsl ];
511 gamstransfer = [ pkgs.zlib ];
512 gdalraster = [ pkgs.pkg-config ];
513 gdtools =
514 with pkgs;
515 [
516 cairo.dev
517 fontconfig.lib
518 freetype.dev
519 ]
520 ++ lib.optionals stdenv.hostPlatform.isDarwin [
521 expat
522 xorg.libXdmcp
523 ];
524 GeneralizedWendland = [ pkgs.gsl ];
525 ggiraph = with pkgs; [ pkgs.libpng.dev ];
526 git2r = with pkgs; [
527 zlib.dev
528 openssl.dev
529 libssh2.dev
530 libgit2
531 pkg-config
532 ];
533 GLAD = [ pkgs.gsl ];
534 glpkAPI = with pkgs; [
535 gmp
536 glpk
537 ];
538 gmp = [ pkgs.gmp.dev ];
539 GPBayes = [ pkgs.gsl ];
540 graphscan = [ pkgs.gsl ];
541 gsl = [ pkgs.gsl ];
542 gslnls = [ pkgs.gsl ];
543 gert = [ pkgs.libgit2 ];
544 haven = with pkgs; [ zlib.dev ];
545 hellorust = [ pkgs.cargo ];
546 hgwrr = [ pkgs.gsl ];
547 h5vc = with pkgs; [
548 zlib.dev
549 bzip2.dev
550 xz.dev
551 ];
552 HiCParser = [ pkgs.zlib ];
553 yyjsonr = with pkgs; [ zlib.dev ];
554 RNifti = with pkgs; [ zlib.dev ];
555 RNiftyReg = with pkgs; [ zlib.dev ];
556 highs = [
557 pkgs.which
558 pkgs.cmake
559 ];
560 crc32c = [
561 pkgs.which
562 pkgs.cmake
563 ];
564 cpp11bigwig = with pkgs; [
565 zlib.dev
566 curl.dev
567 ];
568 rbedrock = [
569 pkgs.zlib.dev
570 pkgs.which
571 pkgs.cmake
572 ];
573 Rigraphlib = [ pkgs.cmake ];
574 HiCseg = [ pkgs.gsl ];
575 hypergeo2 = with pkgs; [
576 gmp.dev
577 mpfr.dev
578 pkg-config
579 ];
580 imager = [ pkgs.xorg.libX11.dev ];
581 imbibe = [ pkgs.zlib.dev ];
582 image_CannyEdges = with pkgs; [
583 fftw.dev
584 libpng.dev
585 ];
586 iBMQ = [ pkgs.gsl ];
587 jack = [ pkgs.pkg-config ];
588 JavaGD = [ pkgs.jdk ];
589 jpeg = [ pkgs.libjpeg.dev ];
590 jqr = [ pkgs.jq.dev ];
591 KFKSDS = [ pkgs.gsl ];
592 KSgeneral = with pkgs; [ pkg-config ];
593 kza = [ pkgs.fftw.dev ];
594 leidenAlg = [ pkgs.gmp.dev ];
595 Libra = [ pkgs.gsl ];
596 libstable4u = [ pkgs.gsl ];
597 heck = with pkgs; [
598 cargo
599 rustc
600 ];
601 LOMAR = [ pkgs.gmp.dev ];
602 littler = [ pkgs.libdeflate ];
603 lpsymphony = with pkgs; [
604 pkg-config
605 gfortran
606 gettext
607 ];
608 lwgeom = with pkgs; [
609 proj
610 geos
611 gdal
612 ];
613 rsbml = [ pkgs.pkg-config ];
614 rvg = [ pkgs.libpng.dev ];
615 MAGEE = [
616 pkgs.zlib.dev
617 pkgs.bzip2.dev
618 ];
619 magick = [ pkgs.imagemagick.dev ];
620 ModelMetrics = lib.optional stdenv.hostPlatform.isDarwin pkgs.llvmPackages.openmp;
621 mvabund = [ pkgs.gsl ];
622 mcrPioda = [ pkgs.gsl ];
623 mwaved = [ pkgs.fftw.dev ];
624 mzR = with pkgs; [
625 zlib
626 netcdf
627 ];
628 nanonext = with pkgs; [
629 mbedtls
630 nng
631 ];
632 ncdf4 = [ pkgs.netcdf ];
633 neojags = [ pkgs.jags ];
634 nloptr = with pkgs; [
635 nlopt
636 pkg-config
637 ];
638 n1qn1 = [ pkgs.gfortran ];
639 odbc = [ pkgs.unixODBC ];
640 opencv = [ pkgs.pkg-config ];
641 pak = [ pkgs.curl.dev ];
642 pander = with pkgs; [
643 pandoc
644 which
645 ];
646 pbdMPI = [ pkgs.mpi ];
647 pbdPROF = [ pkgs.mpi ];
648 pbdZMQ = [ pkgs.pkg-config ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.which ];
649 pcaL1 = [
650 pkgs.pkg-config
651 pkgs.clp
652 ];
653 pdftools = [ pkgs.poppler.dev ];
654 PEPBVS = [ pkgs.gsl ];
655 phytools = [ pkgs.which ];
656 PKI = [ pkgs.openssl.dev ];
657 png = [ pkgs.libpng.dev ];
658 protolite = [ pkgs.protobuf ];
659 prqlr = with pkgs; [
660 cargo
661 rustc
662 ];
663 R2SWF = with pkgs; [
664 zlib
665 libpng
666 freetype.dev
667 ];
668 RAppArmor = [ pkgs.libapparmor ];
669 rapportools = [ pkgs.which ];
670 rapport = [ pkgs.which ];
671 rcdd = [ pkgs.gmp.dev ];
672 RcppCNPy = [ pkgs.zlib.dev ];
673 RcppGSL = [ pkgs.gsl ];
674 RcppZiggurat = [ pkgs.gsl ];
675 reprex = [ pkgs.which ];
676 resultant = with pkgs; [
677 gmp.dev
678 mpfr.dev
679 pkg-config
680 ];
681 rgdal = with pkgs; [
682 proj.dev
683 gdal
684 ];
685 Rhisat2 = [
686 pkgs.which
687 pkgs.hostname
688 ];
689 gdalcubes = [ pkgs.pkg-config ];
690 rgeos = [ pkgs.geos ];
691 Rglpk = [ pkgs.glpk ];
692 RcppPlanc = with pkgs; [
693 which
694 cmake
695 pkg-config
696 ];
697 RGtk2 = [ pkgs.gtk2.dev ];
698 rhdf5 = [ pkgs.zlib ];
699 Rhdf5lib = with pkgs; [ zlib.dev ];
700 Rhpc = with pkgs; [
701 zlib
702 bzip2.dev
703 icu
704 xz.dev
705 mpi
706 pcre.dev
707 ];
708 Rhtslib = with pkgs; [
709 zlib.dev
710 automake
711 autoconf
712 bzip2.dev
713 xz.dev
714 curl.dev
715 ];
716 rjags = [ pkgs.jags ];
717 rJava = with pkgs; [
718 stripJavaArchivesHook
719 zlib
720 bzip2.dev
721 icu
722 xz.dev
723 zstd.dev
724 pcre.dev
725 jdk
726 libzip
727 libdeflate
728 ];
729 Rlibeemd = [ pkgs.gsl ];
730 rmatio = [
731 pkgs.zlib.dev
732 pkgs.pkg-config
733 ];
734 Rmpfr = with pkgs; [
735 gmp
736 mpfr.dev
737 ];
738 Rmpi = with pkgs; [
739 mpi.dev
740 prrte.dev
741 ];
742 RMySQL = with pkgs; [
743 zlib
744 libmysqlclient
745 openssl.dev
746 ];
747 RNetCDF = with pkgs; [
748 netcdf
749 udunits
750 ];
751 RODBC = [ pkgs.libiodbc ];
752 rpanel = [ pkgs.tclPackages.bwidget ];
753 Rpoppler = [ pkgs.poppler ];
754 RPostgreSQL = with pkgs; [ libpq.pg_config ];
755 RProtoBuf = [ pkgs.protobuf ];
756 RSclient = [ pkgs.openssl.dev ];
757 Rserve = [ pkgs.openssl ];
758 Rssa = [ pkgs.fftw.dev ];
759 rsvg = [ pkgs.pkg-config ];
760 runjags = [ pkgs.jags ];
761 xslt = [ pkgs.pkg-config ];
762 RVowpalWabbit = with pkgs; [
763 zlib.dev
764 boost
765 ];
766 rzmq = with pkgs; [
767 zeromq
768 pkg-config
769 ];
770 httpuv = [ pkgs.zlib.dev ];
771 clustermq = [ pkgs.zeromq ];
772 SAVE = with pkgs; [
773 zlib
774 bzip2
775 icu
776 xz
777 pcre
778 ];
779 salso = with pkgs; [
780 cargo
781 rustc
782 ];
783 ymd = with pkgs; [
784 cargo
785 rustc
786 ];
787 arcpbf = with pkgs; [
788 cargo
789 rustc
790 ];
791 sdcTable = with pkgs; [
792 gmp
793 glpk
794 ];
795 seewave = with pkgs; [
796 fftw.dev
797 libsndfile.dev
798 ];
799 seqinr = [ pkgs.zlib.dev ];
800 smcryptoR = with pkgs; [
801 cargo
802 rustc
803 which
804 ];
805 webp = [ pkgs.pkg-config ];
806 seqminer = with pkgs; [
807 zlib.dev
808 bzip2
809 ];
810 sf = with pkgs; [
811 gdal
812 proj
813 geos
814 libtiff
815 curl
816 ];
817 fio = with pkgs; [
818 cargo
819 rustc
820 ];
821 strawr = with pkgs; [ curl.dev ];
822 string2path = [ pkgs.cargo ];
823 terra = with pkgs; [
824 gdal
825 proj
826 geos
827 netcdf
828 ];
829 tok = [ pkgs.cargo ];
830 rshift = with pkgs; [
831 cargo
832 rustc
833 ];
834 arcgisutils = with pkgs; [
835 cargo
836 rustc
837 ];
838 arcgisgeocode = with pkgs; [
839 cargo
840 rustc
841 ];
842 arcgisplaces = with pkgs; [
843 pkg-config
844 openssl.dev
845 cargo
846 rustc
847 ];
848 awdb = [ pkgs.cargo ];
849 apcf = with pkgs; [ geos ];
850 SemiCompRisks = [ pkgs.gsl ];
851 showtext = with pkgs; [
852 zlib
853 libpng
854 icu
855 freetype.dev
856 ];
857 simplexreg = [ pkgs.gsl ];
858 spate = [ pkgs.fftw.dev ];
859 ssanv = [ pkgs.proj ];
860 stsm = [ pkgs.gsl ];
861 stringi = [ pkgs.icu.dev ];
862 parseLatex = [ pkgs.icu.dev ];
863 survSNP = [ pkgs.gsl ];
864 svglite = [ pkgs.libpng.dev ];
865 sysfonts = with pkgs; [
866 zlib
867 libpng
868 freetype.dev
869 ];
870 systemfonts = with pkgs; [
871 fontconfig.dev
872 freetype.dev
873 ];
874 TAQMNGR = [ pkgs.zlib.dev ];
875 TDA = [ pkgs.gmp ];
876 tesseract = with pkgs; [
877 tesseract
878 leptonica
879 ];
880 tiff = [ pkgs.libtiff.dev ];
881 tkrplot = with pkgs; [
882 xorg.libX11
883 tk.dev
884 ];
885 topicmodels = [ pkgs.gsl ];
886 udunits2 = with pkgs; [
887 udunits
888 expat
889 ];
890 units = [ pkgs.udunits ];
891 unigd = [ pkgs.pkg-config ];
892 vdiffr = [ pkgs.libpng.dev ];
893 V8 = [ pkgs.nodejs.libv8 ];
894 XBRL = with pkgs; [
895 zlib
896 libxml2.dev
897 ];
898 XLConnect = [ pkgs.jdk ];
899 xml2 = [ pkgs.libxml2.dev ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.perl ];
900 XML = with pkgs; [
901 libtool
902 libxml2.dev
903 xmlsec
904 libxslt
905 ];
906 affyPLM = [ pkgs.zlib.dev ];
907 BitSeq = [ pkgs.zlib.dev ];
908 DiffBind = with pkgs; [
909 zlib.dev
910 xz.dev
911 bzip2.dev
912 ];
913 ShortRead = [ pkgs.zlib.dev ];
914 oligo = [ pkgs.zlib.dev ];
915 gmapR = [ pkgs.zlib.dev ];
916 Rsubread = [ pkgs.zlib.dev ];
917 XVector = [ pkgs.zlib.dev ];
918 Rsamtools = with pkgs; [
919 zlib.dev
920 curl.dev
921 bzip2
922 xz
923 ];
924 rtracklayer = with pkgs; [
925 zlib.dev
926 curl.dev
927 ];
928 affyio = [ pkgs.zlib.dev ];
929 snpStats = [ pkgs.zlib.dev ];
930 vcfppR = [
931 pkgs.curl.dev
932 pkgs.bzip2
933 pkgs.zlib.dev
934 pkgs.xz
935 ];
936 httpgd = with pkgs; [ cairo.dev ];
937 SymTS = [ pkgs.gsl ];
938 VBLPCM = [ pkgs.gsl ];
939 dynr = [ pkgs.gsl ];
940 mixlink = [ pkgs.gsl ];
941 ridge = [ pkgs.gsl ];
942 smam = [ pkgs.gsl ];
943 rnetcarto = [ pkgs.gsl ];
944 rGEDI = [ pkgs.gsl ];
945 mmpca = [ pkgs.gsl ];
946 monoreg = [ pkgs.gsl ];
947 mvst = [ pkgs.gsl ];
948 mixture = [ pkgs.gsl ];
949 jSDM = [ pkgs.gsl ];
950 immunoClust = [ pkgs.gsl ];
951 hSDM = [ pkgs.gsl ];
952 flowPeaks = [ pkgs.gsl ];
953 fRLR = [ pkgs.gsl ];
954 eaf = [ pkgs.gsl ];
955 diseq = [ pkgs.gsl ];
956 cit = [ pkgs.gsl ];
957 abn = [ pkgs.gsl ];
958 SimInf = [ pkgs.gsl ];
959 RJMCMCNucleosomes = [ pkgs.gsl ];
960 RDieHarder = [ pkgs.gsl ];
961 QF = [ pkgs.gsl ];
962 PICS = [ pkgs.gsl ];
963 RationalMatrix = [
964 pkgs.pkg-config
965 pkgs.gmp.dev
966 ];
967 RcppCWB = [
968 pkgs.pkg-config
969 pkgs.pcre2
970 ];
971 redux = [ pkgs.pkg-config ];
972 s2 = [ pkgs.pkg-config ];
973 rswipl = with pkgs; [
974 cmake
975 pkg-config
976 ];
977 scorematchingad = [ pkgs.cmake ];
978 rrd = [ pkgs.pkg-config ];
979 surveyvoi = [ pkgs.pkg-config ];
980 Rbwa = [ pkgs.zlib.dev ];
981 tergo = with pkgs; [
982 cargo
983 rustc
984 ];
985 gglinedensity = [ pkgs.cargo ];
986 trackViewer = [ pkgs.zlib.dev ];
987 themetagenomics = [ pkgs.zlib.dev ];
988 Rsymphony = [ pkgs.pkg-config ];
989 NanoMethViz = [ pkgs.zlib.dev ];
990 RcppMeCab = [ pkgs.pkg-config ];
991 HilbertVisGUI = with pkgs; [
992 pkg-config
993 which
994 ];
995 textshaping = [ pkgs.pkg-config ];
996 ragg = [ pkgs.pkg-config ];
997 qqconf = [ pkgs.pkg-config ];
998 qspray = [ pkgs.pkg-config ];
999 ratioOfQsprays = [ pkgs.pkg-config ];
1000 watcher = with pkgs; [
1001 cmake
1002 which
1003 ];
1004 symbolicQspray = [ pkgs.pkg-config ];
1005 sphereTessellation = [ pkgs.pkg-config ];
1006 vapour = [ pkgs.pkg-config ];
1007 xdvir = [ pkgs.freetype.dev ];
1008 };
1009
1010 packagesWithBuildInputs = {
1011 # sort -t '=' -k 2
1012 adbcpostgresql = with pkgs; [
1013 readline.dev
1014 zlib.dev
1015 openssl.dev
1016 libkrb5.dev
1017 openpam
1018 libpq
1019 ];
1020 asciicast = with pkgs; [
1021 bzip2.dev
1022 icu.dev
1023 libdeflate
1024 xz.dev
1025 zlib.dev
1026 zstd.dev
1027 ];
1028 island = [ pkgs.gsl.dev ];
1029 knowYourCG = with pkgs; [
1030 zlib.dev
1031 ncurses.dev
1032 ];
1033 svKomodo = [ pkgs.which ];
1034 transmogR = [ pkgs.zlib.dev ];
1035 ulid = [ pkgs.zlib.dev ];
1036 unrtf = with pkgs; [
1037 bzip2.dev
1038 icu.dev
1039 libdeflate
1040 xz.dev
1041 zlib.dev
1042 zstd.dev
1043 ];
1044 nat = [ pkgs.which ];
1045 nat_templatebrains = [ pkgs.which ];
1046 pbdZMQ = [ pkgs.zeromq ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ pkgs.darwin.binutils ];
1047 bigmemory = lib.optionals stdenv.hostPlatform.isLinux [ pkgs.libuuid.dev ];
1048 bayesWatch = [ pkgs.boost.dev ];
1049 clustermq = [ pkgs.pkg-config ];
1050 coga = [ pkgs.gsl.dev ];
1051 mBvs = [ pkgs.gsl.dev ];
1052 rcontroll = [ pkgs.gsl.dev ];
1053 deepSNV = with pkgs; [
1054 xz.dev
1055 bzip2.dev
1056 zlib.dev
1057 ];
1058 epialleleR = with pkgs; [
1059 xz.dev
1060 bzip2.dev
1061 zlib.dev
1062 ];
1063 gdalraster = with pkgs; [
1064 gdal
1065 proj.dev
1066 sqlite.dev
1067 ];
1068 mitoClone2 = with pkgs; [
1069 xz.dev
1070 bzip2.dev
1071 zlib.dev
1072 ];
1073 gpg = [ pkgs.gpgme ];
1074 webp = [ pkgs.libwebp ];
1075 RMark = [ pkgs.which ];
1076 RPushbullet = [ pkgs.which ];
1077 stpphawkes = [ pkgs.gsl ];
1078 registr = with pkgs; [
1079 icu.dev
1080 zlib.dev
1081 bzip2.dev
1082 xz.dev
1083 libdeflate
1084 ];
1085 RCurl = [ pkgs.curl.dev ];
1086 R2SWF = [ pkgs.pkg-config ];
1087 rDEA = [ pkgs.glpk ];
1088 rgl = with pkgs; [
1089 libGLU
1090 libGL
1091 xorg.libX11.dev
1092 freetype.dev
1093 libpng.dev
1094 ];
1095 RGtk2 = [ pkgs.pkg-config ];
1096 RProtoBuf = [ pkgs.pkg-config ];
1097 Rpoppler = [ pkgs.pkg-config ];
1098 RPostgres = with pkgs; [ libpq ];
1099 XML = [ pkgs.pkg-config ];
1100 apsimx = [ pkgs.which ];
1101 cairoDevice = [ pkgs.pkg-config ];
1102 chebpol = [ pkgs.pkg-config ];
1103 baseline = [ pkgs.lapack ];
1104 eds = [ pkgs.zlib.dev ];
1105 pgenlibr = [ pkgs.zlib.dev ];
1106 fftw = [ pkgs.pkg-config ];
1107 gdtools = [ pkgs.pkg-config ];
1108 archive = [ pkgs.libarchive ];
1109 gdalcubes = with pkgs; [
1110 proj.dev
1111 gdal
1112 sqlite.dev
1113 netcdf
1114 ];
1115 rsbml = [ pkgs.libsbml ];
1116 SuperGauss = [
1117 pkgs.pkg-config
1118 pkgs.fftw.dev
1119 ];
1120 ravetools = with pkgs; [
1121 pkg-config
1122 fftw.dev
1123 ];
1124 specklestar = [ pkgs.fftw.dev ];
1125 cartogramR = with pkgs; [
1126 fftw.dev
1127 pkg-config
1128 ];
1129 jqr = [ pkgs.jq.out ];
1130 kza = [ pkgs.pkg-config ];
1131 igraph = with pkgs; [
1132 gmp
1133 libxml2.dev
1134 glpk
1135 ];
1136 interpolation = with pkgs; [
1137 gmp
1138 mpfr
1139 ];
1140 image_textlinedetector = with pkgs; [
1141 pkg-config
1142 opencv
1143 ];
1144 lwgeom = with pkgs; [
1145 pkg-config
1146 proj.dev
1147 sqlite.dev
1148 ];
1149 magick = [ pkgs.pkg-config ];
1150 mwaved = [ pkgs.pkg-config ];
1151 odbc = [ pkgs.pkg-config ];
1152 openssl = [ pkgs.pkg-config ];
1153 pdftools = [ pkgs.pkg-config ];
1154 qckitfastq = [ pkgs.zlib.dev ];
1155 raer = with pkgs; [
1156 zlib.dev
1157 xz.dev
1158 bzip2.dev
1159 ];
1160 RQuantLib = with pkgs; [
1161 quantlib.dev
1162 boost.dev
1163 ];
1164 sf = with pkgs; [
1165 pkg-config
1166 sqlite.dev
1167 proj.dev
1168 ];
1169 terra = with pkgs; [
1170 pkg-config
1171 sqlite.dev
1172 proj.dev
1173 ];
1174 showtext = [ pkgs.pkg-config ];
1175 spate = [ pkgs.pkg-config ];
1176 stringi = [ pkgs.pkg-config ];
1177 sysfonts = [ pkgs.pkg-config ];
1178 systemfonts = [ pkgs.pkg-config ];
1179 tesseract = [ pkgs.pkg-config ];
1180 Cairo = [ pkgs.pkg-config ];
1181 CLVTools = [ pkgs.gsl ];
1182 excursions = [ pkgs.gsl ];
1183 OpenCL = with pkgs; [
1184 opencl-clhpp
1185 ocl-icd
1186 ];
1187 gpuMagic = [ pkgs.ocl-icd ];
1188 JMcmprsk = [ pkgs.gsl ];
1189 KSgeneral = [ pkgs.fftw.dev ];
1190 mashr = [ pkgs.gsl ];
1191 hadron = [ pkgs.gsl ];
1192 AMOUNTAIN = [ pkgs.gsl ];
1193 Rsymphony = with pkgs; [
1194 symphony
1195 doxygen
1196 graphviz
1197 subversion
1198 cgl
1199 clp
1200 ];
1201 tcltk2 = with pkgs; [
1202 tcl
1203 tk
1204 ];
1205 rswipl = with pkgs; [
1206 ncurses.dev
1207 libxcrypt
1208 zlib.dev
1209 ];
1210 GrafGen = [ pkgs.zlib ];
1211 tikzDevice = with pkgs; [
1212 which
1213 texliveMedium
1214 ];
1215 gridGraphics = [ pkgs.which ];
1216 adimpro = with pkgs; [
1217 which
1218 xorg.xdpyinfo
1219 ];
1220 tfevents = [ pkgs.protobuf ];
1221 rsvg = [ pkgs.librsvg.dev ];
1222 ssh = with pkgs; [ libssh ];
1223 s2 = with pkgs; [
1224 abseil-cpp
1225 openssl.dev
1226 ];
1227 ArrayExpressHTS = with pkgs; [
1228 zlib.dev
1229 curl.dev
1230 which
1231 ];
1232 bbl = with pkgs; [ gsl ];
1233 diffHic = with pkgs; [
1234 xz.dev
1235 bzip2.dev
1236 ];
1237 writexl = with pkgs; [ zlib.dev ];
1238 xslt =
1239 with pkgs;
1240 [
1241 libxslt
1242 libxml2
1243 ]
1244 ++ lib.optionals stdenv.hostPlatform.isDarwin [ xz ];
1245 qpdf = with pkgs; [
1246 libjpeg.dev
1247 zlib.dev
1248 ];
1249 vcfR = with pkgs; [ zlib.dev ];
1250 bio3d = with pkgs; [ zlib.dev ];
1251 arrangements = with pkgs; [ gmp.dev ];
1252 gfilogisreg = [ pkgs.gmp.dev ];
1253 spp = with pkgs; [ zlib.dev ];
1254 bamsignals = with pkgs; [
1255 zlib.dev
1256 xz.dev
1257 bzip2
1258 ];
1259 Rbowtie = with pkgs; [ zlib.dev ];
1260 gaston = with pkgs; [ zlib.dev ];
1261 csaw = with pkgs; [
1262 zlib.dev
1263 xz.dev
1264 bzip2.dev
1265 curl
1266 ];
1267 DirichletMultinomial = with pkgs; [ gsl ];
1268 DiffBind = with pkgs; [ zlib.dev ];
1269 CNEr = with pkgs; [ zlib ];
1270 GMMAT = with pkgs; [
1271 zlib.dev
1272 bzip2.dev
1273 ];
1274 rmumps = with pkgs; [ zlib.dev ];
1275 HiCDCPlus = [ pkgs.zlib.dev ];
1276 PopGenome = [ pkgs.zlib.dev ];
1277 QuasR = with pkgs; [
1278 zlib.dev
1279 xz.dev
1280 bzip2.dev
1281 ];
1282 Rarr = [ pkgs.zlib.dev ];
1283 Rbowtie2 = [ pkgs.zlib.dev ];
1284 Rfastp = with pkgs; [
1285 xz.dev
1286 bzip2.dev
1287 zlib.dev
1288 ];
1289 maftools = with pkgs; [
1290 zlib.dev
1291 bzip2
1292 xz.dev
1293 ];
1294 Rmmquant = [ pkgs.zlib.dev ];
1295 SICtools = with pkgs; [
1296 zlib.dev
1297 ncurses.dev
1298 ];
1299 Signac = [ pkgs.zlib.dev ];
1300 TransView = with pkgs; [
1301 xz.dev
1302 bzip2.dev
1303 zlib.dev
1304 ];
1305 bigsnpr = [ pkgs.zlib.dev ];
1306 zlib = [ pkgs.zlib.dev ];
1307 divest = [ pkgs.zlib.dev ];
1308 hipread = [ pkgs.zlib.dev ];
1309 jack = with pkgs; [
1310 gmp.dev
1311 mpfr.dev
1312 ];
1313 jackalope = with pkgs; [
1314 zlib.dev
1315 xz.dev
1316 bzip2.dev
1317 ];
1318 largeList = [ pkgs.zlib.dev ];
1319 mappoly = [ pkgs.zlib.dev ];
1320 VariantAnnotation = with pkgs; [
1321 zlib.dev
1322 curl.dev
1323 bzip2.dev
1324 xz.dev
1325 ];
1326 matchingMarkets = [ pkgs.zlib.dev ];
1327 methylKit = with pkgs; [
1328 zlib.dev
1329 bzip2.dev
1330 xz.dev
1331 ];
1332 ndjson = [ pkgs.zlib.dev ];
1333 podkat = with pkgs; [
1334 zlib.dev
1335 xz.dev
1336 bzip2.dev
1337 ];
1338 qrqc = [ pkgs.zlib.dev ];
1339 rJPSGCS = [ pkgs.zlib.dev ];
1340 rhdf5filters = with pkgs; [
1341 zlib.dev
1342 bzip2.dev
1343 ];
1344 symengine = with pkgs; [
1345 mpfr
1346 symengine
1347 flint
1348 ];
1349 rtk = [ pkgs.zlib.dev ];
1350 scPipe = with pkgs; [
1351 bzip2.dev
1352 xz.dev
1353 zlib.dev
1354 ];
1355 seqTools = [ pkgs.zlib.dev ];
1356 seqbias = with pkgs; [
1357 zlib.dev
1358 bzip2.dev
1359 xz.dev
1360 ];
1361 sparkwarc = [ pkgs.zlib.dev ];
1362 RoBMA = [ pkgs.jags ];
1363 RoBSA = [ pkgs.jags ];
1364 pexm = [ pkgs.jags ];
1365 rGEDI = with pkgs; [
1366 libgeotiff.dev
1367 libaec
1368 zlib.dev
1369 hdf5.dev
1370 ];
1371 rawrr = [ pkgs.mono ];
1372 HDF5Array = [ pkgs.zlib.dev ];
1373 FLAMES = with pkgs; [
1374 zlib.dev
1375 bzip2.dev
1376 xz.dev
1377 ];
1378 ncdfFlow = [ pkgs.zlib.dev ];
1379 proj4 = [ pkgs.proj.dev ];
1380 rtmpt = [ pkgs.gsl ];
1381 mixcat = [ pkgs.gsl ];
1382 libstableR = [ pkgs.gsl ];
1383 landsepi = [ pkgs.gsl ];
1384 flan = [ pkgs.gsl ];
1385 econetwork = [ pkgs.gsl ];
1386 crandep = [ pkgs.gsl ];
1387 catSurv = [ pkgs.gsl ];
1388 ccfindR = [ pkgs.gsl ];
1389 RcppPlanc = with pkgs; [
1390 hwloc
1391 hdf5.dev
1392 ];
1393 screenCounter = [ pkgs.zlib.dev ];
1394 SPARSEMODr = [ pkgs.gsl ];
1395 RKHSMetaMod = [ pkgs.gsl ];
1396 LCMCR = [ pkgs.gsl ];
1397 BNSP = [ pkgs.gsl ];
1398 scModels = [ pkgs.mpfr.dev ];
1399 multibridge = with pkgs; [
1400 pkg-config
1401 mpfr.dev
1402 ];
1403 RcppCWB = with pkgs; [
1404 pcre.dev
1405 glib.dev
1406 ];
1407 redux = [ pkgs.hiredis ];
1408 RmecabKo = [ pkgs.mecab ];
1409 markets = [ pkgs.gsl ];
1410 rlas = [ pkgs.boost ];
1411 bgx = [ pkgs.boost ];
1412 PoissonBinomial = [ pkgs.fftw.dev ];
1413 poisbinom = [ pkgs.fftw.dev ];
1414 PoissonMultinomial = [ pkgs.fftw.dev ];
1415 psbcGroup = [ pkgs.gsl.dev ];
1416 rrd = [ pkgs.rrdtool ];
1417 flowWorkspace = [ pkgs.zlib.dev ];
1418 RITCH = [ pkgs.zlib.dev ];
1419 RcppMeCab = [ pkgs.mecab ];
1420 PING = [ pkgs.gsl ];
1421 PROJ = [ pkgs.proj.dev ];
1422 RcppAlgos = [ pkgs.gmp.dev ];
1423 RcppBigIntAlgos = [ pkgs.gmp.dev ];
1424 spaMM = [ pkgs.gsl ];
1425 shrinkTVP = [ pkgs.gsl ];
1426 sbrl = with pkgs; [
1427 gsl
1428 gmp.dev
1429 ];
1430 surveyvoi = with pkgs; [
1431 gmp.dev
1432 mpfr.dev
1433 ];
1434 unigd =
1435 with pkgs;
1436 [
1437 cairo.dev
1438 libpng.dev
1439 ]
1440 ++ lib.optionals stdenv.hostPlatform.isDarwin [
1441 expat
1442 xorg.libXdmcp
1443 ];
1444 HilbertVisGUI = [ pkgs.gtkmm2.dev ];
1445 textshaping = with pkgs; [
1446 harfbuzz.dev
1447 freetype.dev
1448 fribidi
1449 libpng
1450 ];
1451 DropletUtils = [ pkgs.zlib.dev ];
1452 RMariaDB = [ pkgs.libmysqlclient.dev ];
1453 ijtiff = with pkgs; [
1454 libtiff
1455 libjpeg
1456 zlib
1457 ];
1458 ragg =
1459 with pkgs;
1460 [
1461 freetype.dev
1462 libpng.dev
1463 libtiff.dev
1464 zlib.dev
1465 libjpeg.dev
1466 bzip2.dev
1467 ]
1468 ++ lib.optional stdenv.hostPlatform.isDarwin lerc.dev;
1469 qqconf = [ pkgs.fftw.dev ];
1470 spFW = [ pkgs.fftw.dev ];
1471 qspray = with pkgs; [
1472 gmp.dev
1473 mpfr.dev
1474 ];
1475 ratioOfQsprays = with pkgs; [
1476 gmp.dev
1477 mpfr.dev
1478 ];
1479 symbolicQspray = with pkgs; [
1480 gmp.dev
1481 mpfr.dev
1482 ];
1483 sphereTessellation = with pkgs; [
1484 gmp.dev
1485 mpfr.dev
1486 ];
1487 vapour = with pkgs; [
1488 proj.dev
1489 gdal
1490 ];
1491 MedianaDesigner = [ pkgs.zlib.dev ];
1492 ChemmineOB = with pkgs; [
1493 eigen
1494 openbabel
1495 ];
1496 DGP4LCF = [
1497 pkgs.lapack
1498 pkgs.blas
1499 ];
1500 };
1501
1502 packagesRequiringX = [
1503 "analogueExtra"
1504 "AnalyzeFMRI"
1505 "AnnotLists"
1506 "asbio"
1507 "BCA"
1508 "biplotbootGUI"
1509 "cairoDevice"
1510 "cncaGUI"
1511 "CommunityCorrelogram"
1512 "dave"
1513 "DeducerPlugInExample"
1514 "DeducerPlugInScaling"
1515 "DeducerSpatial"
1516 "DeducerSurvival"
1517 "DeducerText"
1518 "Demerelate"
1519 "diveR"
1520 "dpa"
1521 "dynamicGraph"
1522 "EasyqpcR"
1523 "exactLoglinTest"
1524 "fisheyeR"
1525 "forams"
1526 "forensim"
1527 "GGEBiplotGUI"
1528 "gsubfn"
1529 "gWidgets2RGtk2"
1530 "gWidgets2tcltk"
1531 "HiveR"
1532 "ic50"
1533 "iDynoR"
1534 "iplots"
1535 "likeLTD"
1536 "loon"
1537 "loon_ggplot"
1538 "loon_shiny"
1539 "loon_tourr"
1540 "Meth27QC"
1541 "mixsep"
1542 "multibiplotGUI"
1543 "OligoSpecificitySystem"
1544 "optbdmaeAT"
1545 "optrcdmaeAT"
1546 "paleoMAS"
1547 "RandomFields"
1548 "rfviz"
1549 "RclusTool"
1550 "RcmdrPlugin_coin"
1551 "RcmdrPlugin_FuzzyClust"
1552 "RcmdrPlugin_IPSUR"
1553 "RcmdrPlugin_lfstat"
1554 "RcmdrPlugin_PcaRobust"
1555 "RcmdrPlugin_plotByGroup"
1556 "RcmdrPlugin_pointG"
1557 "RcmdrPlugin_sampling"
1558 "RcmdrPlugin_SCDA"
1559 "RcmdrPlugin_SLC"
1560 "RcmdrPlugin_steepness"
1561 "rich"
1562 "RSurvey"
1563 "simba"
1564 "SimpleTable"
1565 "SOLOMON"
1566 "soptdmaeA"
1567 "strvalidator"
1568 "stylo"
1569 "SyNet"
1570 "switchboard"
1571 "tkImgR"
1572 "TTAinterfaceTrendAnalysis"
1573 "twiddler"
1574 "uHMM"
1575 "VecStatGraphs3D"
1576 ];
1577
1578 packagesRequiringHome = [
1579 "aroma_affymetrix"
1580 "aroma_cn"
1581 "aroma_core"
1582 "avotrex"
1583 "beer"
1584 "ceramic"
1585 "connections"
1586 "covidmx"
1587 "csodata"
1588 "DiceView"
1589 "facmodTS"
1590 "gasanalyzer"
1591 "margaret"
1592 "MSnID"
1593 "OmnipathR"
1594 "orthGS"
1595 "pannotator"
1596 "precommit"
1597 "protGear"
1598 "PCRA"
1599 "PSCBS"
1600 "iemisc"
1601 "red"
1602 "repmis"
1603 "R_cache"
1604 "R_filesets"
1605 "RKorAPClient"
1606 "R_rsp"
1607 "salso"
1608 "scholar"
1609 "SpatialDecon"
1610 "stepR"
1611 "styler"
1612 "tabs"
1613 "teal_code"
1614 "TreeTools"
1615 "TreeSearch"
1616 "ACNE"
1617 "APAlyzer"
1618 "BAT"
1619 "EstMix"
1620 "Patterns"
1621 "PECA"
1622 "Quartet"
1623 "ShinyQuickStarter"
1624 "TIN"
1625 "cfdnakit"
1626 "CaDrA"
1627 "GNOSIS"
1628 "TotalCopheneticIndex"
1629 "TreeDist"
1630 "biocthis"
1631 "calmate"
1632 "fgga"
1633 "fulltext"
1634 "dataverse"
1635 "immuneSIM"
1636 "mastif"
1637 "shinymeta"
1638 "shinyobjects"
1639 "wppi"
1640 "pins"
1641 "CoTiMA"
1642 "TBRDist"
1643 "Rogue"
1644 "fixest"
1645 "paxtoolsr"
1646 "systemPipeShiny"
1647 "matlab2r"
1648 "GNOSIS"
1649 ];
1650
1651 packagesToSkipCheck = [
1652 "MsDataHub" # tries to connect to ExperimentHub
1653 "Rmpi" # tries to run MPI processes
1654 "ReactomeContentService4R" # tries to connect to Reactome
1655 "PhIPData" # tries to download something from a DB
1656 "RBioFormats" # tries to download jar during load test
1657 "pbdMPI" # tries to run MPI processes
1658 "CTdata" # tries to connect to ExperimentHub
1659 "rfaRm" # tries to connect to Ebi
1660 "data_table" # fails to rename shared library before check
1661 "coMethDMR" # tries to connect to ExperimentHub
1662 "multiMiR" # tries to connect to DB
1663 "snapcount" # tries to connect to snaptron.cs.jhu.edu
1664 ];
1665
1666 # Packages which cannot be installed due to lack of dependencies or other reasons.
1667 brokenPackages = [
1668 "av"
1669 "NetLogoR"
1670 "valse"
1671 "HierO"
1672 "HIBAG"
1673 "HiveR"
1674 "minired" # deprecated on CRAN
1675
1676 # Impure network access during build
1677 "BulkSignalR"
1678 "waddR"
1679 "tiledb"
1680 "switchr"
1681
1682 # ExperimentHub dependents, require net access during build
1683 "DuoClustering2018"
1684 "FieldEffectCrc"
1685 "GenomicDistributionsData"
1686 "hpar"
1687 "HDCytoData"
1688 "HMP16SData"
1689 "PANTHER_db"
1690 "RNAmodR_Data"
1691 "SCATEData"
1692 "SingleMoleculeFootprintingData"
1693 "TabulaMurisData"
1694 "benchmarkfdrData2019"
1695 "bodymapRat"
1696 "clustifyrdatahub"
1697 "CTexploreR"
1698 "depmap"
1699 "emtdata"
1700 "metaboliteIDmapping"
1701 "msigdb"
1702 "muscData"
1703 "org_Mxanthus_db"
1704 "scpdata"
1705 "signatureSearch"
1706 "nullrangesData"
1707 ];
1708
1709 otherOverrides = old: new: {
1710 ACME = old.ACME.overrideAttrs (attrs: {
1711 env = (attrs.env or { }) // {
1712 # Avoid incompatible pointer type error
1713 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-incompatible-pointer-types";
1714 };
1715 });
1716
1717 vegan3d = old.vegan3d.overrideAttrs (attrs: {
1718 RGL_USE_NULL = "true";
1719 });
1720
1721 # it can happen that the major version of arrow-cpp is ahead of the
1722 # rPackages.arrow that would be built from CRAN sources; therefore, to avoid
1723 # build failures and manual updates of the hash, we use the R source at
1724 # the GitHub release state of libarrow (arrow-cpp) in Nixpkgs. This may
1725 # not exactly represent the CRAN sources, but because patching of the
1726 # CRAN R package is mostly done to meet special CRAN build requirements,
1727 # this is a straightforward approach. Example where patching was necessary
1728 # -> arrow 14.0.0.2 on CRAN; was lagging behind libarrow release:
1729 # https://github.com/apache/arrow/issues/39698 )
1730 arrow = old.arrow.overrideAttrs (attrs: {
1731 src = pkgs.arrow-cpp.src;
1732 name = "r-arrow-${pkgs.arrow-cpp.version}";
1733 prePatch = "cd r";
1734 postPatch = ''
1735 patchShebangs configure
1736 '';
1737 buildInputs = attrs.buildInputs ++ [
1738 pkgs.arrow-cpp
1739 ];
1740 });
1741
1742 gifski = old.gifski.overrideAttrs (attrs: {
1743 cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
1744 src = attrs.src;
1745 sourceRoot = "gifski/src/myrustlib";
1746 hash = "sha256-yz6M3qDQPfT0HJHyK2wgzgl5sBh7EmdJ5zW8SJkk+wY=";
1747 };
1748
1749 cargoRoot = "src/myrustlib";
1750
1751 nativeBuildInputs = attrs.nativeBuildInputs ++ [
1752 pkgs.rustPlatform.cargoSetupHook
1753 pkgs.cargo
1754 pkgs.rustc
1755 ];
1756 });
1757
1758 gmapR = old.gmapR.overrideAttrs (attrs: {
1759 env = (attrs.env or { }) // {
1760 # Avoid incompatible pointer type error
1761 NIX_CFLAGS_COMPILE =
1762 attrs.env.NIX_CFLAGS_COMPILE
1763 + " -Wno-implicit-function-declaration -Wno-incompatible-pointer-types";
1764 };
1765 });
1766
1767 timeless = old.timeless.overrideAttrs (attrs: {
1768 preConfigure = "patchShebangs configure";
1769 cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
1770 src = attrs.src;
1771 sourceRoot = "timeless/src/rust";
1772 hash = "sha256-5TV7iCzaaFwROfJNO6pvSUbJBzV+wZlU5+ZK4AMT6X0=";
1773 };
1774
1775 cargoRoot = "src/rust";
1776
1777 nativeBuildInputs = attrs.nativeBuildInputs ++ [
1778 pkgs.rustPlatform.cargoSetupHook
1779 pkgs.cargo
1780 ];
1781 });
1782
1783 arcpbf = old.arcpbf.overrideAttrs (attrs: {
1784 postPatch = "patchShebangs configure";
1785 });
1786
1787 arcgisplaces = old.arcgisplaces.overrideAttrs (attrs: {
1788 postPatch = "patchShebangs configure";
1789 });
1790
1791 cartogramR = old.cartogramR.overrideAttrs (attrs: {
1792 postPatch = "patchShebangs configure";
1793 });
1794
1795 rshift = old.rshift.overrideAttrs (attrs: {
1796 postPatch = "patchShebangs configure";
1797 });
1798
1799 ymd = old.ymd.overrideAttrs (attrs: {
1800 postPatch = "patchShebangs configure";
1801 });
1802
1803 SynExtend = old.SynExtend.overrideAttrs (attrs: {
1804 # build might fail due to race condition
1805 enableParallelBuilding = false;
1806 });
1807
1808 orbweaver = old.orbweaver.overrideAttrs (attrs: {
1809 postPatch = "patchShebangs configure";
1810 nativeBuildInputs = attrs.nativeBuildInputs ++ [
1811 pkgs.cargo
1812 pkgs.rustc
1813 ];
1814 });
1815
1816 xml2 = old.xml2.overrideAttrs (attrs: {
1817 preConfigure = ''
1818 export LIBXML_INCDIR=${pkgs.libxml2.dev}/include/libxml2
1819 patchShebangs configure
1820 '';
1821 });
1822
1823 findpython = old.findpython.overrideAttrs (attrs: {
1824 postPatch = ''
1825 substituteInPlace "R/find_python_cmd.r" \
1826 --replace-fail 'python_cmds[which(python_cmds != "")]' \
1827 'python_cmds <- c(python_cmds, file.path("${lib.getBin pkgs.python3}", "bin", "python3"))
1828 python_cmds[which(python_cmds != "")]'
1829 '';
1830 });
1831
1832 fcl = old.fcl.overrideAttrs (attrs: {
1833 postPatch = "patchShebangs configure";
1834 });
1835
1836 fio = old.fio.overrideAttrs (attrs: {
1837 postPatch = "patchShebangs configure";
1838 });
1839
1840 hypeR = old.hypeR.overrideAttrs (attrs: {
1841 postPatch = ''
1842 substituteInPlace NAMESPACE R/db_msig.R --replace-fail \
1843 "msigdbr_show_species" "msigdbr_species"
1844 '';
1845 });
1846
1847 alcyon = old.alcyon.overrideAttrs (attrs: {
1848 configureFlags = [
1849 "--enable-force-openmp"
1850 ];
1851 });
1852
1853 awdb = old.awdb.overrideAttrs (attrs: {
1854 postPatch = ''
1855 patchShebangs configure
1856 '';
1857 });
1858
1859 clarabel = old.clarabel.overrideAttrs (attrs: {
1860 postPatch = ''
1861 patchShebangs configure
1862 '';
1863 });
1864
1865 cn_farms = old.cn_farms.overrideAttrs (attrs: {
1866 postPatch = ''
1867 # https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
1868 substituteInPlace "src/sparse_farms.c" \
1869 --replace-fail "Calloc" "R_Calloc" \
1870 --replace-fail "Free" "R_Free"
1871 '';
1872 });
1873
1874 PICS = old.PICS.overrideAttrs (attrs: {
1875 postPatch = ''
1876 # https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
1877 substituteInPlace "src/segment.c" \
1878 --replace-fail "Calloc" "R_Calloc"
1879 '';
1880 });
1881
1882 genoCN = old.genoCN.overrideAttrs (attrs: {
1883 postPatch = ''
1884 # https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
1885 substituteInPlace "src/xCNV.c" \
1886 --replace-fail "Calloc" "R_Calloc" \
1887 --replace-fail "Free" "R_Free"
1888 '';
1889 });
1890
1891 trigger = old.trigger.overrideAttrs (attrs: {
1892 postPatch = ''
1893 # https://developer.r-project.org/blosxom.cgi/R-devel/NEWS/2025/01/08#n2025-01-08
1894 substituteInPlace "src/trigger.c" \
1895 --replace-fail "Calloc" "R_Calloc" \
1896 --replace-fail "Free" "R_Free"
1897 '';
1898 });
1899
1900 lwgeom = old.lwgeom.overrideAttrs (attrs: {
1901 configureFlags = [
1902 "--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
1903 ];
1904 });
1905
1906 sf = old.sf.overrideAttrs (attrs: {
1907 configureFlags = [
1908 "--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
1909 ];
1910 });
1911
1912 terra = old.terra.overrideAttrs (attrs: {
1913 configureFlags = [
1914 "--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
1915 ];
1916 });
1917
1918 vapour = old.vapour.overrideAttrs (attrs: {
1919 configureFlags = [
1920 "--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
1921 ];
1922 });
1923
1924 rzmq = old.rzmq.overrideAttrs (attrs: {
1925 preConfigure = "patchShebangs configure";
1926 });
1927
1928 nanoparquet = old.nanoparquet.overrideAttrs (attrs: {
1929 postPatch = "patchShebangs configure";
1930 });
1931
1932 nanonext = old.nanonext.overrideAttrs (attrs: {
1933 NIX_LDFLAGS = "-lnng -lmbedtls -lmbedx509 -lmbedcrypto";
1934 });
1935
1936 clustermq = old.clustermq.overrideAttrs (attrs: {
1937 preConfigure = "patchShebangs configure";
1938 });
1939
1940 Cairo = old.Cairo.overrideAttrs (attrs: {
1941 NIX_LDFLAGS = "-lfontconfig";
1942 });
1943
1944 curl = old.curl.overrideAttrs (attrs: {
1945 preConfigure = "patchShebangs configure";
1946 });
1947
1948 Cyclops = old.Cyclops.overrideAttrs (attrs: {
1949 preConfigure = "patchShebangs configure";
1950 });
1951
1952 RcppParallel = old.RcppParallel.overrideAttrs (attrs: {
1953 preConfigure = "patchShebangs configure";
1954 });
1955
1956 Colossus = old.Colossus.overrideAttrs (_: {
1957 postPatch = "patchShebangs configure";
1958 });
1959
1960 arcgisutils = old.arcgisutils.overrideAttrs (_: {
1961 postPatch = "patchShebangs configure";
1962 });
1963
1964 arcgisgeocode = old.arcgisgeocode.overrideAttrs (_: {
1965 postPatch = "patchShebangs configure";
1966 });
1967
1968 gmailr = old.gmailr.overrideAttrs (attrs: {
1969 postPatch = "patchShebangs configure";
1970 });
1971
1972 prqlr = old.prqlr.overrideAttrs (attrs: {
1973 postPatch = "patchShebangs configure";
1974 });
1975
1976 pingr = old.pingr.overrideAttrs (_: {
1977 postPatch = "patchShebangs configure";
1978 });
1979
1980 heck = old.heck.overrideAttrs (attrs: {
1981 postPatch = "patchShebangs configure";
1982 });
1983
1984 surtvep = old.surtvep.overrideAttrs (attrs: {
1985 postPatch = "patchShebangs configure";
1986 });
1987
1988 rtiktoken = old.rtiktoken.overrideAttrs (attrs: {
1989 postPatch = "patchShebangs configure";
1990 nativeBuildInputs = attrs.nativeBuildInputs ++ [
1991 pkgs.cargo
1992 pkgs.rustc
1993 ];
1994 });
1995
1996 purrr = old.purrr.overrideAttrs (attrs: {
1997 patchPhase = "patchShebangs configure";
1998 });
1999
2000 tergo = old.tergo.overrideAttrs (attrs: {
2001 patchPhase = "patchShebangs configure";
2002 });
2003
2004 luajr = old.luajr.overrideAttrs (attrs: {
2005 hardeningDisable = [ "format" ];
2006 postPatch = "patchShebangs configure";
2007 });
2008
2009 RcppArmadillo = old.RcppArmadillo.overrideAttrs (attrs: {
2010 patchPhase = "patchShebangs configure";
2011 });
2012
2013 RcppGetconf = old.RcppGetconf.overrideAttrs (attrs: {
2014 postPatch = "patchShebangs configure";
2015 });
2016
2017 SpliceWiz = old.SpliceWiz.overrideAttrs (attrs: {
2018 postPatch = "patchShebangs configure";
2019 });
2020
2021 zoomerjoin = old.zoomerjoin.overrideAttrs (attrs: {
2022 nativeBuildInputs = [
2023 pkgs.cargo
2024 pkgs.rustc
2025 ]
2026 ++ attrs.nativeBuildInputs;
2027 postPatch = "patchShebangs configure";
2028 });
2029
2030 AneuFinder = old.AneuFinder.overrideAttrs (attrs: {
2031 postPatch = ''
2032 substituteInPlace src/utility.cpp src/densities.cpp src/loghmm.cpp src/scalehmm.cpp \
2033 --replace-fail "Calloc(" "R_Calloc(" \
2034 --replace-fail "Free(" "R_Free("
2035 '';
2036 });
2037
2038 b64 = old.b64.overrideAttrs (attrs: {
2039 nativeBuildInputs =
2040 with pkgs;
2041 [
2042 cargo
2043 rustc
2044 ]
2045 ++ attrs.nativeBuildInputs;
2046 postPatch = "patchShebangs configure";
2047 });
2048
2049 ocf = old.ocf.overrideAttrs (attrs: {
2050 postPatch = "patchShebangs configure";
2051 });
2052
2053 data_table = old.data_table.overrideAttrs (attrs: {
2054 env = (attrs.env or { }) // {
2055 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -fopenmp";
2056 };
2057 patchPhase = "patchShebangs configure";
2058 });
2059
2060 cisPath = old.cisPath.overrideAttrs (attrs: {
2061 hardeningDisable = [ "format" ];
2062 });
2063
2064 HilbertVis = old.HilbertVis.overrideAttrs (attrs: {
2065 hardeningDisable = [ "format" ];
2066 });
2067
2068 HilbertVisGUI = old.HilbertVisGUI.overrideAttrs (attrs: {
2069 hardeningDisable = [ "format" ];
2070 });
2071
2072 MANOR = old.MANOR.overrideAttrs (attrs: {
2073 hardeningDisable = [ "format" ];
2074 });
2075
2076 rGADEM = old.rGADEM.overrideAttrs (attrs: {
2077 hardeningDisable = [ "format" ];
2078 });
2079
2080 rsgeo = old.rsgeo.overrideAttrs (attrs: {
2081 nativeBuildInputs = [ pkgs.cargo ] ++ attrs.nativeBuildInputs;
2082 postPatch = "patchShebangs configure";
2083 });
2084
2085 instantiate = old.instantiate.overrideAttrs (attrs: {
2086 postPatch = "patchShebangs configure";
2087 });
2088
2089 exifr = old.exifr.overrideAttrs (attrs: {
2090 postPatch = ''
2091 for f in .onLoad .onAttach ; do
2092 substituteInPlace R/load_hook.R \
2093 --replace-fail \
2094 "$f <- function(libname, pkgname) {" \
2095 "$f <- function(libname, pkgname) {
2096 options(
2097 exifr.perlpath = \"${lib.getBin pkgs.perl}/bin/perl\",
2098 exifr.exiftoolcommand = \"${lib.getBin pkgs.exiftool}/bin/exiftool\"
2099 )"
2100 done
2101 '';
2102 });
2103
2104 NGCHM = old.NGCHM.overrideAttrs (attrs: {
2105 postPatch = ''
2106 substituteInPlace "inst/base.config/conf.d/01-server-protocol-scl.R" \
2107 --replace-fail \
2108 "/bin/hostname" "${lib.getBin pkgs.hostname}/bin/hostname"
2109 '';
2110 });
2111
2112 metahdep = old.metahdep.overrideAttrs (attrs: {
2113 env = (attrs.env or { }) // {
2114 # Avoid incompatible pointer type error
2115 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-int-conversion";
2116 };
2117 });
2118
2119 ModelMetrics = old.ModelMetrics.overrideAttrs (attrs: {
2120 env = (attrs.env or { }) // {
2121 NIX_CFLAGS_COMPILE =
2122 attrs.env.NIX_CFLAGS_COMPILE + lib.optionalString stdenv.hostPlatform.isDarwin " -fopenmp";
2123 };
2124 });
2125
2126 rawrr = old.rawrr.overrideAttrs (attrs: {
2127 postPatch = ''
2128 substituteInPlace "R/zzz.R" "R/dotNetAssembly.R" --replace-warn \
2129 "Sys.which('mono')" "'${lib.getBin pkgs.mono}/bin/mono'"
2130
2131 substituteInPlace "R/dotNetAssembly.R" --replace-warn \
2132 "Sys.which(\"xbuild\")" "\"${lib.getBin pkgs.mono}/bin/xbuild\""
2133
2134 substituteInPlace "R/dotNetAssembly.R" --replace-warn \
2135 "cmd <- ifelse(Sys.which(\"msbuild\") != \"\", \"msbuild\", \"xbuild\")" \
2136 "cmd <- \"${lib.getBin pkgs.mono}/bin/xbuild\""
2137
2138 substituteInPlace "R/rawrr.R" --replace-warn \
2139 "Sys.which(\"mono\")" "\"${lib.getBin pkgs.mono}/bin/mono\""
2140 '';
2141 });
2142
2143 rpf = old.rpf.overrideAttrs (attrs: {
2144 patchPhase = "patchShebangs configure";
2145 });
2146
2147 rJava = old.rJava.overrideAttrs (attrs: {
2148 preConfigure = ''
2149 export JAVA_CPPFLAGS=-I${pkgs.jdk}/include/
2150 export JAVA_HOME=${pkgs.jdk}
2151 substituteInPlace R/zzz.R.in \
2152 --replace-fail ".onLoad <- function(libname, pkgname) {" \
2153 ".onLoad <- function(libname, pkgname) {
2154 Sys.setenv(\"JAVA_HOME\" = Sys.getenv(\"JAVA_HOME\", unset = \"${pkgs.jdk}\"))"
2155 '';
2156 });
2157
2158 JavaGD = old.JavaGD.overrideAttrs (attrs: {
2159 preConfigure = ''
2160 export JAVA_CPPFLAGS=-I${pkgs.jdk}/include/
2161 export JAVA_HOME=${pkgs.jdk}
2162 '';
2163 });
2164
2165 jqr = old.jqr.overrideAttrs (attrs: {
2166 preConfigure = ''
2167 patchShebangs configure
2168 '';
2169 });
2170
2171 pathfindR = old.pathfindR.overrideAttrs (attrs: {
2172 postPatch = ''
2173 substituteInPlace "R/zzz.R" \
2174 --replace-fail " check_java_version()" " Sys.setenv(JAVA_HOME = \"${lib.getBin pkgs.jre_minimal}\"); check_java_version()"
2175 substituteInPlace "R/active_snw_search.R" \
2176 --replace-fail "system(paste0(\"java" "system(paste0(\"${lib.getBin pkgs.jre_minimal}/bin/java"
2177 '';
2178 });
2179
2180 pbdZMQ = old.pbdZMQ.overrideAttrs (attrs: {
2181 postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
2182 for file in R/*.{r,r.in}; do
2183 sed -i 's#system("which \(\w\+\)"[^)]*)#"${pkgs.cctools}/bin/\1"#g' $file
2184 done
2185 '';
2186 });
2187
2188 quarto = old.quarto.overrideAttrs (attrs: {
2189 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ pkgs.quarto ];
2190 postPatch = ''
2191 substituteInPlace "R/quarto.R" \
2192 --replace-fail "Sys.getenv(\"QUARTO_PATH\", unset = NA_character_)" "Sys.getenv(\"QUARTO_PATH\", unset = '${lib.getBin pkgs.quarto}/bin/quarto')"
2193 '';
2194 });
2195
2196 Rhisat2 = old.Rhisat2.overrideAttrs (attrs: {
2197 enableParallelBuilding = false;
2198 });
2199
2200 s2 = old.s2.overrideAttrs (attrs: {
2201 preConfigure = ''
2202 substituteInPlace "configure" \
2203 --replace-fail "absl_s2" "absl_flags absl_check"
2204 '';
2205 });
2206
2207 Rmpi = old.Rmpi.overrideAttrs (attrs: {
2208 configureFlags = [
2209 "--with-Rmpi-type=OPENMPI"
2210 ];
2211 });
2212
2213 Rmpfr = old.Rmpfr.overrideAttrs (attrs: {
2214 configureFlags = [
2215 "--with-mpfr-include=${pkgs.mpfr.dev}/include"
2216 ];
2217 });
2218
2219 CNEr = old.CNEr.overrideAttrs (attrs: {
2220 patches = [ ./patches/CNEr.patch ];
2221 });
2222
2223 covidsymptom = old.covidsymptom.overrideAttrs (attrs: {
2224 preConfigure = "rm R/covidsymptomdata.R";
2225 });
2226
2227 cubature = old.cubature.overrideAttrs (attrs: {
2228 enableParallelBuilding = false;
2229 });
2230
2231 RVowpalWabbit = old.RVowpalWabbit.overrideAttrs (attrs: {
2232 configureFlags = [
2233 "--with-boost=${pkgs.boost.dev}"
2234 "--with-boost-libdir=${pkgs.boost.out}/lib"
2235 ];
2236 });
2237
2238 RAppArmor = old.RAppArmor.overrideAttrs (attrs: {
2239 patches = [ ./patches/RAppArmor.patch ];
2240 LIBAPPARMOR_HOME = pkgs.libapparmor;
2241 });
2242
2243 # Append cargo path to path variable
2244 # This will provide cargo in case it's not set by the user
2245 rextendr = old.rextendr.overrideAttrs (attrs: {
2246 postPatch = ''
2247 substituteInPlace R/zzz.R --replace-fail \
2248 ".onLoad <- function(...) {" \
2249 '.onLoad <- function(...) {
2250 Sys.setenv(PATH = paste0(Sys.getenv("PATH"), ":${lib.getBin pkgs.cargo}/bin"))'
2251 '';
2252 });
2253
2254 RMySQL = old.RMySQL.overrideAttrs (attrs: {
2255 MYSQL_DIR = "${pkgs.libmysqlclient}";
2256 PKGCONFIG_CFLAGS = "-I${pkgs.libmysqlclient.dev}/include/mysql";
2257 NIX_CFLAGS_LINK = "-L${pkgs.libmysqlclient}/lib/mysql -lmysqlclient";
2258 preConfigure = ''
2259 patchShebangs configure
2260 '';
2261 });
2262
2263 devEMF = old.devEMF.overrideAttrs (attrs: {
2264 NIX_CFLAGS_LINK = "-L${pkgs.xorg.libXft.out}/lib -lXft";
2265 NIX_LDFLAGS = "-lX11";
2266 });
2267
2268 hdf5r = old.hdf5r.overrideAttrs (attrs: {
2269 buildInputs = attrs.buildInputs ++ [ new.Rhdf5lib.hdf5 ];
2270 });
2271
2272 slfm = old.slfm.overrideAttrs (attrs: {
2273 PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
2274 });
2275
2276 SamplerCompare = old.SamplerCompare.overrideAttrs (attrs: {
2277 PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
2278 });
2279
2280 FLAMES = old.FLAMES.overrideAttrs (attrs: {
2281 patches = [ ./patches/FLAMES.patch ];
2282 });
2283
2284 openssl = old.openssl.overrideAttrs (attrs: {
2285 preConfigure = ''
2286 patchShebangs configure
2287 '';
2288 PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
2289 PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
2290 });
2291
2292 websocket = old.websocket.overrideAttrs (attrs: {
2293 PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
2294 PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
2295 });
2296
2297 Rserve = old.Rserve.overrideAttrs (attrs: {
2298 patches = [ ./patches/Rserve.patch ];
2299 configureFlags = [
2300 "--with-server"
2301 "--with-client"
2302 ];
2303 });
2304
2305 universalmotif = old.universalmotif.overrideAttrs (attrs: {
2306 patches = [ ./patches/universalmotif.patch ];
2307 });
2308
2309 V8 = old.V8.overrideAttrs (attrs: {
2310 postPatch = ''
2311 substituteInPlace configure \
2312 --replace-fail " -lv8_libplatform" ""
2313 # Bypass the test checking if pointer compression is needed
2314 substituteInPlace configure \
2315 --replace-fail "./pctest1" "true"
2316 '';
2317
2318 preConfigure = ''
2319 export INCLUDE_DIR=${pkgs.nodejs.libv8}/include
2320 export LIB_DIR=${pkgs.nodejs.libv8}/lib
2321 patchShebangs configure
2322 '';
2323
2324 R_MAKEVARS_SITE = lib.optionalString (pkgs.stdenv.system == "aarch64-linux") (
2325 pkgs.writeText "Makevars" ''
2326 CXX14PICFLAGS = -fPIC
2327 ''
2328 );
2329 });
2330
2331 acs = old.acs.overrideAttrs (attrs: {
2332 preConfigure = ''
2333 patchShebangs configure
2334 '';
2335 });
2336
2337 gdtools = old.gdtools.overrideAttrs (attrs: {
2338 preConfigure = ''
2339 patchShebangs configure
2340 '';
2341 NIX_LDFLAGS = "-lfontconfig -lfreetype";
2342 });
2343
2344 magick = old.magick.overrideAttrs (attrs: {
2345 preConfigure = ''
2346 patchShebangs configure
2347 '';
2348 });
2349
2350 libgeos = old.libgeos.overrideAttrs (attrs: {
2351 preConfigure = ''
2352 patchShebangs configure
2353 '';
2354 });
2355
2356 protolite = old.protolite.overrideAttrs (attrs: {
2357 preConfigure = ''
2358 patchShebangs configure
2359 '';
2360 });
2361
2362 rgoslin = old.rgoslin.overrideAttrs (attrs: {
2363 enableParallelBuilding = false;
2364 });
2365
2366 rpanel = old.rpanel.overrideAttrs (attrs: {
2367 preConfigure = ''
2368 export TCLLIBPATH="${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}"
2369 '';
2370 TCLLIBPATH = "${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}";
2371 });
2372
2373 networkscaleup = old.networkscaleup.overrideAttrs (attrs: {
2374 env = (attrs.env or { }) // {
2375 # needed to avoid "log limit exceeded" on Hydra
2376 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
2377 };
2378
2379 # consumes a lot of resources in parallel
2380 enableParallelBuilding = false;
2381 });
2382
2383 OpenMx = old.OpenMx.overrideAttrs (attrs: {
2384 env = (attrs.env or { }) // {
2385 # needed to avoid "log limit exceeded" on Hydra
2386 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
2387 };
2388 preConfigure = ''
2389 patchShebangs configure
2390 '';
2391 });
2392
2393 odbc = old.odbc.overrideAttrs (attrs: {
2394 preConfigure = ''
2395 patchShebangs configure
2396 '';
2397 });
2398
2399 x13binary = old.x13binary.overrideAttrs (attrs: {
2400 preConfigure = ''
2401 patchShebangs configure
2402 '';
2403 });
2404
2405 FlexReg = old.FlexReg.overrideAttrs (attrs: {
2406 env = (attrs.env or { }) // {
2407 # needed to avoid "log limit exceeded" on Hydra
2408 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
2409 };
2410
2411 # consumes a lot of resources in parallel
2412 enableParallelBuilding = false;
2413 });
2414
2415 geojsonio = old.geojsonio.overrideAttrs (attrs: {
2416 buildInputs = [ cacert ] ++ attrs.buildInputs;
2417 });
2418
2419 float = old.float.overrideAttrs (attrs: {
2420 enableParallelBuilding = false;
2421 });
2422
2423 redatamx = old.redatamx.overrideAttrs (attrs: {
2424 preConfigure =
2425 let
2426 redatam-core = pkgs.fetchzip {
2427 url = "https://redatam-core.s3.us-west-2.amazonaws.com/core-dev/linux/redatamx-core-linux-20241222.zip";
2428 hash = "sha256-CagDpv7v5fj/NgaC5fmYc5UuKuBVlT3gauH2ItVnIIY=";
2429 };
2430 in
2431 ''
2432 mkdir -p ./inst/redengine/
2433 cp ${redatam-core}/lib/libredengine-1.0.0-rc2.so ./inst/redengine/libredengine-1.0.0-rc2.so
2434 '';
2435 });
2436
2437 immunotation =
2438 let
2439 MHC41alleleList = fetchurl {
2440 url = "https://services.healthtech.dtu.dk/services/NetMHCpan-4.1/allele.list";
2441 hash = "sha256-CRZ+0uHzcq5zK5eONucAChXIXO8tnq5sSEAS80Z7jhg=";
2442 };
2443
2444 MHCII40alleleList = fetchurl {
2445 url = "https://services.healthtech.dtu.dk/services/NetMHCIIpan-4.0/alleles_name.list";
2446 hash = "sha256-K4Ic2NUs3P4IkvOODwZ0c4Yh8caex5Ih0uO5jXRHp40=";
2447 };
2448
2449 # List of valid countries, regions and ethnic groups
2450 # The original page is changing a bit every day, but the relevant
2451 # content does not. Use archive.org to get a stable snapshot.
2452 # It can be updated from time to time, or when the package becomes
2453 # deficient. This may be difficult to know.
2454 # Update the snapshot date, and add id_ after it, as described here:
2455 # https://web.archive.org/web/20130806040521/http://faq.web.archive.org/page-without-wayback-code/
2456 validGeographics = fetchurl {
2457 url = "https://web.archive.org/web/20240418194005id_/http://www.allelefrequencies.net/hla6006a.asp";
2458 hash = "sha256-m7Wkmh/cPxeqn94LwoznIh+fcFXskmSGErUYj6kTqak=";
2459 };
2460 in
2461 old.immunotation.overrideAttrs (attrs: {
2462 patches = [ ./patches/immunotation.patch ];
2463 postPatch = ''
2464 substituteInPlace "R/external_resources_input.R" --replace-fail \
2465 "nix-NetMHCpan-4.1-allele-list" ${MHC41alleleList}
2466
2467 substituteInPlace "R/external_resources_input.R" --replace-fail \
2468 "nix-NETMHCIIpan-4.0-alleles-name-list" ${MHCII40alleleList}
2469
2470 substituteInPlace "R/AFND_interface.R" --replace-fail \
2471 "nix-valid-geographics" ${validGeographics}
2472 '';
2473 });
2474
2475 nearfar =
2476 let
2477 angrist = fetchurl {
2478 url = "https://raw.githubusercontent.com/joerigdon/nearfar/master/angrist.csv";
2479 hash = "sha256-lb+HMHnRGonc26merFGB0B7Vk1Lk+sIJlay+JtQC8m4=";
2480 };
2481 in
2482 old.nearfar.overrideAttrs (attrs: {
2483 postPatch = ''
2484 substituteInPlace "R/nearfar.R" --replace-fail \
2485 'url("https://raw.githubusercontent.com/joerigdon/nearfar/master/angrist.csv")' '"${angrist}"'
2486 '';
2487 });
2488
2489 BiocParallel = old.BiocParallel.overrideAttrs (attrs: {
2490 env = (attrs.env or { }) // {
2491 NIX_CFLAGS_COMPILE =
2492 attrs.env.NIX_CFLAGS_COMPILE
2493 + lib.optionalString stdenv.hostPlatform.isDarwin " -Wno-error=missing-template-arg-list-after-template-kw";
2494 };
2495 });
2496
2497 rstan = old.rstan.overrideAttrs (attrs: {
2498 env = (attrs.env or { }) // {
2499 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -DBOOST_PHOENIX_NO_VARIADIC_EXPRESSION";
2500 };
2501 });
2502
2503 mongolite = old.mongolite.overrideAttrs (attrs: {
2504 preConfigure = ''
2505 patchShebangs configure
2506 '';
2507 PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include -I${pkgs.cyrus_sasl.dev}/include -I${pkgs.zlib.dev}/include";
2508 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";
2509 });
2510
2511 ChemmineOB = old.ChemmineOB.overrideAttrs (attrs: {
2512 # pkg-config knows openbabel-3 without the .0
2513 # Eigen3 is also looked for in the wrong location
2514 # pointer was changed in newer version of openbabel:
2515 # https://github.com/openbabel/openbabel/commit/305a6fd3183540e4a8ae1d79d10bf1860e6aa373
2516 postPatch = ''
2517 substituteInPlace configure \
2518 --replace-fail openbabel-3.0 openbabel-3
2519 substituteInPlace src/Makevars.in \
2520 --replace-fail "-I/usr/include/eigen3" "-I${pkgs.eigen}/include/eigen3"
2521 substituteInPlace src/ChemmineOB.cpp \
2522 --replace-fail "obsharedptr<" "std::shared_ptr<"
2523 '';
2524
2525 # copied from fastnlo-toolkit:
2526 # None of our currently packaged versions of swig are C++17-friendly
2527 # Use a workaround from https://github.com/swig/swig/issues/1538
2528 env = (attrs.env or { }) // {
2529 NIX_CFLAGS_COMPILE =
2530 (attrs.env.NIX_CFLAGS_COMPILE or "")
2531 + lib.optionalString stdenv.hostPlatform.isDarwin " -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES";
2532 };
2533 });
2534
2535 ps = old.ps.overrideAttrs (attrs: {
2536 preConfigure = "patchShebangs configure";
2537 });
2538
2539 rlang = old.rlang.overrideAttrs (attrs: {
2540 preConfigure = "patchShebangs configure";
2541 });
2542
2543 systemfonts = old.systemfonts.overrideAttrs (attrs: {
2544 preConfigure = "patchShebangs configure";
2545 });
2546
2547 littler = old.littler.overrideAttrs (
2548 attrs: with pkgs; {
2549 buildInputs = [
2550 pcre
2551 xz
2552 zlib
2553 bzip2
2554 icu
2555 which
2556 zstd.dev
2557 ]
2558 ++ attrs.buildInputs;
2559 postInstall = ''
2560 install -d $out/bin $out/share/man/man1
2561 ln -s ../library/littler/bin/r $out/bin/r
2562 ln -s ../library/littler/bin/r $out/bin/lr
2563 ln -s ../../../library/littler/man-page/r.1 $out/share/man/man1
2564 # these won't run without special provisions, so better remove them
2565 rm -r $out/library/littler/script-tests
2566 '';
2567 }
2568 );
2569
2570 lpsymphony = old.lpsymphony.overrideAttrs (attrs: {
2571 preConfigure = ''
2572 patchShebangs configure
2573 '';
2574 });
2575
2576 sodium = old.sodium.overrideAttrs (
2577 attrs: with pkgs; {
2578 preConfigure = ''
2579 patchShebangs configure
2580 '';
2581 nativeBuildInputs = [ pkg-config ] ++ attrs.nativeBuildInputs;
2582 buildInputs = [ libsodium.dev ] ++ attrs.buildInputs;
2583 }
2584 );
2585
2586 keyring = old.keyring.overrideAttrs (attrs: {
2587 preConfigure = ''
2588 patchShebangs configure
2589 '';
2590 });
2591
2592 Rhtslib = old.Rhtslib.overrideAttrs (attrs: {
2593 preConfigure = ''
2594 substituteInPlace R/zzz.R --replace-fail "-lcurl" "-L${pkgs.curl.out}/lib -lcurl"
2595 '';
2596 });
2597
2598 h2o = old.h2o.overrideAttrs (attrs: {
2599 preConfigure = ''
2600 # prevent download of jar file during install and postpone to first use
2601 sed -i '/downloadJar()/d' R/zzz.R
2602
2603 # during runtime the package directory is not writable as it's in the
2604 # nix store, so store the jar in the user's cache directory instead
2605 substituteInPlace R/connection.R --replace-fail \
2606 'dest_file <- file.path(dest_folder, "h2o.jar")' \
2607 'dest_file <- file.path("~/.cache/", "h2o.jar")'
2608 '';
2609 });
2610
2611 SICtools = old.SICtools.overrideAttrs (attrs: {
2612 postPatch = ''
2613 substituteInPlace src/Makefile --replace-fail "-lcurses" "-lncurses"
2614 '';
2615 hardeningDisable = [ "format" ];
2616 });
2617
2618 Rbwa = old.Rbwa.overrideAttrs (attrs: {
2619 # Parallel build cleans up *.o before they can be packed in a library
2620 postPatch = ''
2621 substituteInPlace src/Makefile --replace-fail \
2622 "all:\$(PROG) ../inst/bwa clean" \
2623 "all:\$(PROG) ../inst/bwa" \
2624 '';
2625 });
2626
2627 ROracle = old.ROracle.overrideAttrs (attrs: {
2628 configureFlags = [
2629 "--with-oci-lib=${pkgs.oracle-instantclient.lib}/lib"
2630 "--with-oci-inc=${pkgs.oracle-instantclient.dev}/include"
2631 ];
2632 });
2633
2634 xslt = old.xslt.overrideAttrs (attrs: {
2635 env = (attrs.env or { }) // {
2636 NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -fpermissive";
2637 };
2638 });
2639
2640 sparklyr = old.sparklyr.overrideAttrs (attrs: {
2641 # Pyspark's spark is full featured and better maintained than pkgs.spark
2642 preConfigure = ''
2643 if grep "onLoad" R/zzz.R; then
2644 echo "onLoad is already present, patch needs to be updated!"
2645 exit 1
2646 fi
2647
2648 cat >> R/zzz.R <<EOF
2649 .onLoad <- function(...) {
2650 Sys.setenv("SPARK_HOME" = Sys.getenv("SPARK_HOME", unset = "${pkgs.python3Packages.pyspark}/${pkgs.python3Packages.python.sitePackages}/pyspark"))
2651 Sys.setenv("JAVA_HOME" = Sys.getenv("JAVA_HOME", unset = "${pkgs.jdk}"))
2652 }
2653 EOF
2654 '';
2655 });
2656
2657 rrd = old.rrd.overrideAttrs (attrs: {
2658 preConfigure = ''
2659 patchShebangs configure
2660 '';
2661 });
2662
2663 ChIPXpress = old.ChIPXpress.override { hydraPlatforms = [ ]; };
2664
2665 rgl = old.rgl.overrideAttrs (attrs: {
2666 RGL_USE_NULL = "true";
2667 });
2668
2669 Rrdrand = old.Rrdrand.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
2670
2671 symengine = old.symengine.overrideAttrs (_: {
2672 preConfigure = ''
2673 rm configure
2674 cat > src/Makevars << EOF
2675 PKG_LIBS=-lsymengine
2676 all: $(SHLIB)
2677 EOF
2678 '';
2679 });
2680
2681 RandomFieldsUtils = old.RandomFieldsUtils.override {
2682 platforms = lib.platforms.x86_64 ++ lib.platforms.x86;
2683 };
2684
2685 flowClust = old.flowClust.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
2686
2687 RcppCGAL = old.RcppCGAL.overrideAttrs (_: {
2688 postPatch = "patchShebangs configure";
2689 });
2690
2691 httr2 = old.httr2.overrideAttrs (attrs: {
2692 preConfigure = "patchShebangs configure";
2693 });
2694
2695 dbarts = old.dbarts.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
2696
2697 geomorph = old.geomorph.overrideAttrs (attrs: {
2698 RGL_USE_NULL = "true";
2699 });
2700
2701 gpuMagic = old.gpuMagic.overrideAttrs (_: {
2702 hardeningDisable = [ "format" ];
2703 });
2704
2705 Rdisop = old.Rdisop.overrideAttrs (_: {
2706 hardeningDisable = [ "format" ];
2707 });
2708
2709 opencv =
2710 let
2711 opencvGtk = pkgs.opencv.override (old: {
2712 enableGtk2 = true;
2713 });
2714 in
2715 old.opencv.overrideAttrs (attrs: {
2716 buildInputs = attrs.buildInputs ++ [ opencvGtk ];
2717 });
2718
2719 Rhdf5lib =
2720 let
2721 hdf5 = pkgs.hdf5_1_10;
2722 in
2723 old.Rhdf5lib.overrideAttrs (attrs: {
2724 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
2725 hdf5.dev
2726 pkgs.libaec
2727 ];
2728 patches = [ ./patches/Rhdf5lib.patch ];
2729 passthru.hdf5 = hdf5;
2730 });
2731
2732 rhdf5filters = old.rhdf5filters.overrideAttrs (attrs: {
2733 patches = [ ./patches/rhdf5filters.patch ];
2734 });
2735
2736 rhdf5 = old.rhdf5.overrideAttrs (attrs: {
2737 patches = [ ./patches/rhdf5.patch ];
2738 env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
2739 });
2740
2741 rmarkdown = old.rmarkdown.overrideAttrs (_: {
2742 preConfigure = ''
2743 substituteInPlace R/pandoc.R \
2744 --replace-fail '"~/opt/pandoc"' '"~/opt/pandoc", "${pkgs.pandoc}/bin"'
2745 '';
2746 });
2747
2748 webfakes = old.webfakes.overrideAttrs (_: {
2749 postPatch = "patchShebangs configure";
2750 });
2751
2752 redland = old.redland.overrideAttrs (_: {
2753 PKGCONFIG_CFLAGS = "-I${pkgs.redland}/include -I${pkgs.librdf_raptor2}/include/raptor2 -I${pkgs.librdf_rasqal}/include/rasqal";
2754 PKGCONFIG_LIBS = "-L${pkgs.redland}/lib -L${pkgs.librdf_raptor2}/lib -L${pkgs.librdf_rasqal}/lib -lrdf -lraptor2 -lrasqal";
2755 });
2756
2757 textshaping = old.textshaping.overrideAttrs (attrs: {
2758 env.NIX_LDFLAGS = "-lfribidi -lharfbuzz";
2759 });
2760
2761 httpuv = old.httpuv.overrideAttrs (_: {
2762 preConfigure = ''
2763 patchShebangs configure
2764 '';
2765 });
2766
2767 oligo = old.oligo.overrideAttrs (_: {
2768 hardeningDisable = [ "format" ];
2769 });
2770
2771 tesseract = old.tesseract.overrideAttrs (_: {
2772 preConfigure = ''
2773 substituteInPlace configure \
2774 --replace-fail 'PKG_CONFIG_NAME="tesseract"' 'PKG_CONFIG_NAME="tesseract lept"'
2775 '';
2776 });
2777
2778 ijtiff = old.ijtiff.overrideAttrs (_: {
2779 preConfigure = ''
2780 patchShebangs configure
2781 '';
2782 });
2783
2784 torch = old.torch.overrideAttrs (attrs: {
2785 preConfigure = ''
2786 patchShebangs configure
2787 '';
2788 });
2789
2790 pak = old.pak.overrideAttrs (attrs: {
2791 preConfigure = ''
2792 patchShebangs configure
2793 patchShebangs src/library/curl/configure
2794 patchShebangs src/library/keyring/configure
2795 patchShebangs src/library/pkgdepends/configure
2796 patchShebangs src/library/ps/configure
2797 '';
2798 });
2799
2800 pkgdepends = old.pkgdepends.overrideAttrs (attrs: {
2801 postPatch = ''
2802 patchShebangs configure
2803 '';
2804 });
2805 };
2806in
2807self