treewide: stdenv.is -> stdenv.hostPlatform.is (#356363)
[NixPkgs.git] / pkgs / top-level / all-packages.nix
blob00f652b009be48855e94e35e38a347d4b488de3f
1 /* The top-level package collection of nixpkgs.
2  * It is sorted by categories corresponding to the folder names in the /pkgs
3  * folder. Inside the categories packages are roughly sorted by alphabet, but
4  * strict sorting has been long lost due to merges. Please use the full-text
5  * search of your editor. ;)
6  * Hint: ### starts category names.
7  */
8 { lib, noSysDirs, config, overlays }:
9 res: pkgs: super:
11 with pkgs;
14   # A module system style type tag
15   #
16   # Allows the nixpkgs fixpoint, usually known as `pkgs` to be distinguished
17   # nominally.
18   #
19   #     pkgs._type == "pkgs"
20   #     pkgs.pkgsStatic._type == "pkgs"
21   #
22   # Design note:
23   # While earlier stages of nixpkgs fixpoint construction are supertypes of this
24   # stage, they're generally not usable in places where a `pkgs` is expected.
25   # (earlier stages being the various `super` variables that precede
26   # all-packages.nix)
27   _type = "pkgs";
29   # A stdenv capable of building 32-bit binaries.
30   # On x86_64-linux, it uses GCC compiled with multilib support; on i686-linux,
31   # it's just the plain stdenv.
32   stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv);
34   mkStdenvNoLibs = stdenv: let
35     bintools = stdenv.cc.bintools.override {
36       libc = null;
37       noLibc = true;
38     };
39   in stdenv.override {
40     cc = stdenv.cc.override {
41       libc = null;
42       noLibc = true;
43       extraPackages = [];
44       inherit bintools;
45     };
46     allowedRequisites =
47       lib.mapNullable (rs: rs ++ [ bintools ]) (stdenv.allowedRequisites or null);
48   };
50   stdenvNoLibs =
51     if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform
52     then
53       # We cannot touch binutils or cc themselves, because that will cause
54       # infinite recursion. So instead, we just choose a libc based on the
55       # current platform. That means we won't respect whatever compiler was
56       # passed in with the stdenv stage argument.
57       #
58       # TODO It would be much better to pass the `stdenvNoCC` and *unwrapped*
59       # cc, bintools, compiler-rt equivalent, etc. and create all final stdenvs
60       # as part of the stage. Then we would never be tempted to override a later
61       # thing to to create an earlier thing (leading to infinite recursion) and
62       # we also would still respect the stage arguments choices for these
63       # things.
64       (if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false
65        then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoCompilerRt
66        else gccCrossLibcStdenv)
67     else mkStdenvNoLibs stdenv;
69   stdenvNoLibc =
70     if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform
71     then
72       (if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false
73        then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoLibc
74        else gccCrossLibcStdenv)
75     else mkStdenvNoLibs stdenv;
77   gccStdenvNoLibs = mkStdenvNoLibs gccStdenv;
78   clangStdenvNoLibs = mkStdenvNoLibs clangStdenv;
80   # For convenience, allow callers to get the path to Nixpkgs.
81   path = ../..;
83   ### Helper functions.
84   inherit lib config overlays;
86   # do not import 'appendToName' to get consistent package-names with the same
87   # set of package-parameters: https://github.com/NixOS/nixpkgs/issues/68519
88   inherit (lib) lowPrio hiPrio makeOverridable;
90   inherit (lib) recurseIntoAttrs;
92   # This is intended to be the reverse of recurseIntoAttrs, as it is
93   # defined now it exists mainly for documentation purposes, but you
94   # can also override this with recurseIntoAttrs to recurseInto all
95   # the Attrs which is useful for testing massive changes. Ideally,
96   # every package subset not marked with recurseIntoAttrs should be
97   # marked with this.
98   inherit (lib) dontRecurseIntoAttrs;
100   stringsWithDeps = lib.stringsWithDeps;
102   ### Evaluating the entire Nixpkgs naively will fail, make failure fast
103   AAAAAASomeThingsFailToEvaluate = throw ''
104     Please be informed that this pseudo-package is not the only part
105     of Nixpkgs that fails to evaluate. You should not evaluate
106     entire Nixpkgs without some special measures to handle failing
107     packages, like using pkgs/top-level/release-attrpaths-superset.nix.
108   '';
110   tests = callPackages ../test { };
112   defaultPkgConfigPackages =
113     # We don't want nix-env -q to enter this, because all of these are aliases.
114     dontRecurseIntoAttrs (
115       import ./pkg-config/defaultPkgConfigPackages.nix pkgs
116     ) // { __attrsFailEvaluation = true; };
118   ### Nixpkgs maintainer tools
120   nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { };
122   nixpkgs-lint = callPackage ../../maintainers/scripts/nixpkgs-lint.nix { };
124   common-updater-scripts = callPackage ../common-updater/scripts.nix { };
126   vimPluginsUpdater = callPackage ../applications/editors/vim/plugins/updater.nix {
127     inherit (python3Packages) buildPythonApplication ;
128   };
130   genericUpdater = callPackage ../common-updater/generic-updater.nix { };
132   _experimental-update-script-combinators = callPackage ../common-updater/combinators.nix { };
134   directoryListingUpdater = callPackage ../common-updater/directory-listing-updater.nix { };
136   gitUpdater = callPackage ../common-updater/git-updater.nix { };
138   httpTwoLevelsUpdater = callPackage ../common-updater/http-two-levels-updater.nix { };
140   unstableGitUpdater = callPackage ../common-updater/unstable-updater.nix { };
142   inherit (nix-update) nix-update-script;
144   ### Push NixOS tests inside the fixed point
146   # See also allTestsForSystem in nixos/release.nix
147   nixosTests = import ../../nixos/tests/all-tests.nix {
148     inherit pkgs;
149     system = stdenv.hostPlatform.system;
150     callTest = config: config.test;
151   } // {
152     # for typechecking of the scripts and evaluation of
153     # the nodes, without running VMs.
154     allDrivers = import ../../nixos/tests/all-tests.nix {
155       inherit pkgs;
156       system = stdenv.hostPlatform.system;
157       callTest = config: config.test.driver;
158     };
159     __attrsFailEvaluation = true;
160   };
162   ### BUILD SUPPORT
164   __flattenIncludeHackHook = callPackage ../build-support/setup-hooks/flatten-include-hack { };
166   autoreconfHook = callPackage (
167     { makeSetupHook, autoconf, automake, gettext, libtool }:
168     makeSetupHook {
169       name = "autoreconf-hook";
170       propagatedBuildInputs = [ autoconf automake gettext libtool ];
171     } ../build-support/setup-hooks/autoreconf.sh
172   ) { };
174   autoreconfHook264 = autoreconfHook.override {
175     autoconf = autoconf264;
176     automake = automake111x;
177   };
179   autoreconfHook269 = autoreconfHook.override {
180     autoconf = autoconf269;
181   };
182   autoreconfHook271 = autoreconfHook.override {
183     autoconf = autoconf271;
184   };
186   autoPatchelfHook = makeSetupHook {
187     name = "auto-patchelf-hook";
188     propagatedBuildInputs = [ auto-patchelf bintools ];
189   } ../build-support/setup-hooks/auto-patchelf.sh;
191   appimageTools = callPackage ../build-support/appimage { };
193   appimageupdate-qt = appimageupdate.override { withQtUI = true; };
195   bindle = callPackage ../servers/bindle { };
197   stripJavaArchivesHook = makeSetupHook {
198     name = "strip-java-archives-hook";
199     propagatedBuildInputs = [ strip-nondeterminism ];
200   } ../build-support/setup-hooks/strip-java-archives.sh;
202   ensureNewerSourcesHook = { year }: makeSetupHook {
203     name = "ensure-newer-sources-hook";
204   } (writeScript "ensure-newer-sources-hook.sh" ''
205       postUnpackHooks+=(_ensureNewerSources)
206       _ensureNewerSources() {
207         local r=$sourceRoot
208         # Avoid passing option-looking directory to find. The example is diffoscope-269:
209         #   https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/378
210         [[ $r == -* ]] && r="./$r"
211         '${findutils}/bin/find' "$r" \
212           '!' -newermt '${year}-01-01' -exec touch -h -d '${year}-01-02' '{}' '+'
213       }
214     '');
216   # addDriverRunpath is the preferred package name, as this enables
217   # many more scenarios than just opengl now.
218   anime-downloader = callPackage ../applications/video/anime-downloader { };
220   aocd = with python3Packages; toPythonApplication aocd;
222   archipelago-minecraft = callPackage ../by-name/ar/archipelago/package.nix { extraPackages = [jdk17]; };
224   asitop = pkgs.python3Packages.callPackage ../os-specific/darwin/asitop { };
226   cve = with python3Packages; toPythonApplication cvelib;
228   apko = callPackage ../development/tools/apko {
229     buildGoModule = buildGo123Module;
230   };
232   basalt-monado = callPackage ../by-name/ba/basalt-monado/package.nix {
233     tbb = tbb_2021_11;
234     cereal = cereal_1_3_2;
235     opencv = opencv.override { enableGtk3 = true; };
236   };
238   beebeep = libsForQt5.callPackage ../applications/office/beebeep { };
240   binserve = callPackage ../servers/binserve { };
242   bloodhound-py = with python3Packages; toPythonApplication bloodhound-py;
244   # Zip file format only allows times after year 1980, which makes e.g. Python
245   # wheel building fail with:
246   # ValueError: ZIP does not support timestamps before 1980
247   ensureNewerSourcesForZipFilesHook = ensureNewerSourcesHook { year = "1980"; };
249   updateAutotoolsGnuConfigScriptsHook = makeSetupHook {
250     name = "update-autotools-gnu-config-scripts-hook";
251     substitutions = { gnu_config = gnu-config; };
252   } ../build-support/setup-hooks/update-autotools-gnu-config-scripts.sh;
254   gogUnpackHook = makeSetupHook {
255     name = "gog-unpack-hook";
256     propagatedBuildInputs = [ innoextract file-rename ]; }
257     ../build-support/setup-hooks/gog-unpack.sh;
259   buf = callPackage ../by-name/bu/buf/package.nix {
260     buildGoModule = buildGo123Module;
261   };
263   buildEnv = callPackage ../build-support/buildenv { }; # not actually a package
265   buildFHSEnv = buildFHSEnvBubblewrap;
266   buildFHSEnvChroot = callPackage ../build-support/build-fhsenv-chroot { }; # Deprecated; use buildFHSEnv/buildFHSEnvBubblewrap
267   buildFHSEnvBubblewrap = callPackage ../build-support/build-fhsenv-bubblewrap { };
269   cameractrls-gtk4 = cameractrls.override { withGtk = 4; };
271   cameractrls-gtk3 = cameractrls.override { withGtk = 3; };
273   checkpointBuildTools = callPackage ../build-support/checkpoint-build.nix {};
275   celeste-classic-pm = pkgs.celeste-classic.override {
276     practiceMod = true;
277   };
279   cereal = cereal_1_3_0;
281   cewl = callPackage ../tools/security/cewl { };
283   chef-cli = callPackage ../tools/misc/chef-cli { };
285   checkov = callPackage ../development/tools/analysis/checkov {
286     python3 = python311;
287   };
289   clang-uml = callPackage ../by-name/cl/clang-uml/package.nix {
290     stdenv = clangStdenv;
291   };
293   cloak = callPackage ../applications/misc/cloak { };
295   cotp = callPackage ../applications/misc/cotp { };
297   cope = callPackage ../by-name/co/cope/package.nix {
298     perl = perl538;
299     perlPackages = perl538Packages;
300   };
302   cocogitto = callPackage ../development/tools/cocogitto { };
304   coldsnap = callPackage ../tools/admin/coldsnap { };
306   collision = callPackage ../applications/misc/collision { };
308   coolercontrol = recurseIntoAttrs (callPackage ../applications/system/coolercontrol { });
310   databricks-sql-cli = python3Packages.callPackage ../applications/misc/databricks-sql-cli { };
312   deck = callPackage ../by-name/de/deck/package.nix {
313     buildGoModule = buildGo123Module;
314   };
316   dhallDirectoryToNix = callPackage ../build-support/dhall/directory-to-nix.nix { };
318   dhallPackageToNix = callPackage ../build-support/dhall/package-to-nix.nix { };
320   dhallToNix = callPackage ../build-support/dhall/to-nix.nix { };
322   dinghy = with python3Packages; toPythonApplication dinghy;
324   djgpp = djgpp_i586;
325   djgpp_i586 = callPackage ../development/compilers/djgpp { targetArchitecture = "i586"; stdenv = gccStdenv; };
326   djgpp_i686 = lowPrio (callPackage ../development/compilers/djgpp { targetArchitecture = "i686"; stdenv = gccStdenv; });
328   djhtml = python3Packages.callPackage ../development/tools/djhtml { };
330   dnf-plugins-core = with python3Packages; toPythonApplication dnf-plugins-core;
332   dnf4 = python3Packages.callPackage ../development/python-modules/dnf4/wrapper.nix { };
334   dynein = callPackage ../development/tools/database/dynein { };
336   ebpf-verifier = callPackage ../tools/networking/ebpf-verifier {
337     catch2 = catch2_3;
338   };
340   edgedb = callPackage ../tools/networking/edgedb { };
342   eludris = callPackage ../tools/misc/eludris { };
344   enochecker-test = with python3Packages; callPackage ../development/tools/enochecker-test { };
346   inherit (gridlock) nyarr;
348   html5validator = python3Packages.callPackage ../applications/misc/html5validator { };
350   inspec = callPackage ../tools/misc/inspec { };
352   lshw-gui = lshw.override { withGUI = true; };
354   kdePackages = callPackage ../kde { };
356   buildcatrust = with python3.pkgs; toPythonApplication buildcatrust;
358   mumps_par = callPackage ../by-name/mu/mumps/package.nix { mpiSupport = true; };
360   prisma-engines = callPackage ../development/tools/database/prisma-engines { };
362   protoc-gen-dart = callPackage ../development/tools/protoc-gen-dart { };
364   protoc-gen-grpc-web = callPackage ../development/tools/protoc-gen-grpc-web {
365     protobuf = protobuf_21;
366   };
368   vcpkg-tool = callPackage ../by-name/vc/vcpkg-tool/package.nix {
369     fmt = fmt_10;
370   };
372   r3ctl = qt5.callPackage ../tools/misc/r3ctl { };
374   deviceTree = callPackage ../os-specific/linux/device-tree { };
376   octodns = python3Packages.callPackage ../tools/networking/octodns { };
378   octodns-providers = recurseIntoAttrs {
379     bind = python3Packages.callPackage ../tools/networking/octodns/providers/bind { };
380     gandi = python3Packages.callPackage ../tools/networking/octodns/providers/gandi { };
381     hetzner = python3Packages.callPackage ../tools/networking/octodns/providers/hetzner { };
382     powerdns = python3Packages.callPackage ../tools/networking/octodns/providers/powerdns { };
383   };
385   oletools = with python3.pkgs; toPythonApplication oletools;
387   ollama-rocm = callPackage ../by-name/ol/ollama/package.nix { acceleration = "rocm"; };
388   ollama-cuda = callPackage ../by-name/ol/ollama/package.nix { acceleration = "cuda"; };
390   device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix { };
392   didyoumean = callPackage ../tools/misc/didyoumean { };
394   diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins;
396   dieHook = makeSetupHook {
397     name = "die-hook";
398   } ../build-support/setup-hooks/die.sh;
400   digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox {
401     autoreconfHook = buildPackages.autoreconfHook269;
402   };
404   gretl = callPackage ../applications/science/math/gretl { };
406   devShellTools = callPackage ../build-support/dev-shell-tools { };
408   dockerTools = callPackage ../build-support/docker {
409     writePython3 = buildPackages.writers.writePython3;
410   };
412   tarsum = callPackage ../build-support/docker/tarsum.nix { };
414   nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { };
416   docker-sync = callPackage ../tools/misc/docker-sync { };
418   # Dotnet
420   dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet {});
422   dotnet-sdk_6 = dotnetCorePackages.sdk_6_0;
423   dotnet-sdk_7 = dotnetCorePackages.sdk_7_0;
424   dotnet-sdk_8 = dotnetCorePackages.sdk_8_0;
426   dotnet-runtime_6 = dotnetCorePackages.runtime_6_0;
427   dotnet-runtime_7 = dotnetCorePackages.runtime_7_0;
428   dotnet-runtime_8 = dotnetCorePackages.runtime_8_0;
430   dotnet-aspnetcore_6 = dotnetCorePackages.aspnetcore_6_0;
431   dotnet-aspnetcore_7 = dotnetCorePackages.aspnetcore_7_0;
432   dotnet-aspnetcore_8 = dotnetCorePackages.aspnetcore_8_0;
434   dotnet-sdk = dotnetCorePackages.sdk_6_0;
435   dotnet-runtime = dotnetCorePackages.runtime_6_0;
436   dotnet-aspnetcore = dotnetCorePackages.aspnetcore_6_0;
438   inherit (dotnetCorePackages) buildDotnetModule buildDotnetGlobalTool mkNugetSource mkNugetDeps;
440   fable = callPackage ../development/tools/fable { };
442   dotnetenv = callPackage ../build-support/dotnet/dotnetenv {
443     dotnetfx = dotnetfx40;
444   };
446   buildDotnetPackage = callPackage ../build-support/dotnet/build-dotnet-package { };
447   fetchNuGet = callPackage ../build-support/dotnet/fetchnuget { };
448   dupeguru = callPackage ../applications/misc/dupeguru {
449     python3Packages = python311Packages;
450   };
452   qdmr = libsForQt5.callPackage ../applications/radio/qdmr { };
454   fetchbower = callPackage ../build-support/fetchbower { };
456   fetchbzr = callPackage ../build-support/fetchbzr { };
458   fetchcvs = if stdenv.buildPlatform != stdenv.hostPlatform
459     # hack around splicing being crummy with things that (correctly) don't eval.
460     then buildPackages.fetchcvs
461     else callPackage ../build-support/fetchcvs { };
463   fetchdarcs = callPackage ../build-support/fetchdarcs { };
465   fetchdocker = callPackage ../build-support/fetchdocker { };
467   fetchDockerConfig = callPackage ../build-support/fetchdocker/fetchDockerConfig.nix { };
469   fetchDockerLayer = callPackage ../build-support/fetchdocker/fetchDockerLayer.nix { };
471   fetchfossil = callPackage ../build-support/fetchfossil { };
473   fetchgit = (callPackage ../build-support/fetchgit {
474     git = buildPackages.gitMinimal;
475     cacert = buildPackages.cacert;
476     git-lfs = buildPackages.git-lfs;
477   }) // { # fetchgit is a function, so we use // instead of passthru.
478     tests = pkgs.tests.fetchgit;
479   };
481   fetchgitLocal = callPackage ../build-support/fetchgitlocal { };
483   fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {});
485   fetchMavenArtifact = callPackage ../build-support/fetchmavenartifact { };
487   fetchpijul = callPackage ../build-support/fetchpijul { };
489   inherit (callPackages ../build-support/node/fetch-yarn-deps { })
490     fixup-yarn-lock
491     prefetch-yarn-deps
492     yarnConfigHook
493     yarnBuildHook
494     yarnInstallHook
495     fetchYarnDeps;
497   prefer-remote-fetch = import ../build-support/prefer-remote-fetch;
499   opendrop = python3Packages.callPackage ../tools/networking/opendrop { };
501   perseus-cli = callPackage ../development/tools/perseus-cli { };
503   pe-bear = libsForQt5.callPackage ../applications/misc/pe-bear { };
505   magika = with python3Packages; toPythonApplication magika;
507   mysql-shell = mysql-shell_8;
509   inherit ({
510     mysql-shell_8 = callPackage ../development/tools/mysql-shell/8.nix {
511       antlr = antlr4_10;
512       icu =  icu73;
513       protobuf = protobuf_24;
514     };
515   })
516   mysql-shell_8
517   ;
519   mysql-shell-innovation = callPackage ../development/tools/mysql-shell/innovation.nix {
520     antlr = antlr4_10;
521     icu =  icu73;
522     protobuf = protobuf_24;
523   };
525   fetchpatch = callPackage ../build-support/fetchpatch {
526     # 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154
527     patchutils = __splicedPackages.patchutils_0_3_3;
528   } // {
529     tests = pkgs.tests.fetchpatch;
530     version = 1;
531   };
533   fetchpatch2 = callPackage ../build-support/fetchpatch {
534     patchutils = __splicedPackages.patchutils_0_4_2;
535   } // {
536     tests = pkgs.tests.fetchpatch2;
537     version = 2;
538   };
540   fetchs3 = callPackage ../build-support/fetchs3 { };
542   fetchtorrent = callPackage ../build-support/fetchtorrent { };
544   fetchsvn = if stdenv.buildPlatform != stdenv.hostPlatform
545     # hack around splicing being crummy with things that (correctly) don't eval.
546     then buildPackages.fetchsvn
547     else callPackage ../build-support/fetchsvn { };
549   fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion;
551   fetchsvnssh = callPackage ../build-support/fetchsvnssh { };
553   fetchhg = callPackage ../build-support/fetchhg { };
555   fetchFirefoxAddon = callPackage ../build-support/fetchfirefoxaddon { }
556     // {
557       tests = pkgs.tests.fetchFirefoxAddon;
558     };
560   fetchNextcloudApp = callPackage ../build-support/fetchnextcloudapp { };
562   # `fetchurl' downloads a file from the network.
563   fetchurl = if stdenv.buildPlatform != stdenv.hostPlatform
564     then buildPackages.fetchurl # No need to do special overrides twice,
565     else makeOverridable (import ../build-support/fetchurl) {
566       inherit lib stdenvNoCC buildPackages;
567       inherit cacert;
568       curl = buildPackages.curlMinimal.override (old: rec {
569         # break dependency cycles
570         fetchurl = stdenv.fetchurlBoot;
571         zlib = buildPackages.zlib.override { fetchurl = stdenv.fetchurlBoot; };
572         pkg-config = buildPackages.pkg-config.override (old: {
573           pkg-config = old.pkg-config.override {
574             fetchurl = stdenv.fetchurlBoot;
575           };
576         });
577         perl = buildPackages.perl.override { inherit zlib; fetchurl = stdenv.fetchurlBoot; };
578         openssl = buildPackages.openssl.override {
579           fetchurl = stdenv.fetchurlBoot;
580           buildPackages = {
581             coreutils = buildPackages.coreutils.override {
582               fetchurl = stdenv.fetchurlBoot;
583               inherit perl;
584               xz = buildPackages.xz.override { fetchurl = stdenv.fetchurlBoot; };
585               gmpSupport = false;
586               aclSupport = false;
587               attrSupport = false;
588             };
589             inherit perl;
590           };
591           inherit perl;
592         };
593         libssh2 = buildPackages.libssh2.override {
594           fetchurl = stdenv.fetchurlBoot;
595           inherit zlib openssl;
596         };
597         # On darwin, libkrb5 needs bootstrap_cmds which would require
598         # converting many packages to fetchurl_boot to avoid evaluation cycles.
599         # So turn gssSupport off there, and on Windows.
600         # On other platforms, keep the previous value.
601         gssSupport =
602           if stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWindows
603             then false
604             else old.gssSupport or true; # `? true` is the default
605         libkrb5 = buildPackages.krb5.override {
606           fetchurl = stdenv.fetchurlBoot;
607           inherit pkg-config perl openssl;
608           withLibedit = false;
609           byacc = buildPackages.byacc.override { fetchurl = stdenv.fetchurlBoot; };
610           keyutils = buildPackages.keyutils.override { fetchurl = stdenv.fetchurlBoot; };
611         };
612         nghttp2 = buildPackages.nghttp2.override {
613           fetchurl = stdenv.fetchurlBoot;
614           inherit pkg-config;
615           enableApp = false; # curl just needs libnghttp2
616           enableTests = false; # avoids bringing `cunit` and `tzdata` into scope
617         };
618       });
619     };
621   fetchRepoProject = callPackage ../build-support/fetchrepoproject { };
623   fetchipfs = callPackage ../build-support/fetchipfs { };
625   fetchzip = callPackage ../build-support/fetchzip { }
626     // {
627       tests = pkgs.tests.fetchzip;
628     };
630   fetchDebianPatch = callPackage ../build-support/fetchdebianpatch { }
631     // {
632       tests = pkgs.tests.fetchDebianPatch;
633     };
635   fetchCrate = callPackage ../build-support/rust/fetchcrate.nix { };
637   fetchFromGitea = callPackage ../build-support/fetchgitea { };
639   fetchFromGitHub = callPackage ../build-support/fetchgithub { };
641   fetchFromBitbucket = callPackage ../build-support/fetchbitbucket { };
643   fetchFromSavannah = callPackage ../build-support/fetchsavannah { };
645   fetchFromSourcehut = callPackage ../build-support/fetchsourcehut { };
647   fetchFromGitLab = callPackage ../build-support/fetchgitlab { };
649   fetchFromGitiles = callPackage ../build-support/fetchgitiles { };
651   fetchFrom9Front = callPackage ../build-support/fetch9front { };
653   fetchFromRepoOrCz = callPackage ../build-support/fetchrepoorcz { };
655   fetchgx = callPackage ../build-support/fetchgx { };
657   fetchPypi = callPackage ../build-support/fetchpypi { };
659   fetchPypiLegacy = callPackage ../build-support/fetchpypilegacy { };
661   resolveMirrorURLs = {url}: fetchurl {
662     showURLs = true;
663     inherit url;
664   };
666   ld-is-cc-hook = makeSetupHook { name = "ld-is-cc-hook"; }
667     ../build-support/setup-hooks/ld-is-cc-hook.sh;
669   copyDesktopItems = makeSetupHook {
670     name = "copy-desktop-items-hook";
671   } ../build-support/setup-hooks/copy-desktop-items.sh;
673   makeDesktopItem = callPackage ../build-support/make-desktopitem { };
675   copyPkgconfigItems = makeSetupHook {
676     name = "copy-pkg-config-items-hook";
677   } ../build-support/setup-hooks/copy-pkgconfig-items.sh;
679   makePkgconfigItem = callPackage ../build-support/make-pkgconfigitem { };
681   makeDarwinBundle = callPackage ../build-support/make-darwin-bundle { };
683   makeAutostartItem = callPackage ../build-support/make-startupitem { };
685   makeImpureTest = callPackage ../build-support/make-impure-test.nix;
687   makeInitrd = callPackage ../build-support/kernel/make-initrd.nix; # Args intentionally left out
689   makeInitrdNG = callPackage ../build-support/kernel/make-initrd-ng.nix;
690   makeInitrdNGTool = callPackage ../build-support/kernel/make-initrd-ng-tool.nix { };
692   makeWrapper = makeShellWrapper;
694   makeShellWrapper = makeSetupHook {
695     name = "make-shell-wrapper-hook";
696     propagatedBuildInputs = [ dieHook ];
697     substitutions = {
698       # targetPackages.runtimeShell only exists when pkgs == targetPackages (when targetPackages is not  __raw)
699       shell = if targetPackages ? runtimeShell then targetPackages.runtimeShell else throw "makeWrapper/makeShellWrapper must be in nativeBuildInputs";
700     };
701     passthru = {
702       tests = tests.makeWrapper;
703     };
704   } ../build-support/setup-hooks/make-wrapper.sh;
706   compressFirmwareXz = callPackage ../build-support/kernel/compress-firmware.nix { type = "xz"; };
708   compressFirmwareZstd = callPackage ../build-support/kernel/compress-firmware.nix { type = "zstd"; };
710   makeModulesClosure = { kernel, firmware, rootModules, allowMissing ? false }:
711     callPackage ../build-support/kernel/modules-closure.nix {
712       inherit kernel firmware rootModules allowMissing;
713     };
715   mkBinaryCache = callPackage ../build-support/binary-cache { };
717   mkShell = callPackage ../build-support/mkshell { };
718   mkShellNoCC = mkShell.override { stdenv = stdenvNoCC; };
720   mpsolve = libsForQt5.callPackage ../applications/science/math/mpsolve { };
722   nixBufferBuilders = import ../applications/editors/emacs/build-support/buffer.nix {
723     inherit lib writeText;
724     inherit (emacs.pkgs) inherit-local;
725   };
727   nix-gitignore = callPackage ../build-support/nix-gitignore { };
729   ociTools = callPackage ../build-support/oci-tools { };
731   inherit (
732     callPackages ../build-support/setup-hooks/patch-rc-path-hooks { }
733   ) patchRcPathBash patchRcPathCsh patchRcPathFish patchRcPathPosix;
735   pathsFromGraph = ../build-support/kernel/paths-from-graph.pl;
737   pruneLibtoolFiles = makeSetupHook { name = "prune-libtool-files"; }
738     ../build-support/setup-hooks/prune-libtool-files.sh;
740   closureInfo = callPackage ../build-support/closure-info.nix { };
742   serverspec = callPackage ../tools/misc/serverspec { };
744   setupSystemdUnits = callPackage ../build-support/setup-systemd-units.nix { };
746   shortenPerlShebang = makeSetupHook {
747     name = "shorten-perl-shebang-hook";
748     propagatedBuildInputs = [ dieHook ];
749   } ../build-support/setup-hooks/shorten-perl-shebang.sh;
751   singularity-tools = callPackage ../build-support/singularity-tools { };
754   srcOnly = callPackage ../build-support/src-only { };
756   substitute = callPackage ../build-support/substitute/substitute.nix { };
758   substituteAll = callPackage ../build-support/substitute/substitute-all.nix { };
760   substituteAllFiles = callPackage ../build-support/substitute-files/substitute-all-files.nix { };
762   replaceDependencies = callPackage ../build-support/replace-dependencies.nix { };
764   replaceDependency = { drv, oldDependency, newDependency, verbose ? true }: replaceDependencies {
765     inherit drv verbose;
766     replacements = [{
767       inherit oldDependency newDependency;
768     }];
769     # When newDependency depends on drv, instead of causing infinite recursion, keep it as is.
770     cutoffPackages = [ newDependency ];
771   };
773   replaceVars = callPackage ../build-support/replace-vars { };
775   replaceDirectDependencies = callPackage ../build-support/replace-direct-dependencies.nix { };
777   nukeReferences = callPackage ../build-support/nuke-references {
778     inherit (darwin) signingUtils;
779   };
781   referencesByPopularity = callPackage ../build-support/references-by-popularity { };
783   removeReferencesTo = callPackage ../build-support/remove-references-to {
784     inherit (darwin) signingUtils;
785   };
787   # No callPackage.  In particular, we don't want `img` *package* in parameters.
788   vmTools = makeOverridable (import ../build-support/vm) { inherit pkgs lib; };
790   releaseTools = callPackage ../build-support/release { };
792   inherit (lib.systems) platforms;
794   setJavaClassPath = makeSetupHook {
795     name = "set-java-classpath-hook";
796   } ../build-support/setup-hooks/set-java-classpath.sh;
798   fixDarwinDylibNames = makeSetupHook {
799     name = "fix-darwin-dylib-names-hook";
800     substitutions = { inherit (darwin.binutils) targetPrefix; };
801     meta.platforms = lib.platforms.darwin;
802   } ../build-support/setup-hooks/fix-darwin-dylib-names.sh;
804   writeDarwinBundle = callPackage ../build-support/make-darwin-bundle/write-darwin-bundle.nix { };
806   desktopToDarwinBundle = makeSetupHook {
807     name = "desktop-to-darwin-bundle-hook";
808     propagatedBuildInputs = [ writeDarwinBundle librsvg imagemagick (onlyBin python3Packages.icnsutil) ];
809   } ../build-support/setup-hooks/desktop-to-darwin-bundle.sh;
811   keepBuildTree = makeSetupHook {
812     name = "keep-build-tree-hook";
813   } ../build-support/setup-hooks/keep-build-tree.sh;
815   moveBuildTree = makeSetupHook {
816     name = "move-build-tree-hook";
817   } ../build-support/setup-hooks/move-build-tree.sh;
819   enableGCOVInstrumentation = makeSetupHook {
820     name = "enable-gcov-instrumentation-hook";
821   } ../build-support/setup-hooks/enable-coverage-instrumentation.sh;
823   makeGCOVReport = makeSetupHook {
824     name = "make-gcov-report-hook";
825     propagatedBuildInputs = [ lcov enableGCOVInstrumentation ];
826   } ../build-support/setup-hooks/make-coverage-analysis-report.sh;
828   makeHardcodeGsettingsPatch = callPackage ../build-support/make-hardcode-gsettings-patch { };
830   mitm-cache = callPackage ../build-support/mitm-cache {
831     inherit (darwin.apple_sdk.frameworks) Security;
832   };
834   # intended to be used like nix-build -E 'with import <nixpkgs> { }; enableDebugging fooPackage'
835   enableDebugging = pkg: pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; };
837   findXMLCatalogs = makeSetupHook {
838     name = "find-xml-catalogs-hook";
839   } ../build-support/setup-hooks/find-xml-catalogs.sh;
841   wrapGAppsHook3 = wrapGAppsNoGuiHook.override {
842     isGraphical = true;
843   };
845   wrapGAppsHook4 = wrapGAppsNoGuiHook.override {
846     isGraphical = true;
847     gtk3 = __splicedPackages.gtk4;
848   };
850   wrapGAppsNoGuiHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook {
851     makeWrapper = makeBinaryWrapper;
852   };
854   separateDebugInfo = makeSetupHook {
855     name = "separate-debug-info-hook";
856   } ../build-support/setup-hooks/separate-debug-info.sh;
858   setupDebugInfoDirs = makeSetupHook {
859     name = "setup-debug-info-dirs-hook";
860   } ../build-support/setup-hooks/setup-debug-info-dirs.sh;
862   useOldCXXAbi = makeSetupHook {
863     name = "use-old-cxx-abi-hook";
864   } ../build-support/setup-hooks/use-old-cxx-abi.sh;
866   validatePkgConfig = makeSetupHook
867     { name = "validate-pkg-config"; propagatedBuildInputs = [ findutils pkg-config ]; }
868     ../build-support/setup-hooks/validate-pkg-config.sh;
870   #package writers
871   writers = callPackage ../build-support/writers { };
873   # lib functions depending on pkgs
874   inherit (import ../pkgs-lib {
875     # The `lib` variable in this scope doesn't include any applied lib overlays,
876     # `pkgs.lib` does.
877     inherit (pkgs) lib;
878     inherit pkgs;
879   }) formats;
881   testers = callPackage ../build-support/testers { };
883   ### TOOLS
885   _3llo = callPackage ../tools/misc/3llo { };
887   _1password-gui = callPackage ../applications/misc/1password-gui { };
889   _1password-gui-beta = callPackage ../applications/misc/1password-gui { channel = "beta"; };
891   _7zz = darwin.apple_sdk_11_0.callPackage ../tools/archivers/7zz { };
892   _7zz-rar = _7zz.override { enableUnfree = true; };
894   acme-dns = callPackage ../servers/dns/acme-dns/default.nix {
895     buildGoModule = buildGo122Module; # https://github.com/joohoi/acme-dns/issues/365
896   };
898   acquire = with python3Packages; toPythonApplication acquire;
900   actdiag = with python3.pkgs; toPythonApplication actdiag;
902   adlplug = callPackage ../applications/audio/adlplug {
903     jack = libjack2;
904   };
905   opnplug = adlplug.override {
906     type = "OPN";
907   };
909   akkoma = callPackage ../servers/akkoma {
910     elixir = elixir_1_16;
911     beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_16; });
912   };
913   akkoma-frontends = recurseIntoAttrs {
914     akkoma-fe = callPackage ../servers/akkoma/akkoma-fe { };
915     admin-fe = callPackage ../servers/akkoma/admin-fe {
916       nodejs = nodejs_18;
917       yarn = yarn.override { nodejs = nodejs_18; };
918       python3 = python311;
919     };
920   };
921   akkoma-emoji = recurseIntoAttrs {
922     blobs_gg = callPackage ../servers/akkoma/emoji/blobs_gg.nix { };
923   };
925   aegisub = callPackage ../by-name/ae/aegisub/package.nix ({
926     boost = boost179;
927     luajit = luajit.override { enable52Compat = true; };
928     wxGTK = wxGTK32;
929   } // (config.aegisub or {}));
931   acme-client = callPackage ../tools/networking/acme-client {
932     stdenv = gccStdenv;
933   };
935   honggfuzz = callPackage ../tools/security/honggfuzz {
936     clang = clang_16;
937     llvm = llvm_16;
938   };
940   aflplusplus = callPackage ../tools/security/aflplusplus {
941     clang = clang_15;
942     llvm = llvm_15;
943     llvmPackages = llvmPackages_15;
944     wine = null;
945   };
947   libdislocator = callPackage ../tools/security/aflplusplus/libdislocator.nix { };
949   afsctool = callPackage ../tools/filesystems/afsctool {
950     inherit (darwin.apple_sdk.frameworks) CoreServices;
951   };
953   aioblescan = with python3Packages; toPythonApplication aioblescan;
955   ajour = callPackage ../tools/games/ajour {
956     inherit (plasma5Packages) kdialog;
957   };
959   inherit (recurseIntoAttrs (callPackage ../tools/package-management/akku { }))
960     akku akkuPackages;
962   alice-tools = callPackage ../tools/games/alice-tools {
963     withGUI = false;
964   };
966   alice-tools-qt5 = libsForQt5.callPackage ../tools/games/alice-tools { };
968   alice-tools-qt6 = qt6Packages.callPackage ../tools/games/alice-tools { };
970   auditwheel = with python3Packages; toPythonApplication auditwheel;
972   awsbck = callPackage ../tools/backup/awsbck { };
974   bikeshed = python3Packages.callPackage ../applications/misc/bikeshed { };
976   davinci-resolve = callPackage ../applications/video/davinci-resolve { };
978   davinci-resolve-studio = callPackage ../applications/video/davinci-resolve { studioVariant = true; };
980   dehinter = with python3Packages; toPythonApplication dehinter;
982   gamemode = callPackage ../tools/games/gamemode {
983     libgamemode32 = pkgsi686Linux.gamemode.lib;
984   };
986   gamescope = callPackage ../by-name/ga/gamescope/package.nix {
987     enableExecutable = true;
988     enableWsi = false;
990     wlroots = wlroots_0_17;
991   };
993   gamescope-wsi = callPackage ../by-name/ga/gamescope/package.nix {
994     enableExecutable = false;
995     enableWsi = true;
997     wlroots = wlroots_0_17;
998   };
1000   font-v = with python3Packages; toPythonApplication font-v;
1002   fontbakery = with python3Packages; toPythonApplication fontbakery;
1004   weylus = callPackage ../applications/graphics/weylus  {
1005     inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa VideoToolbox;
1006   };
1008   # This is to workaround gfal2-python broken against Python 3.12 or later.
1009   # TODO: Remove these lines after solving the breakage.
1010   gfal2-util = callPackage ../by-name/gf/gfal2-util/package.nix (lib.optionalAttrs python3Packages.gfal2-python.meta.broken {
1011     python3Packages = python311Packages;
1012   });
1014   gh-cal = callPackage ../tools/misc/gh-cal { };
1016   gp-saml-gui = python3Packages.callPackage ../tools/networking/gp-saml-gui { };
1018   fwbuilder = libsForQt5.callPackage ../tools/security/fwbuilder { };
1020   inherit (callPackages ../tools/networking/ivpn/default.nix { buildGoModule = buildGo122Module; }) ivpn ivpn-service;
1022   kanata-with-cmd = kanata.override { withCmd = true; };
1024   kdocker = libsForQt5.callPackage ../tools/X11/kdocker { };
1026   ksnip = libsForQt5.callPackage ../tools/misc/ksnip { };
1028   linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
1030   makehuman = libsForQt5.callPackage ../applications/misc/makehuman { };
1032   mcaselector = callPackage ../tools/games/minecraft/mcaselector {
1033     jre = jre.override {
1034       enableJavaFX = true;
1035     };
1036   };
1038   memos = callPackage ../servers/memos { };
1040   mkosi = python3Packages.callPackage ../tools/virtualization/mkosi { inherit systemd; };
1042   mkosi-full = mkosi.override { withQemu = true; };
1044   mpremote = python3Packages.callPackage ../tools/misc/mpremote { };
1046   mpy-utils = python3Packages.callPackage ../tools/misc/mpy-utils { };
1048   mymcplus = python3Packages.callPackage ../tools/games/mymcplus { };
1050   networkd-notify = python3Packages.callPackage ../tools/networking/networkd-notify {
1051     systemd = pkgs.systemd;
1052   };
1054   nominatim = callPackage ../servers/nominatim {
1055     postgresql = postgresql_14;
1056   };
1058   ocs-url = libsForQt5.callPackage ../tools/misc/ocs-url { };
1060   openbugs = pkgsi686Linux.callPackage ../applications/science/machine-learning/openbugs { };
1062   openusd = python3Packages.openusd.override {
1063     withTools = true;
1064     withUsdView = true;
1065   };
1067   osquery = callPackage ../tools/system/osquery { };
1069   pricehist = python3Packages.callPackage ../tools/misc/pricehist { };
1071   q = callPackage ../tools/networking/q { };
1073   qFlipper = libsForQt5.callPackage ../tools/misc/qflipper { };
1075   ronin = callPackage ../tools/security/ronin { };
1077   scarab = callPackage ../tools/games/scarab { };
1079   inherit (callPackage ../development/libraries/sdbus-cpp { }) sdbus-cpp sdbus-cpp_2;
1081   sdkmanager = with python3Packages; toPythonApplication sdkmanager;
1083   shaperglot = with python3Packages; toPythonApplication shaperglot;
1085   snagboot = python3.pkgs.callPackage  ../applications/misc/snagboot { };
1087   slipstream = callPackage ../tools/games/slipstream {
1088     jdk = jdk8;
1089   };
1091   stargazer = callPackage ../servers/gemini/stargazer { };
1093   supermin = callPackage ../tools/virtualization/supermin {
1094     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
1095   };
1097   tailwindcss = callPackage ../development/tools/tailwindcss { };
1099   termusic = darwin.apple_sdk_11_0.callPackage ../applications/audio/termusic {
1100     inherit (darwin.apple_sdk_11_0.frameworks) AppKit CoreAudio CoreGraphics Foundation IOKit MediaPlayer Security;
1101   };
1103   ufolint = with python3Packages; toPythonApplication ufolint;
1105   valeronoi = qt6Packages.callPackage ../tools/misc/valeronoi { };
1107   veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { };
1109   ventoy-full = ventoy.override {
1110     withCryptsetup = true;
1111     withXfs = true;
1112     withExt4 = true;
1113     withNtfs = true;
1114   };
1116   vprof = with python3Packages; toPythonApplication vprof;
1118   vrc-get = callPackage ../tools/misc/vrc-get { };
1120   winbox = winbox3;
1121   winbox3 = callPackage ../tools/admin/winbox {
1122     wine = wineWowPackages.stable;
1123   };
1125   yabridge = callPackage ../tools/audio/yabridge {
1126     wine = wineWowPackages.staging;
1127   };
1129   yabridgectl = callPackage ../tools/audio/yabridgectl {
1130     wine = wineWowPackages.staging;
1131   };
1133   yafetch = callPackage ../tools/misc/yafetch {
1134     stdenv = clangStdenv;
1135   };
1137   yarn-lock-converter = callPackage ../tools/package-management/yarn-lock-converter { };
1139   archi = callPackage ../tools/misc/archi { };
1141   breitbandmessung = callPackage ../applications/networking/breitbandmessung {
1142     electron = electron_29;
1143   };
1145   ### APPLICATIONS/VERSION-MANAGEMENT
1147   git = callPackage ../applications/version-management/git {
1148     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
1149     perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey];
1150     smtpPerlLibs = [
1151       perlPackages.libnet perlPackages.NetSMTPSSL
1152       perlPackages.IOSocketSSL perlPackages.NetSSLeay
1153       perlPackages.AuthenSASL perlPackages.DigestHMAC
1154     ];
1155   };
1157   # The full-featured Git.
1158   gitFull = git.override {
1159     svnSupport = true;
1160     guiSupport = true;
1161     sendEmailSupport = true;
1162     withSsh = true;
1163     withLibsecret = !stdenv.hostPlatform.isDarwin;
1164   };
1166   # Git with SVN support, but without GUI.
1167   gitSVN = lowPrio (git.override { svnSupport = true; });
1169   git-doc = lib.addMetaAttrs {
1170     description = "Additional documentation for Git";
1171     longDescription = ''
1172       This package contains additional documentation (HTML and text files) that
1173       is referenced in the man pages of Git.
1174     '';
1175   } gitFull.doc;
1177   gitMinimal = git.override {
1178     withManual = false;
1179     pythonSupport = false;
1180     perlSupport = false;
1181     withpcre2 = false;
1182   };
1184   bitbucket-server-cli = callPackage ../applications/version-management/bitbucket-server-cli { };
1186   bump2version = with python3Packages; toPythonApplication bump2version;
1188   cgit = callPackage ../applications/version-management/cgit { };
1190   cgit-pink = callPackage ../applications/version-management/cgit/pink.nix { };
1192   commitlint = nodePackages."@commitlint/cli";
1194   datalad = with python3Packages; toPythonApplication datalad;
1196   datalad-gooey = with python3Packages; toPythonApplication datalad-gooey;
1198   forgejo-lts = callPackage ../by-name/fo/forgejo/lts.nix { };
1200   gfold = callPackage ../applications/version-management/gfold { };
1202   gita = python3Packages.callPackage ../applications/version-management/gita { };
1204   gitoxide = callPackage ../applications/version-management/gitoxide { };
1206   github-cli = gh;
1208   git-absorb = callPackage ../applications/version-management/git-absorb { };
1210   git-annex-metadata-gui = libsForQt5.callPackage ../applications/version-management/git-annex-metadata-gui {
1211     inherit (python3Packages) buildPythonApplication pyqt5 git-annex-adapter;
1212   };
1214   git-annex-remote-dbx = callPackage ../applications/version-management/git-annex-remote-dbx {
1215     inherit (python3Packages)
1216     buildPythonApplication
1217     dropbox
1218     annexremote
1219     humanfriendly;
1220   };
1222   git-annex-remote-googledrive = python3Packages.callPackage ../applications/version-management/git-annex-remote-googledrive { };
1224   git-archive-all = python3.pkgs.callPackage ../applications/version-management/git-archive-all { };
1226   git-branchless = callPackage ../applications/version-management/git-branchless { };
1228   git-cinnabar = callPackage ../applications/version-management/git-cinnabar { };
1230   git-cliff = callPackage ../applications/version-management/git-cliff { };
1232   git-credential-keepassxc = callPackage ../applications/version-management/git-credential-keepassxc { };
1234   git-credential-manager = callPackage ../applications/version-management/git-credential-manager { };
1236   git-fame = callPackage ../applications/version-management/git-fame { };
1238   git-gone = callPackage ../applications/version-management/git-gone {
1239     inherit (darwin.apple_sdk.frameworks) Security;
1240   };
1242   git-imerge = python3Packages.callPackage ../applications/version-management/git-imerge { };
1244   git-lfs = lowPrio (callPackage ../applications/version-management/git-lfs { });
1246   git-machete = python3Packages.callPackage ../applications/version-management/git-machete { };
1248   git-ps-rs = callPackage ../development/tools/git-ps-rs {
1249     inherit (darwin.apple_sdk.frameworks) Security;
1250   };
1252   git-publish = python3Packages.callPackage ../applications/version-management/git-publish { };
1254   git-quickfix = callPackage ../applications/version-management/git-quickfix {
1255     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
1256   };
1258   git-recent = callPackage ../applications/version-management/git-recent {
1259     util-linux = if stdenv.hostPlatform.isLinux then util-linuxMinimal else util-linux;
1260   };
1262   git-remote-codecommit = python3Packages.callPackage ../applications/version-management/git-remote-codecommit { };
1264   gitRepo = git-repo;
1265   git-repo-updater = python3Packages.callPackage ../applications/version-management/git-repo-updater { };
1267   git-review = python3Packages.callPackage ../applications/version-management/git-review { };
1269   git-stack = callPackage ../applications/version-management/git-stack {
1270     inherit (darwin.apple_sdk.frameworks) Security;
1271   };
1273   git-trim = darwin.apple_sdk_11_0.callPackage ../applications/version-management/git-trim {
1274     inherit (darwin.apple_sdk_11_0.frameworks) IOKit CoreFoundation Security;
1275   };
1277   git-up = callPackage ../applications/version-management/git-up {
1278     pythonPackages = python3Packages;
1279   };
1281   git-workspace = callPackage ../applications/version-management/git-workspace {
1282     inherit (darwin.apple_sdk.frameworks) Security;
1283   };
1285   gitlint = python3Packages.callPackage ../applications/version-management/gitlint { };
1287   gitmux = callPackage ../applications/version-management/gitmux { buildGoModule = buildGo122Module; };
1289   gittyup = libsForQt5.callPackage ../applications/version-management/gittyup { };
1291   lucky-commit = callPackage ../applications/version-management/lucky-commit {
1292     inherit (darwin.apple_sdk.frameworks) OpenCL;
1293   };
1295   merge-fmt = callPackage ../applications/version-management/merge-fmt {
1296     inherit (ocamlPackages) buildDunePackage cmdliner base stdio;
1297    };
1299   pass-git-helper = python3Packages.callPackage ../applications/version-management/pass-git-helper { };
1301   qgit = qt5.callPackage ../applications/version-management/qgit { };
1303   silver-platter = python3Packages.callPackage ../applications/version-management/silver-platter { };
1305   svn-all-fast-export = libsForQt5.callPackage ../applications/version-management/svn-all-fast-export { };
1307   svn2git = callPackage ../applications/version-management/svn2git {
1308     git = gitSVN;
1309   };
1311   inherit (haskellPackages) git-annex;
1313   inherit (haskellPackages) git-brunch;
1315   git-autofixup = perlPackages.GitAutofixup;
1317   ghrepo-stats = with python3Packages; toPythonApplication ghrepo-stats;
1319   git-filter-repo = with python3Packages; toPythonApplication git-filter-repo;
1321   git-revise = with python3Packages; toPythonApplication git-revise;
1323   ### APPLICATIONS/EMULATORS
1325   _86Box = callPackage ../applications/emulators/86box { };
1327   _86Box-with-roms = _86Box.override {
1328     unfreeEnableRoms = true;
1329     unfreeEnableDiscord = true;
1330   };
1332   box64 = callPackage ../applications/emulators/box64 {
1333     hello-x86_64 = if stdenv.hostPlatform.isx86_64 then
1334       hello
1335     else
1336       pkgsCross.gnu64.hello;
1337   };
1339   box86 =
1340     let
1341       args = {
1342         hello-x86_32 = if stdenv.hostPlatform.isx86_32 then
1343           hello
1344         else
1345           pkgsCross.gnu32.hello;
1346       };
1347     in
1348     if stdenv.hostPlatform.is32bit then
1349       callPackage ../applications/emulators/box86 args
1350     else if stdenv.hostPlatform.isx86_64 then
1351       pkgsCross.gnu32.callPackage ../applications/emulators/box86 args
1352     else if stdenv.hostPlatform.isAarch64 then
1353       pkgsCross.armv7l-hf-multiplatform.callPackage ../applications/emulators/box86 args
1354     else
1355       throw "Don't know 32-bit platform for cross from: ${stdenv.hostPlatform.stdenv}";
1357   cdemu-client = callPackage ../applications/emulators/cdemu/client.nix { };
1359   cdemu-daemon = callPackage ../applications/emulators/cdemu/daemon.nix { };
1361   coltrane = callPackage ../applications/misc/coltrane { };
1363   dosbox = callPackage ../applications/emulators/dosbox {
1364     inherit (darwin.apple_sdk.frameworks ) OpenGL;
1365     SDL = if stdenv.hostPlatform.isDarwin then SDL else SDL_compat;
1366   };
1368   dosbox-x = darwin.apple_sdk_11_0.callPackage ../applications/emulators/dosbox-x {
1369     inherit (darwin.apple_sdk_11_0.frameworks) AudioUnit Carbon Cocoa;
1370   };
1372   fceux-qt5 = fceux.override { ___qtVersion = "5"; };
1373   fceux-qt6 = fceux.override { ___qtVersion = "6"; };
1375   firebird-emu = libsForQt5.callPackage ../applications/emulators/firebird-emu { };
1377   fusesoc = python3Packages.callPackage ../tools/package-management/fusesoc { };
1379   gcdemu = callPackage ../applications/emulators/cdemu/gui.nix { };
1381   gensgs = pkgsi686Linux.callPackage ../applications/emulators/gens-gs { };
1383   goldberg-emu = callPackage ../applications/emulators/goldberg-emu {
1384     protobuf = protobuf_21;
1385   };
1387   image-analyzer = callPackage ../applications/emulators/cdemu/analyzer.nix { };
1389   kega-fusion = pkgsi686Linux.callPackage ../applications/emulators/kega-fusion { };
1391   libmirage = callPackage ../applications/emulators/cdemu/libmirage.nix { };
1393   mame = libsForQt5.callPackage ../applications/emulators/mame { };
1395   mame-tools = lib.addMetaAttrs {
1396     description = mame.meta.description + " (tools only)";
1397   } (lib.getOutput "tools" mame);
1399   ppsspp-sdl = let
1400     argset = {
1401       enableQt = false;
1402       enableVulkan = true;
1403       forceWayland = false;
1404     };
1405   in
1406     ppsspp.override argset;
1408   ppsspp-sdl-wayland = let
1409     argset = {
1410       enableQt = false;
1411       enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/13845
1412       forceWayland = true;
1413     };
1414   in
1415     ppsspp.override argset;
1417   ppsspp-qt = let
1418     argset = {
1419       enableQt = true;
1420       enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/11628
1421       forceWayland = false;
1422     };
1423   in
1424     ppsspp.override argset;
1426   punes = libsForQt5.callPackage ../applications/emulators/punes { };
1428   punes-qt6 = qt6Packages.callPackage ../applications/emulators/punes { };
1430   py65 = with python3.pkgs; toPythonApplication py65;
1432   ripes = qt6Packages.callPackage ../applications/emulators/ripes { };
1434   rmg-wayland = callPackage ../by-name/rm/rmg/package.nix {
1435     withWayland = true;
1436   };
1438   snes9x-gtk = snes9x.override {
1439     withGtk = true;
1440   };
1442   winetricks = callPackage ../applications/emulators/wine/winetricks.nix { };
1444   zsnes = pkgsi686Linux.callPackage ../applications/emulators/zsnes { };
1445   zsnes2 = pkgsi686Linux.callPackage ../applications/emulators/zsnes/2.x.nix { };
1447   ### APPLICATIONS/EMULATORS/BSNES
1449   ares = darwin.apple_sdk_11_0.callPackage ../applications/emulators/bsnes/ares { };
1451   bsnes-hd = darwin.apple_sdk_11_0.callPackage ../applications/emulators/bsnes/bsnes-hd { };
1453   ### APPLICATIONS/EMULATORS/DOLPHIN-EMU
1455   dolphin-emu = qt6Packages.callPackage ../applications/emulators/dolphin-emu {
1456     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
1457     inherit (darwin.apple_sdk_11_0.frameworks) CoreBluetooth ForceFeedback IOBluetooth IOKit OpenGL VideoToolbox;
1458   };
1460   dolphin-emu-primehack = qt6.callPackage ../applications/emulators/dolphin-emu/primehack.nix {
1461     inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL;
1462   };
1464   ### APPLICATIONS/EMULATORS/RETROARCH
1466   retroarchBare = qt5.callPackage ../applications/emulators/retroarch { };
1468   retroarchFull = retroarch.override {
1469     cores = builtins.filter
1470       # Remove cores not supported on platform
1471       (c: c ? libretroCore && (lib.meta.availableOn stdenv.hostPlatform c))
1472       (builtins.attrValues libretro);
1473   };
1475   wrapRetroArch = { retroarch, settings ? {} }:
1476     callPackage ../applications/emulators/retroarch/wrapper.nix
1477       { inherit retroarch settings; };
1479   retroarch = wrapRetroArch {
1480     retroarch = retroarchBare;
1481     settings = {
1482       assets_directory = "${retroarch-assets}/share/retroarch/assets";
1483       joypad_autoconfig_dir = "${retroarch-joypad-autoconfig}/share/libretro/autoconfig";
1484       libretro_info_path = "${libretro-core-info}/share/retroarch/cores";
1485     };
1486   };
1488   retroarch-assets = callPackage ../applications/emulators/retroarch/retroarch-assets.nix { };
1490   retroarch-joypad-autoconfig = callPackage ../applications/emulators/retroarch/retroarch-joypad-autoconfig.nix { };
1492   libretranslate = with python3.pkgs; toPythonApplication libretranslate;
1494   libretro = recurseIntoAttrs
1495     (callPackage ../applications/emulators/retroarch/cores.nix {
1496       retroarch = retroarchBare;
1497     });
1499   libretro-core-info = callPackage ../applications/emulators/retroarch/libretro-core-info.nix { };
1501   kodi-retroarch-advanced-launchers =
1502     callPackage ../applications/emulators/retroarch/kodi-advanced-launchers.nix { };
1504   # Aliases kept here because they are easier to use
1505   x16-emulator = x16.emulator;
1506   x16-rom = x16.rom;
1507   x16-run = x16.run;
1509   yabause = libsForQt5.callPackage ../applications/emulators/yabause {
1510     libglut = null;
1511     openal = null;
1512   };
1514   ### APPLICATIONS/FILE-MANAGERS
1516   doublecmd = callPackage ../by-name/do/doublecmd/package.nix {
1517     inherit (qt5) wrapQtAppsHook;
1518   };
1520   krusader = libsForQt5.callPackage ../applications/file-managers/krusader { };
1522   lf = callPackage ../applications/file-managers/lf { };
1524   ctpv = callPackage ../applications/file-managers/lf/ctpv.nix { };
1526   mc = callPackage ../applications/file-managers/mc {
1527     inherit (darwin) autoSignDarwinBinariesHook;
1528   };
1530   saunafs = callPackage ../by-name/sa/saunafs/package.nix {
1531     boost = boost185;
1532   };
1534   vifm-full = vifm.override {
1535     mediaSupport = true;
1536     inherit lib udisks2 python3;
1537   };
1539   xfe = callPackage ../applications/file-managers/xfe {
1540     fox = fox_1_6;
1541   };
1543   johnny-reborn-engine = callPackage ../applications/misc/johnny-reborn { };
1545   johnny-reborn = callPackage ../applications/misc/johnny-reborn/with-data.nix { };
1547   ### APPLICATIONS/TERMINAL-EMULATORS
1549   contour = qt6.callPackage ../applications/terminal-emulators/contour {
1550     inherit (darwin.apple_sdk_11_0.libs) utmp;
1551     inherit (darwin) sigtool;
1552     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
1553     catch2 = catch2_3;
1554     fmt = fmt_9;
1555   };
1557   cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
1559   kitty = darwin.apple_sdk_11_0.callPackage ../applications/terminal-emulators/kitty {
1560     harfbuzz = harfbuzz.override { withCoreText = stdenv.hostPlatform.isDarwin; };
1561     inherit (darwin) autoSignDarwinBinariesHook;
1562     inherit (darwin.apple_sdk_11_0) Libsystem;
1563     inherit (darwin.apple_sdk_11_0.frameworks)
1564       Cocoa
1565       Kernel
1566       UniformTypeIdentifiers
1567       UserNotifications
1568     ;
1569   };
1571   kitty-themes  = callPackage ../applications/terminal-emulators/kitty/themes.nix { };
1573   mlterm = darwin.apple_sdk_11_0.callPackage ../applications/terminal-emulators/mlterm { };
1574   mlterm-wayland = mlterm.override {
1575     enableX11 = false;
1576   };
1578   rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { };
1580   rxvt-unicode-emoji = rxvt-unicode.override {
1581     rxvt-unicode-unwrapped = rxvt-unicode-unwrapped-emoji;
1582   };
1584   rxvt-unicode-plugins = import ../applications/terminal-emulators/rxvt-unicode-plugins { inherit callPackage; };
1586   rxvt-unicode-unwrapped = callPackage ../applications/terminal-emulators/rxvt-unicode { };
1588   rxvt-unicode-unwrapped-emoji = rxvt-unicode-unwrapped.override {
1589     emojiSupport = true;
1590   };
1592   st = callPackage ../applications/terminal-emulators/st {
1593     conf = config.st.conf or null;
1594     patches = config.st.patches or [];
1595     extraLibs = config.st.extraLibs or [];
1596   };
1597   xst = callPackage ../applications/terminal-emulators/st/xst.nix { };
1598   mcaimi-st = callPackage ../applications/terminal-emulators/st/mcaimi-st.nix { };
1599   siduck76-st = callPackage ../applications/terminal-emulators/st/siduck76-st.nix { };
1601   stupidterm = callPackage ../applications/terminal-emulators/stupidterm {
1602     gtk = gtk3;
1603   };
1605   termite = callPackage ../applications/terminal-emulators/termite/wrapper.nix {
1606     termite = termite-unwrapped;
1607   };
1608   termite-unwrapped = callPackage ../applications/terminal-emulators/termite { };
1610   wezterm = darwin.apple_sdk_11_0.callPackage ../applications/terminal-emulators/wezterm {
1611     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa CoreGraphics Foundation UserNotifications System;
1612   };
1614   twine = with python3Packages; toPythonApplication twine;
1616   amazon-qldb-shell = callPackage ../development/tools/amazon-qldb-shell {
1617     inherit (darwin.apple_sdk.frameworks) Security;
1618   };
1620   amber = callPackage ../tools/text/amber {
1621     inherit (darwin.apple_sdk.frameworks) Security;
1622   };
1624   amber-secret = callPackage ../tools/security/amber {
1625     inherit (darwin.apple_sdk.frameworks) Security;
1626   };
1628   inherit (callPackages ../development/tools/ammonite {})
1629     ammonite_2_12
1630     ammonite_2_13;
1631   ammonite = ammonite_2_13;
1633   android-tools = lowPrio (darwin.apple_sdk_11_0.callPackage ../tools/misc/android-tools { });
1635   angie = callPackage ../servers/http/angie {
1636     zlib = zlib-ng.override { withZlibCompat = true; };
1637     withPerl = false;
1638     # We don't use `with` statement here on purpose!
1639     # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1640     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ];
1641   };
1643   angieQuic = callPackage ../servers/http/angie {
1644     zlib = zlib-ng.override { withZlibCompat = true; };
1645     withPerl = false;
1646     withQuic = true;
1647     # We don't use `with` statement here on purpose!
1648     # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1649     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ];
1650     # Use latest quictls to allow http3 support
1651     openssl = quictls;
1652   };
1654   angie-console-light = callPackage ../servers/http/angie/console-light.nix { };
1656   apk-tools = callPackage ../tools/package-management/apk-tools {
1657     lua = lua5_3;
1658   };
1660   appimage-run = callPackage ../tools/package-management/appimage-run { };
1661   appimage-run-tests = callPackage ../tools/package-management/appimage-run/test.nix {
1662     appimage-run = appimage-run.override {
1663       appimage-run-tests = null; /* break boostrap cycle for passthru.tests */
1664     };
1665   };
1667   ArchiSteamFarm = callPackage ../applications/misc/ArchiSteamFarm { };
1669   arduino = arduino-core.override { withGui = true; };
1671   arduino-core = callPackage ../development/embedded/arduino/arduino-core/chrootenv.nix { };
1672   arduino-core-unwrapped = callPackage ../development/embedded/arduino/arduino-core { };
1674   apio = python3Packages.callPackage ../development/embedded/fpga/apio { };
1676   apitrace = libsForQt5.callPackage ../applications/graphics/apitrace { };
1678   arj = callPackage ../tools/archivers/arj {
1679     stdenv = gccStdenv;
1680   };
1682   inherit (callPackages ../data/fonts/arphic {})
1683     arphic-ukai arphic-uming;
1685   asciinema-agg = callPackage ../tools/misc/asciinema-agg {
1686     inherit (darwin.apple_sdk.frameworks) Security;
1687   };
1689   asymptote = libsForQt5.callPackage ../tools/graphics/asymptote { };
1691   atomicparsley = callPackage ../tools/video/atomicparsley {
1692     inherit (darwin.apple_sdk.frameworks) Cocoa;
1693   };
1695   authelia = callPackage ../servers/authelia {
1696     buildGoModule = buildGo123Module;
1697   };
1699   authentik-outposts = recurseIntoAttrs (callPackages ../by-name/au/authentik/outposts.nix { });
1701   autoflake = with python3.pkgs; toPythonApplication autoflake;
1703   awsume = python3Packages.callPackage ../tools/admin/awsume { };
1705   aws-mfa = python3Packages.callPackage ../tools/admin/aws-mfa { };
1707   azure-cli-extensions = recurseIntoAttrs azure-cli.extensions;
1709   azure-static-sites-client = callPackage ../development/tools/azure-static-sites-client { };
1711   binocle = callPackage ../applications/misc/binocle {
1712     inherit (darwin.apple_sdk.frameworks) AppKit CoreFoundation CoreGraphics CoreVideo Foundation Metal QuartzCore;
1713   };
1715   blisp = darwin.apple_sdk_11_0.callPackage ../development/embedded/blisp {
1716     inherit (darwin.apple_sdk_11_0.frameworks) IOKit;
1717   };
1719   brakeman = callPackage ../development/tools/analysis/brakeman { };
1721   brewtarget = libsForQt5.callPackage ../applications/misc/brewtarget { } ;
1723   # Derivation's result is not used by nixpkgs. Useful for validation for
1724   # regressions of bootstrapTools on hydra and on ofborg. Example:
1725   #     pkgsCross.aarch64-multiplatform.freshBootstrapTools.build
1726   freshBootstrapTools = if stdenv.hostPlatform.isDarwin then
1727     callPackage ../stdenv/darwin/make-bootstrap-tools.nix {
1728       localSystem = stdenv.buildPlatform;
1729       crossSystem =
1730         if stdenv.buildPlatform == stdenv.hostPlatform then null else stdenv.hostPlatform;
1731     }
1732   else if stdenv.hostPlatform.isLinux then
1733     callPackage ../stdenv/linux/make-bootstrap-tools.nix {}
1734   else if stdenv.hostPlatform.isFreeBSD then
1735     callPackage ../stdenv/freebsd/make-bootstrap-tools.nix {}
1736   else throw "freshBootstrapTools: unknown hostPlatform ${stdenv.hostPlatform.config}";
1738   chars = callPackage ../tools/text/chars {
1739     inherit (darwin.apple_sdk.frameworks) Security;
1740   };
1742   crystfel = callPackage ../applications/science/physics/crystfel { };
1744   crystfel-headless = callPackage ../applications/science/physics/crystfel { withGui = false; };
1746   amule-daemon = amule.override {
1747     monolithic = false;
1748     enableDaemon = true;
1749   };
1751   amule-gui = amule.override {
1752     monolithic = false;
1753     client = true;
1754   };
1756   amule-web = amule.override {
1757     monolithic = false;
1758     httpServer = true;
1759   };
1761   apt-dater = callPackage ../tools/package-management/apt-dater {
1762     autoreconfHook = buildPackages.autoreconfHook269;
1763   };
1765   bashate = python3Packages.callPackage ../development/tools/bashate {
1766     python3Packages = python311Packages;
1767   };
1769   bisq-desktop = callPackage ../applications/blockchains/bisq-desktop { };
1771   inherit (callPackages ../tools/security/bitwarden-directory-connector { }) bitwarden-directory-connector-cli bitwarden-directory-connector;
1773   bitwarden-menu = python3Packages.callPackage ../applications/misc/bitwarden-menu { };
1775   blocksat-cli = with python3Packages; toPythonApplication blocksat-cli;
1777   botamusique = callPackage ../tools/audio/botamusique { };
1779   bucklespring = bucklespring-x11;
1780   bucklespring-libinput = callPackage ../applications/audio/bucklespring { };
1781   bucklespring-x11 = callPackage ../applications/audio/bucklespring { legacy = true; };
1783   buildbotPackages = recurseIntoAttrs (python3.pkgs.callPackage ../development/tools/continuous-integration/buildbot { });
1784   inherit (buildbotPackages) buildbot buildbot-ui buildbot-full buildbot-plugins buildbot-worker;
1786   castopod = callPackage ../applications/audio/castopod { };
1788   certipy = with python3Packages; toPythonApplication certipy-ad;
1790   catcli = python3Packages.callPackage ../tools/filesystems/catcli { };
1792   chipsec = callPackage ../tools/security/chipsec {
1793     kernel = null;
1794     withDriver = false;
1795   };
1797   fedora-backgrounds = callPackage ../data/misc/fedora-backgrounds { };
1799   coconut = with python3Packages; toPythonApplication coconut;
1801   coolreader = libsForQt5.callPackage ../applications/misc/coolreader { };
1803   corsair = with python3Packages; toPythonApplication corsair-scan;
1805   cosign = callPackage ../tools/security/cosign {
1806     inherit (darwin.apple_sdk.frameworks) PCSC;
1807   };
1809   inherit (cue) writeCueValidator;
1811   cyclonedx-gomod = callPackage ../tools/security/cyclonedx-gomod {
1812     buildGoModule = buildGo123Module;
1813   };
1815   dazel = python3Packages.callPackage ../development/tools/dazel { };
1817   detect-secrets = with python3Packages; toPythonApplication detect-secrets;
1819   deterministic-host-uname = deterministic-uname.override {
1820     forPlatform = stdenv.targetPlatform; # offset by 1 so it works in nativeBuildInputs
1821   };
1823   diskus = callPackage ../tools/misc/diskus {
1824     inherit (darwin.apple_sdk.frameworks) Security;
1825   };
1827   dkimpy = with python3Packages; toPythonApplication dkimpy;
1829   echidna = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../tools/security/echidna { });
1831   esbuild = callPackage ../development/tools/esbuild { };
1833   esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { };
1835   libfx2 = with python3Packages; toPythonApplication fx2;
1837   fastmod = callPackage ../tools/text/fastmod {
1838     inherit (darwin.apple_sdk.frameworks) Security;
1839   };
1841   flirc = libsForQt5.callPackage ../applications/video/flirc {
1842     readline = readline70;
1843   };
1845   foxdot = with python3Packages; toPythonApplication foxdot;
1847   fluffychat-web = fluffychat.override { targetFlutterPlatform = "web"; };
1849   gbl = callPackage ../tools/archivers/gbl {
1850     inherit (darwin.apple_sdk.frameworks) Security;
1851   };
1853   genpass = callPackage ../tools/security/genpass {
1854     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
1855   };
1857   gammaray = qt6Packages.callPackage ../development/tools/gammaray { };
1859   gams = callPackage ../tools/misc/gams (config.gams or {});
1861   gancioPlugins = recurseIntoAttrs (
1862     callPackage ../by-name/ga/gancio/plugins.nix { inherit (gancio) nodejs; }
1863   );
1865   github-changelog-generator = callPackage ../development/tools/github-changelog-generator { };
1867   github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite;
1869   gistyc = with python3Packages; toPythonApplication gistyc;
1871   glances = python3Packages.callPackage ../applications/system/glances { };
1873   glaxnimate = libsForQt5.callPackage ../applications/video/glaxnimate { };
1875   go2tv = darwin.apple_sdk_11_0.callPackage ../applications/video/go2tv {
1876     inherit (darwin.apple_sdk_11_0.frameworks) Carbon Cocoa Kernel UserNotifications;
1877   };
1878   go2tv-lite = go2tv.override { withGui = false; };
1880   guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { };
1882   grc = python3Packages.callPackage ../tools/misc/grc { };
1884   green-pdfviewer = callPackage ../applications/misc/green-pdfviewer {
1885     SDL = SDL_sixel;
1886   };
1888   gremlin-console = callPackage ../applications/misc/gremlin-console {
1889     openjdk = openjdk11;
1890   };
1892   gremlin-server = callPackage ../applications/misc/gremlin-server {
1893     openjdk = openjdk11;
1894   };
1896   grex = callPackage ../tools/misc/grex {
1897     inherit (darwin.apple_sdk.frameworks) Security;
1898   };
1900   hinit = haskell.lib.compose.justStaticExecutables haskellPackages.hinit;
1902   hwi = with python3Packages; toPythonApplication hwi;
1904   kavita = callPackage ../servers/web-apps/kavita { };
1906   livebook = callPackage ../servers/web-apps/livebook {
1907     elixir = elixir_1_17;
1908     beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_17; });
1909   };
1911   pass = callPackage ../tools/security/pass { };
1913   pass-nodmenu = callPackage ../tools/security/pass {
1914     dmenuSupport = false;
1915     pass = pass-nodmenu;
1916   };
1918   pass-wayland = callPackage ../tools/security/pass {
1919     waylandSupport = true;
1920     pass = pass-wayland;
1921   };
1923   passExtensions = recurseIntoAttrs pass.extensions;
1925   inherd-quake = callPackage ../applications/misc/inherd-quake {
1926     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
1927   };
1929   gopass = callPackage ../tools/security/gopass { };
1931   gopass-hibp = callPackage ../tools/security/gopass/hibp.nix { };
1933   gopass-jsonapi = callPackage ../tools/security/gopass/jsonapi.nix { };
1935   git-credential-gopass = callPackage ../tools/security/gopass/git-credential.nix { };
1937   gopass-summon-provider = callPackage ../tools/security/gopass/summon.nix { };
1939   kerf   = kerf_1; /* kerf2 is WIP */
1940   kerf_1 = callPackage ../development/interpreters/kerf {
1941     stdenv = clangStdenv;
1942     inherit (darwin.apple_sdk.frameworks)
1943       Accelerate CoreGraphics CoreVideo
1944     ;
1945   };
1947   khd = callPackage ../os-specific/darwin/khd {
1948     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
1949   };
1951   kjv = callPackage ../applications/misc/kjv { };
1953   lukesmithxyz-bible-kjv = callPackage ../applications/misc/kjv/lukesmithxyz-kjv.nix { };
1955   plausible = callPackage ../servers/web-apps/plausible {
1956     elixir = elixir_1_14;
1957     beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; });
1958   };
1960   reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace { };
1962   qes = callPackage ../os-specific/darwin/qes {
1963     inherit (darwin.apple_sdk.frameworks) Carbon;
1964   };
1966   xcodeenv = callPackage ../development/mobile/xcodeenv { };
1968   gomobile = callPackage ../development/mobile/gomobile { };
1970   titaniumenv = callPackage ../development/mobile/titaniumenv { };
1972   adb-sync = callPackage ../development/mobile/adb-sync {
1973     inherit (androidenv.androidPkgs) platform-tools;
1974   };
1976   anbox = callPackage ../os-specific/linux/anbox {
1977     protobuf = protobuf_21;
1978   };
1980   androidenv = callPackage ../development/mobile/androidenv { };
1982   androidndkPkgs = androidndkPkgs_26;
1983   androidndkPkgs_21 = (callPackage ../development/androidndk-pkgs {})."21";
1984   androidndkPkgs_23 = (callPackage ../development/androidndk-pkgs {})."23";
1985   androidndkPkgs_24 = (callPackage ../development/androidndk-pkgs {})."24";
1986   androidndkPkgs_25 = (callPackage ../development/androidndk-pkgs {})."25";
1987   androidndkPkgs_26 = (callPackage ../development/androidndk-pkgs {})."26";
1989   androidsdk = androidenv.androidPkgs.androidsdk;
1991   webos = recurseIntoAttrs {
1992     cmake-modules = callPackage ../development/mobile/webos/cmake-modules.nix { };
1994     novacom = callPackage ../development/mobile/webos/novacom.nix { };
1995     novacomd = callPackage ../development/mobile/webos/novacomd.nix { };
1996   };
1998   anevicon = callPackage ../tools/networking/anevicon {
1999     inherit (darwin.apple_sdk.frameworks) Security;
2000   };
2002   aoc-cli = callPackage ../tools/misc/aoc-cli {
2003     inherit (darwin.apple_sdk.frameworks) Security;
2004   };
2006   apprise = with python3Packages; toPythonApplication apprise;
2008   aria2 = callPackage ../tools/networking/aria2 {
2009     inherit (darwin.apple_sdk.frameworks) Security;
2010   };
2012   asmrepl = callPackage ../development/interpreters/asmrepl { };
2014   atlas = callPackage ../by-name/at/atlas/package.nix {
2015     buildGoModule = buildGo123Module;
2016   };
2018   authoscope = callPackage ../tools/security/authoscope {
2019     inherit (darwin.apple_sdk.frameworks) Security;
2020   };
2022   avahi = callPackage ../development/libraries/avahi { };
2024   avahi-compat = callPackage ../development/libraries/avahi {
2025     withLibdnssdCompat = true;
2026   };
2028   axel = callPackage ../tools/networking/axel {
2029     libssl = openssl;
2030   };
2032   bandwhich = callPackage ../tools/networking/bandwhich {
2033     inherit (darwin.apple_sdk.frameworks) Security;
2034   };
2036   base16-builder = callPackage ../misc/base16-builder { };
2038   babelfish = callPackage ../shells/fish/babelfish.nix { };
2040   badchars = python3Packages.callPackage ../tools/security/badchars { };
2042   bat-extras = recurseIntoAttrs (callPackages ../tools/misc/bat-extras { });
2044   beauty-line-icon-theme = callPackage ../data/icons/beauty-line-icon-theme {
2045     inherit (plasma5Packages) breeze-icons;
2046   };
2048   beautysh = with python3.pkgs; toPythonApplication beautysh;
2050   inherit (callPackages ../misc/logging/beats/7.x.nix { })
2051     auditbeat7
2052     filebeat7
2053     heartbeat7
2054     metricbeat7
2055     packetbeat7;
2057   auditbeat = auditbeat7;
2058   filebeat = filebeat7;
2059   heartbeat = heartbeat7;
2060   metricbeat = metricbeat7;
2061   packetbeat = packetbeat7;
2063   biliass = with python3.pkgs; toPythonApplication biliass;
2065   binwalk = with python3Packages; toPythonApplication binwalk;
2067   birdtray = libsForQt5.callPackage ../applications/misc/birdtray { };
2069   charles = charles4;
2070   inherit (callPackages ../applications/networking/charles {})
2071     charles3
2072     charles4
2073   ;
2075   quaternion-qt5 = libsForQt5.callPackage ../applications/networking/instant-messengers/quaternion { };
2076   quaternion-qt6 = qt6Packages.callPackage ../applications/networking/instant-messengers/quaternion { };
2077   quaternion = quaternion-qt6;
2079   tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
2081   libtensorflow = python3.pkgs.tensorflow.libtensorflow;
2083   libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix { };
2085   behave = with python3Packages; toPythonApplication behave;
2087   blink = darwin.apple_sdk_11_0.callPackage ../applications/emulators/blink { };
2089   blockdiag = with python3Packages; toPythonApplication blockdiag;
2091   bookstack = callPackage ../servers/web-apps/bookstack { };
2093   boomerang = libsForQt5.callPackage ../development/tools/boomerang { };
2095   bozohttpd-minimal = bozohttpd.override { minimal = true; };
2097   brasero-unwrapped = callPackage ../tools/cd-dvd/brasero { };
2099   brasero = callPackage ../tools/cd-dvd/brasero/wrapper.nix { };
2101   broot = callPackage ../tools/misc/broot {
2102     inherit (darwin.apple_sdk.frameworks) Foundation Security;
2103   };
2105   ssdfs-utils = callPackage ../tools/filesystems/ssdfs-utils { };
2107   btlejack = python3Packages.callPackage ../applications/radio/btlejack { };
2109   bsh = fetchurl {
2110     url = "http://www.beanshell.org/bsh-2.0b5.jar";
2111     hash = "sha256-YjIZlWOAc1SzvLWs6z3BNlAvAixrDvdDmHqD9m/uWlw=";
2112   };
2114   buildah = callPackage ../development/tools/buildah/wrapper.nix { };
2115   buildah-unwrapped = callPackage ../development/tools/buildah { };
2117   c3d = callPackage ../applications/graphics/c3d {
2118     inherit (darwin.apple_sdk.frameworks) Cocoa;
2119   };
2121   cabal2nix-unwrapped = haskell.lib.compose.justStaticExecutables
2122     (haskellPackages.generateOptparseApplicativeCompletions [ "cabal2nix" ] haskellPackages.cabal2nix);
2124   cabal2nix = symlinkJoin {
2125     inherit (cabal2nix-unwrapped) name meta;
2126     nativeBuildInputs = [ buildPackages.makeWrapper ];
2127     paths = [ cabal2nix-unwrapped ];
2128     postBuild = ''
2129       wrapProgram $out/bin/cabal2nix \
2130         --prefix PATH ":" "${lib.makeBinPath [ nix nix-prefetch-scripts ]}"
2131     '';
2132   };
2134   stack2nix = with haskell.lib; overrideCabal (justStaticExecutables haskellPackages.stack2nix) (_: {
2135     executableToolDepends = [ makeWrapper ];
2136     postInstall = ''
2137       wrapProgram $out/bin/stack2nix \
2138         --prefix PATH ":" "${git}/bin:${cabal-install}/bin"
2139     '';
2140   });
2142   calamares = libsForQt5.callPackage ../tools/misc/calamares {
2143     python = python3;
2144     boost = boost.override { enablePython = true; python = python3; };
2145   };
2146   calamares-nixos = lowPrio (calamares.override { nixos-extensions = true; });
2147   candle = libsForQt5.callPackage ../applications/misc/candle { };
2149   capstone = callPackage ../development/libraries/capstone { };
2150   capstone_4 = callPackage ../development/libraries/capstone/4.nix { };
2152   casync = callPackage ../applications/networking/sync/casync {
2153     sphinx = buildPackages.python3Packages.sphinx;
2154   };
2156   cataract          = callPackage ../applications/misc/cataract { };
2157   cataract-unstable = callPackage ../applications/misc/cataract/unstable.nix { };
2159   catch2 = callPackage ../development/libraries/catch2 { };
2161   catch2_3 = callPackage ../development/libraries/catch2/3.nix { };
2163   cardpeek = callPackage ../applications/misc/cardpeek { inherit (darwin.apple_sdk.frameworks) PCSC; };
2165   ceres-solver = callPackage ../development/libraries/ceres-solver {
2166     gflags = null; # only required for examples/tests
2167   };
2169   cedille = callPackage ../applications/science/logic/cedille
2170                           { inherit (haskellPackages) alex happy Agda ghcWithPackages;
2171                           };
2173   clevercsv = with python3Packages; toPythonApplication clevercsv;
2175   clickgen = with python3Packages; toPythonApplication clickgen;
2177   cloud-init = python3.pkgs.callPackage ../tools/virtualization/cloud-init { inherit systemd; };
2179   cloudflared = callPackage ../applications/networking/cloudflared {
2180     # https://github.com/cloudflare/cloudflared/issues/1151#issuecomment-1888819250
2181     buildGoModule = buildGoModule.override {
2182       go = go_1_22.overrideAttrs {
2183         pname = "cloudflare-go";
2184         version = "1.22.2-devel-cf";
2185         src = fetchFromGitHub {
2186           owner = "cloudflare";
2187           repo = "go";
2188           rev = "ec0a014545f180b0c74dfd687698657a9e86e310";
2189           sha256 = "sha256-oQQ9Jyh8TphZSCaHqaugTL7v0aeZjyOdVACz86I2KvU=";
2190         };
2191       };
2192     };
2193   };
2195   clingo = callPackage ../applications/science/logic/potassco/clingo.nix { };
2197   clingcon = callPackage ../applications/science/logic/potassco/clingcon.nix { };
2199   clprover = callPackage ../applications/science/logic/clprover/clprover.nix { };
2201   coloredlogs = with python3Packages; toPythonApplication coloredlogs;
2203   czkawka-full = czkawka.wrapper.override {
2204     extraPackages = [ ffmpeg ];
2205   };
2207   commitizen = with python3Packages; toPythonApplication commitizen;
2209   compactor = callPackage ../applications/networking/compactor {
2210     protobuf = protobuf_21;
2211   };
2213   inherit (callPackages ../tools/misc/coreboot-utils { })
2214     msrtool
2215     cbmem
2216     ifdtool
2217     intelmetool
2218     cbfstool
2219     nvramtool
2220     superiotool
2221     ectool
2222     inteltool
2223     amdfwtool
2224     acpidump-all
2225     coreboot-utils;
2227   coreboot-configurator = libsForQt5.callPackage ../tools/misc/coreboot-configurator { };
2229   sway-unwrapped = callPackage ../by-name/sw/sway-unwrapped/package.nix {
2230     wlroots = wlroots_0_18;
2231   };
2233   swaytools = python3Packages.callPackage ../tools/wayland/swaytools { };
2235   cambrinary = python3Packages.callPackage ../applications/misc/cambrinary { };
2237   cplex = callPackage ../applications/science/math/cplex (config.cplex or {});
2239   contacts = callPackage ../tools/misc/contacts {
2240     inherit (darwin.apple_sdk.frameworks) Foundation AddressBook;
2241   };
2243   colorls = callPackage ../tools/system/colorls { };
2245   coloursum = callPackage ../tools/text/coloursum {
2246     inherit (darwin.apple_sdk.frameworks) Security;
2247   };
2249   cot = with python3Packages; toPythonApplication cot;
2251   crosvm = callPackage ../applications/virtualization/crosvm { };
2253   crossplane = with python3Packages; toPythonApplication crossplane;
2255   csv2md = with python3Packages; toPythonApplication csv2md;
2257   csvtool = callPackage ../development/ocaml-modules/csv/csvtool.nix { };
2259   cutemarked-ng = libsForQt5.callPackage ../applications/office/cutemarked-ng { };
2261   dataclass-wizard = with python3Packages; toPythonApplication dataclass-wizard;
2263   datasette = with python3Packages; toPythonApplication datasette;
2265   datovka = libsForQt5.callPackage ../applications/networking/datovka { };
2267   diagrams-builder = callPackage ../tools/graphics/diagrams-builder {
2268     inherit (haskellPackages) ghcWithPackages diagrams-builder;
2269   };
2271   dialogbox = libsForQt5.callPackage ../tools/misc/dialogbox { };
2273   dijo = callPackage ../tools/misc/dijo {
2274     inherit (darwin.apple_sdk.frameworks) CoreServices;
2275   };
2277   ding = callPackage ../applications/misc/ding {
2278     aspellDicts_de = aspellDicts.de;
2279     aspellDicts_en = aspellDicts.en;
2280   };
2282   h = callPackage ../tools/misc/h { };
2284   discourse = callPackage ../servers/web-apps/discourse { };
2286   discourseAllPlugins = discourse.override {
2287     plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins);
2288   };
2290   disorderfs = callPackage ../tools/filesystems/disorderfs {
2291     asciidoc = asciidoc-full;
2292   };
2294   dino = callPackage ../applications/networking/instant-messengers/dino {
2295     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-bad gst-vaapi;
2296     gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
2297   };
2299   dnschef = python3Packages.callPackage ../tools/networking/dnschef { };
2301   dotenv-linter = callPackage ../development/tools/analysis/dotenv-linter {
2302     inherit (darwin.apple_sdk.frameworks) Security;
2303   };
2305   inherit (ocamlPackages) dot-merlin-reader;
2307   inherit (ocaml-ng.ocamlPackages_4_10) dune_1;
2308   inherit (ocamlPackages) dune_2 dune_3 dune-release;
2310   dvc = with python3.pkgs; toPythonApplication dvc;
2312   dvc-with-remotes = dvc.override {
2313     enableGoogle = true;
2314     enableAWS = true;
2315     enableAzure = true;
2316     enableSSH = true;
2317   };
2319   easyabc = callPackage ../applications/audio/easyabc { };
2321   easyaudiosync = qt6Packages.callPackage ../applications/audio/easyaudiosync {};
2323   easycrypt = callPackage ../applications/science/logic/easycrypt {
2324     why3 = pkgs.why3.override { ideSupport = false; };
2325   };
2327   easycrypt-runtest = callPackage ../applications/science/logic/easycrypt/runtest.nix { };
2329   easyocr = with python3.pkgs; toPythonApplication easyocr;
2331   eddy = libsForQt5.callPackage ../applications/graphics/eddy { };
2333   electronplayer = callPackage ../applications/video/electronplayer/electronplayer.nix { };
2335   element-desktop = callPackage ../applications/networking/instant-messengers/element/element-desktop.nix {
2336     inherit (darwin.apple_sdk.frameworks) Security AppKit CoreServices;
2337     electron = electron_32;
2338   };
2339   element-desktop-wayland = writeScriptBin "element-desktop" ''
2340     #!/bin/sh
2341     NIXOS_OZONE_WL=1 exec ${element-desktop}/bin/element-desktop "$@"
2342   '';
2344   element-web-unwrapped = callPackage ../applications/networking/instant-messengers/element/element-web.nix { };
2346   element-web = callPackage ../applications/networking/instant-messengers/element/element-web-wrapper.nix {
2347     conf = config.element-web.conf or { };
2348   };
2350   elm-github-install = callPackage ../tools/package-management/elm-github-install { };
2352   espanso-wayland = espanso.override {
2353     x11Support = false;
2354     waylandSupport = true;
2355     espanso = espanso-wayland;
2356   };
2358   esphome = callPackage ../tools/misc/esphome { };
2360   fastly = callPackage ../misc/fastly {
2361     # If buildGoModule is overridden, provide a matching version of the go attribute
2362   };
2364   f3d = callPackage ../applications/graphics/f3d {
2365     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
2366   };
2368   f3d_egl = f3d.override { vtk_9 = vtk_9_egl; };
2370   fast-cli = nodePackages.fast-cli;
2372   fast-ssh = callPackage ../tools/networking/fast-ssh {
2373     inherit (darwin.apple_sdk.frameworks) Security;
2374   };
2376   fdroidcl = pkgs.callPackage ../development/mobile/fdroidcl { };
2378   fedimint = callPackage ../by-name/fe/fedimint/package.nix {
2379     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
2380   };
2382   flowgger = callPackage ../tools/misc/flowgger {
2383     inherit (darwin.apple_sdk.frameworks) CoreServices;
2384   };
2386   ### TOOLS/TYPESETTING/TEX
2388   advi = callPackage ../tools/typesetting/tex/advi {
2389     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
2390   };
2392   dblatexFull = dblatex.override { enableAllFeatures = true; };
2394   latex2mathml = with python3Packages; toPythonApplication latex2mathml;
2396   pgf = pgf2;
2398   tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; };
2400   texFunctions = callPackage ../tools/typesetting/tex/nix pkgs;
2402   # TeX Live; see https://nixos.org/nixpkgs/manual/#sec-language-texlive
2403   texlive = callPackage ../tools/typesetting/tex/texlive { };
2404   inherit (texlive.schemes) texliveBasic texliveBookPub texliveConTeXt texliveFull texliveGUST texliveInfraOnly texliveMedium texliveMinimal texliveSmall texliveTeTeX;
2405   texlivePackages = recurseIntoAttrs (lib.mapAttrs (_: v: v.build) texlive.pkgs);
2407   fondu = callPackage ../tools/misc/fondu {
2408     inherit (darwin.apple_sdk.frameworks) CoreServices;
2409   };
2411   futhark = haskell.lib.compose.justStaticExecutables haskellPackages.futhark;
2413   qt-video-wlr = libsForQt5.callPackage ../applications/misc/qt-video-wlr { };
2415   fwup = callPackage ../tools/misc/fwup {
2416     inherit (darwin.apple_sdk.frameworks) DiskArbitration;
2417   };
2419   g2o = libsForQt5.callPackage ../development/libraries/g2o { };
2421   inherit (go-containerregistry) crane gcrane;
2423   geckodriver = callPackage ../development/tools/geckodriver {
2424     inherit (darwin.apple_sdk.frameworks) Security;
2425   };
2427   geekbench_4 = callPackage ../tools/misc/geekbench/4.nix { };
2428   geekbench_5 = callPackage ../tools/misc/geekbench/5.nix { };
2429   geekbench_6 = callPackage ../tools/misc/geekbench/6.nix { };
2430   geekbench = geekbench_6;
2432   ghidra = darwin.apple_sdk_11_0.callPackage ../tools/security/ghidra/build.nix {
2433     protobuf = protobuf_21;
2434   };
2436   ghidra-extensions = recurseIntoAttrs (callPackage ../tools/security/ghidra/extensions.nix { });
2438   ghidra-bin = callPackage ../tools/security/ghidra { };
2440   glslviewer = callPackage ../development/tools/glslviewer {
2441     inherit (darwin.apple_sdk.frameworks) Cocoa;
2442   };
2444   gpg-tui = callPackage ../tools/security/gpg-tui {
2445     inherit (darwin.apple_sdk.frameworks) AppKit Foundation;
2446     inherit (darwin) libobjc libresolv;
2447   };
2449   gping = callPackage ../tools/networking/gping {
2450     inherit (darwin.apple_sdk.frameworks) Security;
2451   };
2453   greg = callPackage ../applications/audio/greg {
2454     pythonPackages = python3Packages;
2455   };
2457   grype = callPackage ../by-name/gr/grype/package.nix {
2458     buildGoModule = buildGo123Module;
2459   };
2461   hiksink = callPackage ../tools/misc/hiksink {
2462     inherit (darwin.apple_sdk.frameworks) Security;
2463   };
2465   hocr-tools = with python3Packages; toPythonApplication hocr-tools;
2467   homepage-dashboard = callPackage ../servers/homepage-dashboard {
2468     inherit (darwin.apple_sdk.frameworks) IOKit;
2469   };
2471   hopper = qt5.callPackage ../development/tools/analysis/hopper { };
2473   hypr = callPackage ../applications/window-managers/hyprwm/hypr {
2474     cairo = cairo.override { xcbSupport = true; };  };
2476   hyprland = callPackage ../by-name/hy/hyprland/package.nix {
2477     stdenv = gcc14Stdenv;
2478   };
2480   hyprpolkitagent = callPackage ../by-name/hy/hyprpolkitagent/package.nix {
2481     stdenv = gcc14Stdenv;
2482   };
2484   hyprshade = python311Packages.callPackage ../applications/window-managers/hyprwm/hyprshade { };
2486   hyprlandPlugins = recurseIntoAttrs (callPackage ../applications/window-managers/hyprwm/hyprland-plugins { });
2488   intensity-normalization = with python3Packages; toPythonApplication intensity-normalization;
2490   jellyfin-media-player = libsForQt5.callPackage ../applications/video/jellyfin-media-player {
2491     inherit (darwin.apple_sdk.frameworks) CoreFoundation Cocoa CoreAudio MediaPlayer;
2492   };
2494   jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { };
2496   jellyseerr = callPackage ../servers/jellyseerr { };
2498   juce = callPackage ../development/misc/juce {
2499     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
2500   };
2502   jwt-cli = callPackage ../tools/security/jwt-cli {
2503     inherit (darwin.apple_sdk.frameworks) Security;
2504   };
2506   kaldi = callPackage ../tools/audio/kaldi {
2507     inherit (darwin.apple_sdk.frameworks) Accelerate;
2508   };
2510   klaus = with python3Packages; toPythonApplication klaus;
2512   klipper = callPackage ../servers/klipper { };
2514   klipper-firmware = callPackage ../servers/klipper/klipper-firmware.nix { gcc-arm-embedded = gcc-arm-embedded-13; };
2516   klipper-flash = callPackage ../servers/klipper/klipper-flash.nix { };
2518   klipper-genconf = callPackage ../servers/klipper/klipper-genconf.nix { };
2520   klipper-estimator = callPackage ../applications/misc/klipper-estimator {
2521     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
2522   };
2524   klog = qt5.callPackage ../applications/radio/klog { };
2526   krill = callPackage ../servers/krill {
2527     inherit (darwin.apple_sdk.frameworks) Security;
2528   };
2530   lapce = callPackage ../applications/editors/lapce {
2531     inherit (darwin) libobjc;
2532   };
2534   languagetool-rust = callPackage ../tools/text/languagetool-rust {
2535     inherit (darwin.apple_sdk.frameworks) Security;
2536   };
2538   lexicon = with python3Packages; toPythonApplication dns-lexicon;
2540   lief = callPackage ../development/libraries/lief {
2541     python = python3;
2542   };
2544   lite-xl = callPackage ../applications/editors/lite-xl {
2545     inherit (darwin.apple_sdk.frameworks) Foundation;
2546   };
2548   # Less secure variant of lowdown for use inside Nix builds.
2549   lowdown-unsandboxed = lowdown.override {
2550     enableDarwinSandbox = false;
2551   };
2553   kaggle = with python3Packages; toPythonApplication kaggle;
2555   maigret = callPackage ../tools/security/maigret { };
2557   maliit-framework = libsForQt5.callPackage ../applications/misc/maliit-framework { };
2559   maliit-keyboard = libsForQt5.callPackage ../applications/misc/maliit-keyboard { };
2561   maple-mono = (callPackage ../data/fonts/maple-font { }).Mono;
2562   maple-mono-NF = (callPackage ../data/fonts/maple-font { }).NF;
2563   maple-mono-SC-NF = (callPackage ../data/fonts/maple-font { }).SC-NF;
2564   maple-mono-otf = (callPackage ../data/fonts/maple-font { }).opentype;
2565   maple-mono-woff2 = (callPackage ../data/fonts/maple-font { }).woff2;
2566   maple-mono-autohint = (callPackage ../data/fonts/maple-font { }).autohint;
2568   mat2 = with python3.pkgs; toPythonApplication mat2;
2570   materialx = with python3Packages; toPythonApplication materialx;
2572   megasync = libsForQt5.callPackage ../applications/misc/megasync { };
2574   # while building documentation meson may want to run binaries for host
2575   # which needs an emulator
2576   # example of an error which this fixes
2577   # [Errno 8] Exec format error: './gdk3-scan'
2578   mesonEmulatorHook =
2579     makeSetupHook
2580       {
2581         name = "mesonEmulatorHook";
2582         substitutions = {
2583           crossFile = writeText "cross-file.conf" ''
2584               [binaries]
2585               exe_wrapper = '${lib.escape [ "'" "\\" ] (stdenv.targetPlatform.emulator pkgs)}'
2586             '';
2587         };
2588       }
2589       # The throw is moved into the `makeSetupHook` derivation, so that its
2590       # outer level, but not its outPath can still be evaluated if the condition
2591       # doesn't hold. This ensures that splicing still can work correctly.
2592       (if (!stdenv.hostPlatform.canExecute stdenv.targetPlatform) then
2593         ../by-name/me/meson/emulator-hook.sh
2594        else
2595          throw "mesonEmulatorHook may only be added to nativeBuildInputs when the target binaries can't be executed; however you are attempting to use it in a situation where ${stdenv.hostPlatform.config} can execute ${stdenv.targetPlatform.config}. Consider only adding mesonEmulatorHook according to a conditional based canExecute in your package expression.");
2597   metabase = callPackage ../servers/metabase {
2598     jdk11 = jdk11_headless;
2599   };
2601   micropad = callPackage ../applications/office/micropad {
2602     electron = electron_27;
2603   };
2605   mkspiffs = callPackage ../tools/filesystems/mkspiffs { };
2607   mkspiffs-presets = recurseIntoAttrs (callPackages ../tools/filesystems/mkspiffs/presets.nix { });
2609   mobilizon = callPackage ../servers/mobilizon {
2610     elixir = elixir_1_15;
2611     beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_15; });
2612     mobilizon-frontend = callPackage ../servers/mobilizon/frontend.nix { };
2613   };
2615   monado = callPackage ../by-name/mo/monado/package.nix {
2616     inherit (gst_all_1) gstreamer gst-plugins-base;
2617   };
2619   mpdcron = callPackage ../tools/audio/mpdcron { };
2621   mpd-sima = python3Packages.callPackage ../tools/audio/mpd-sima { };
2623   nix-output-monitor = callPackage ../tools/nix/nix-output-monitor { };
2625   nix-template = callPackage ../tools/package-management/nix-template {
2626     inherit (darwin.apple_sdk.frameworks) Security;
2627   };
2629   nltk-data = callPackage ../tools/text/nltk-data { };
2631   seabios-coreboot = seabios.override { ___build-type = "coreboot"; };
2632   seabios-csm = seabios.override { ___build-type = "csm"; };
2633   seabios-qemu = seabios.override { ___build-type = "qemu"; };
2635   seaborn-data = callPackage ../tools/misc/seaborn-data { };
2637   nodepy-runtime = with python3.pkgs; toPythonApplication nodepy-runtime;
2639   nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools;
2641   noti = callPackage ../tools/misc/noti {
2642     inherit (darwin.apple_sdk.frameworks) Cocoa;
2643   };
2645   nsz = with python3.pkgs; toPythonApplication nsz;
2647   ocrmypdf = with python3.pkgs; toPythonApplication ocrmypdf;
2649   online-judge-template-generator = python3Packages.callPackage ../tools/misc/online-judge-template-generator { };
2651   online-judge-tools = with python3.pkgs; toPythonApplication online-judge-tools;
2653   onnxruntime = callPackage ../development/libraries/onnxruntime {
2654     inherit (darwin.apple_sdk.frameworks) Foundation;
2655   };
2657   ockam = callPackage ../tools/networking/ockam {
2658     inherit (darwin.apple_sdk.frameworks) AppKit Security;
2659   };
2661   odafileconverter = libsForQt5.callPackage ../applications/graphics/odafileconverter { };
2663   pastel = callPackage ../applications/misc/pastel {
2664     inherit (darwin.apple_sdk.frameworks) Security;
2665   };
2667   inherit (ocamlPackages) patdiff;
2669   patool = with python3Packages; toPythonApplication patool;
2671   pocket-casts = callPackage ../applications/audio/pocket-casts {
2672     electron = electron_31;
2673   };
2675   pueue = darwin.apple_sdk_11_0.callPackage ../applications/misc/pueue {
2676     inherit (darwin.apple_sdk_11_0) Libsystem;
2677     inherit (darwin.apple_sdk_11_0.frameworks) SystemConfiguration;
2678   };
2680   pixcat = with python3Packages; toPythonApplication pixcat;
2682   pyznap = python3Packages.callPackage ../tools/backup/pyznap { };
2684   procs = darwin.apple_sdk_11_0.callPackage ../tools/admin/procs {
2685     inherit (darwin.apple_sdk_11_0.frameworks) Security;
2686     inherit (darwin.apple_sdk_11_0) Libsystem;
2687   };
2689   psrecord = python3Packages.callPackage ../tools/misc/psrecord { };
2691   rare = python3Packages.callPackage ../games/rare { };
2693   rblake2sum = callPackage ../tools/security/rblake2sum {
2694       inherit (darwin.apple_sdk.frameworks) Security;
2695   };
2697   rblake3sum = callPackage ../tools/security/rblake3sum {
2698       inherit (darwin.apple_sdk.frameworks) Security;
2699   };
2701   rmview = libsForQt5.callPackage ../applications/misc/remarkable/rmview { };
2703   remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { };
2705   ropgadget = with python3Packages; toPythonApplication ropgadget;
2707   scour = with python3Packages; toPythonApplication scour;
2709   sheldon = callPackage ../tools/misc/sheldon {
2710     inherit (darwin.apple_sdk.frameworks) Security;
2711   };
2713   sheesy-cli = callPackage ../tools/security/sheesy-cli {
2714     inherit (darwin.apple_sdk.frameworks) Security;
2715   };
2717   steampipePackages = recurseIntoAttrs (
2718     callPackage ../tools/misc/steampipe-packages { }
2719   );
2721   swappy = callPackage ../applications/misc/swappy { gtk = gtk3; };
2723   synth = callPackage ../tools/misc/synth {
2724     inherit (darwin.apple_sdk.frameworks) AppKit Security;
2725   };
2727   inherit (callPackages ../servers/rainloop { })
2728     rainloop-community
2729     rainloop-standard;
2731   razergenie = libsForQt5.callPackage ../applications/misc/razergenie { };
2733   ripasso-cursive = callPackage ../tools/security/ripasso/cursive.nix {
2734     inherit (darwin.apple_sdk.frameworks) AppKit Security;
2735   };
2737   roundcube = callPackage ../servers/roundcube { };
2739   roundcubePlugins = dontRecurseIntoAttrs (callPackage ../servers/roundcube/plugins { });
2741   rsyslog = callPackage ../tools/system/rsyslog {
2742     withHadoop = false; # Currently Broken
2743     withKsi = false; # Currently Broken
2744   };
2746   rsyslog-light = rsyslog.override {
2747     withKrb5 = false;
2748     withSystemd = false;
2749     withJemalloc = false;
2750     withMysql = false;
2751     withPostgres = false;
2752     withDbi = false;
2753     withNetSnmp = false;
2754     withUuid = false;
2755     withCurl = false;
2756     withGnutls = false;
2757     withGcrypt = false;
2758     withLognorm = false;
2759     withMaxminddb = false;
2760     withOpenssl = false;
2761     withRelp = false;
2762     withKsi = false;
2763     withLogging = false;
2764     withNet = false;
2765     withHadoop = false;
2766     withRdkafka = false;
2767     withMongo = false;
2768     withCzmq = false;
2769     withRabbitmq = false;
2770     withHiredis = false;
2771   };
2773   rtrtr = callPackage ../servers/rtrtr {
2774     inherit (darwin.apple_sdk.frameworks) Security;
2775   };
2777   xmlsort = perlPackages.XMLFilterSort;
2779   mcelog = callPackage ../os-specific/linux/mcelog {
2780     util-linux = util-linuxMinimal;
2781   };
2783   sqlint = callPackage ../development/tools/sqlint { };
2785   apc-temp-fetch = with python3.pkgs; callPackage ../tools/networking/apc-temp-fetch { };
2787   asciidoc = callPackage ../tools/typesetting/asciidoc {
2788     inherit (python3.pkgs) pygments matplotlib numpy aafigure recursive-pth-loader;
2789     w3m = w3m-batch;
2790     enableStandardFeatures = false;
2791   };
2793   asciidoc-full = asciidoc.override {
2794     enableStandardFeatures = true;
2795   };
2797   asciidoc-full-with-plugins = asciidoc.override {
2798     enableStandardFeatures = true;
2799     enableExtraPlugins = true;
2800   };
2802   asciidoctor = callPackage ../tools/typesetting/asciidoctor { };
2804   asciidoctor-with-extensions = callPackage ../tools/typesetting/asciidoctor-with-extensions { };
2806   b2sum = callPackage ../tools/security/b2sum {
2807     inherit (llvmPackages) openmp;
2808   };
2810   bacula = callPackage ../tools/backup/bacula {
2811     inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit Kerberos;
2812   };
2814   beamerpresenter = beamerpresenter-mupdf;
2816   beamerpresenter-mupdf = qt6Packages.callPackage ../applications/office/beamerpresenter {
2817     useMupdf = true;
2818     usePoppler = false;
2819   };
2821   beamerpresenter-poppler = qt6Packages.callPackage ../applications/office/beamerpresenter {
2822     useMupdf = false;
2823     usePoppler = true;
2824   };
2826   beetsPackages = lib.recurseIntoAttrs (callPackage ../tools/audio/beets { });
2827   inherit (beetsPackages) beets beets-unstable;
2829   biber-for-tectonic = callPackage ../tools/typesetting/tectonic/biber.nix { };
2831   binlore = callPackage ../development/tools/analysis/binlore { };
2833   birdfont = callPackage ../tools/misc/birdfont { };
2834   xmlbird = callPackage ../tools/misc/birdfont/xmlbird.nix { stdenv = gccStdenv; };
2836   bmrsa = callPackage ../tools/security/bmrsa/11.nix { };
2838   bupstash = darwin.apple_sdk_11_0.callPackage ../tools/backup/bupstash { };
2840   anystyle-cli = callPackage ../tools/misc/anystyle-cli { };
2842   bzip2 = callPackage ../tools/compression/bzip2 { };
2844   bzip2_1_1 = callPackage ../tools/compression/bzip2/1_1.nix { };
2846   bzip3 = callPackage ../tools/compression/bzip3 {
2847     stdenv = clangStdenv;
2848   };
2850   davix = callPackage ../tools/networking/davix {
2851     inherit (darwin.apple_sdk.frameworks) Security;
2852   };
2854   davix-copy = davix.override { enableThirdPartyCopy = true; };
2856   cdist = python3Packages.callPackage ../tools/admin/cdist { };
2858   cdrdao = callPackage ../tools/cd-dvd/cdrdao {
2859     inherit (darwin.apple_sdk.frameworks) CoreServices IOKit;
2860   };
2862   cdrtools = callPackage ../tools/cd-dvd/cdrtools {
2863     stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_14.stdenv else stdenv;
2864     inherit (darwin.apple_sdk.frameworks) Carbon IOKit;
2865   };
2867   cemu-ti = qt5.callPackage ../applications/science/math/cemu-ti { };
2869   libceph = ceph.lib;
2870   inherit (callPackages ../tools/filesystems/ceph {
2871     lua = lua5_4; # Ceph currently requires >= 5.3
2873     # To see which `fmt` version Ceph upstream recommends, check its `src/fmt` submodule.
2874     #
2875     # Ceph does not currently build with `fmt_10`; see https://github.com/NixOS/nixpkgs/issues/281027#issuecomment-1899128557
2876     # If we want to switch for that before upstream fixes it, use this patch:
2877     # https://github.com/NixOS/nixpkgs/pull/281858#issuecomment-1899648638
2878     fmt = fmt_9;
2879   })
2880     ceph
2881     ceph-client;
2882   ceph-dev = ceph;
2884   clementine = libsForQt5.callPackage ../applications/audio/clementine {
2885     gst_plugins =
2886       with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-ugly gst-libav ];
2887     protobuf = protobuf_21;
2888   };
2890   mellowplayer = libsForQt5.callPackage ../applications/audio/mellowplayer { };
2892   circus = with python310Packages; toPythonApplication circus;
2894   inherit (callPackage ../applications/networking/remote/citrix-workspace { })
2895     citrix_workspace_23_09_0
2896     citrix_workspace_23_11_0
2897     citrix_workspace_24_02_0
2898     citrix_workspace_24_05_0
2899   ;
2900   citrix_workspace = citrix_workspace_24_05_0;
2902   cmst = libsForQt5.callPackage ../tools/networking/cmst { };
2904   colord-gtk4 = colord-gtk.override { withGtk4 = true; };
2906   connmanFull = connman.override {
2907     # TODO: Why is this in `connmanFull` and not the default build? See TODO in
2908     # nixos/modules/services/networking/connman.nix (near the assertions)
2909     enableNetworkManagerCompatibility = true;
2910     enableHh2serialGps = true;
2911     enableL2tp = true;
2912     enableIospm = true;
2913     enableTist = true;
2914   };
2916   connmanMinimal = connman.override {
2917     # enableDatafiles = false; # If disabled, configuration and data files are not installed
2918     # enableEthernet = false; # If disabled no ethernet connection can be performed
2919     # enableWifi = false; # If disabled no WiFi connection can be performed
2920     enableBluetooth = false;
2921     enableClient = false;
2922     enableDundee = false;
2923     enableGadget = false;
2924     enableLoopback = false;
2925     enableNeard = false;
2926     enableOfono = false;
2927     enableOpenconnect = false;
2928     enableOpenvpn = false;
2929     enablePacrunner = false;
2930     enablePolkit = false;
2931     enablePptp = false;
2932     enableStats = false;
2933     enableTools = false;
2934     enableVpnc = false;
2935     enableWireguard = false;
2936     enableWispr = false;
2937   };
2939   collectd = callPackage ../tools/system/collectd {
2940     inherit (darwin.apple_sdk.frameworks) IOKit;
2941   };
2943   collectd-data = callPackage ../tools/system/collectd/data.nix { };
2945   unify = with python3Packages; toPythonApplication unify;
2947   inherit (nodePackages) uppy-companion;
2949   usb-modeswitch = callPackage ../development/tools/misc/usb-modeswitch { };
2950   usb-modeswitch-data = callPackage ../development/tools/misc/usb-modeswitch/data.nix { };
2952   persistent-evdev = python3Packages.callPackage ../servers/persistent-evdev { };
2954   twitch-tui = callPackage ../applications/networking/instant-messengers/twitch-tui {
2955     inherit (darwin.apple_sdk_11_0.frameworks) Security CoreServices SystemConfiguration;
2956   };
2958   inherit (import ../development/libraries/libsbsms pkgs)
2959     libsbsms
2960     libsbsms_2_0_2
2961     libsbsms_2_3_0
2962   ;
2964   m17n_lib = callPackage ../tools/inputmethods/m17n-lib { };
2966   libotf = callPackage ../tools/inputmethods/m17n-lib/otf.nix { };
2968   netbird = callPackage ../tools/networking/netbird {
2969     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa IOKit Kernel UserNotifications WebKit;
2970     buildGoModule = buildGo123Module;
2971   };
2973   netbird-ui = netbird.override {
2974     ui = true;
2975   };
2977   skkDictionaries = callPackages ../tools/inputmethods/skk/skk-dicts { };
2979   ibus = callPackage ../tools/inputmethods/ibus { };
2981   ibus-engines = recurseIntoAttrs {
2982     anthy = callPackage ../tools/inputmethods/ibus-engines/ibus-anthy { };
2984     bamboo = callPackage ../tools/inputmethods/ibus-engines/ibus-bamboo { };
2986     cangjie = callPackage ../tools/inputmethods/ibus-engines/ibus-cangjie { };
2988     hangul = callPackage ../tools/inputmethods/ibus-engines/ibus-hangul { };
2990     kkc = callPackage ../tools/inputmethods/ibus-engines/ibus-kkc { };
2992     libpinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-libpinyin { };
2994     libthai = callPackage ../tools/inputmethods/ibus-engines/ibus-libthai { };
2996     m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { };
2998     inherit mozc mozc-ut;
3000     openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard { withIbusSupport = true; };
3002     pinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-pinyin { };
3004     rime = callPackage ../tools/inputmethods/ibus-engines/ibus-rime { };
3006     table = callPackage ../tools/inputmethods/ibus-engines/ibus-table { };
3008     table-chinese = callPackage ../tools/inputmethods/ibus-engines/ibus-table-chinese {
3009       ibus-table = ibus-engines.table;
3010     };
3012     table-others = callPackage ../tools/inputmethods/ibus-engines/ibus-table-others {
3013       ibus-table = ibus-engines.table;
3014     };
3016     uniemoji = callPackage ../tools/inputmethods/ibus-engines/ibus-uniemoji { };
3018     typing-booster-unwrapped = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster { };
3020     typing-booster = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster/wrapper.nix {
3021       typing-booster = ibus-engines.typing-booster-unwrapped;
3022     };
3023   };
3025   ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix { };
3027   interception-tools = callPackage ../tools/inputmethods/interception-tools { };
3028   interception-tools-plugins = recurseIntoAttrs {
3029     caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { };
3030     dual-function-keys = callPackage ../tools/inputmethods/interception-tools/dual-function-keys.nix { };
3031   };
3033   age-plugin-ledger = callPackage ../tools/security/age-plugin-ledger {
3034     inherit (darwin.apple_sdk.frameworks) AppKit;
3035   };
3037   blacken-docs = with python3Packages; toPythonApplication blacken-docs;
3039   bore = callPackage ../tools/networking/bore {
3040     inherit (darwin) Libsystem;
3041     inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
3042   };
3044   bluetooth_battery = python3Packages.callPackage ../applications/misc/bluetooth_battery { };
3046   calyx-vpn = libsForQt5.callPackage ../tools/networking/bitmask-vpn {
3047     provider = "calyx";
3048     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
3049   };
3051   cask-server = libsForQt5.callPackage ../applications/misc/cask-server { };
3053   code-browser-qt = libsForQt5.callPackage ../applications/editors/code-browser { withQt = true; };
3054   code-browser-gtk2 = callPackage ../applications/editors/code-browser { withGtk2 = true; };
3055   code-browser-gtk = callPackage ../applications/editors/code-browser { withGtk3 = true; };
3057   cffconvert = python3Packages.toPythonApplication python3Packages.cffconvert;
3059   chafa = callPackage ../tools/misc/chafa {
3060     inherit (darwin.apple_sdk.frameworks) Foundation;
3061   };
3063   ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { };
3065   clamav = callPackage ../tools/security/clamav {
3066     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
3067     inherit (darwin.apple_sdk_11_0.frameworks) Foundation;
3068   };
3070   cmdpack = callPackages ../tools/misc/cmdpack { };
3072   cobalt = callPackage ../applications/misc/cobalt {
3073     inherit (darwin.apple_sdk.frameworks) CoreServices;
3074   };
3076   cobang = python311Packages.callPackage ../applications/misc/cobang {
3077     gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
3078   };
3080   cocoapods = callPackage ../development/tools/cocoapods { };
3082   cocoapods-beta = lowPrio (callPackage ../development/tools/cocoapods { beta = true; });
3084   cocom = callPackage ../tools/networking/cocom {
3085     inherit (darwin.apple_sdk.frameworks) Security;
3086   };
3088   compass = callPackage ../development/tools/compass { };
3090   cone = callPackage ../development/compilers/cone {
3091     llvmPackages = llvmPackages_13;
3092   };
3094   coreutils =  callPackage ../tools/misc/coreutils { };
3096   # The coreutils above are built with dependencies from
3097   # bootstrapping. We cannot override it here, because that pulls in
3098   # openssl from the previous stage as well.
3099   coreutils-full = callPackage ../tools/misc/coreutils { minimal = false; };
3100   coreutils-prefixed = coreutils.override { withPrefix = true; singleBinary = false; };
3102   create-cycle-app = nodePackages.create-cycle-app;
3104   cron = isc-cron;
3106   cudaPackages_10_0 = callPackage ./cuda-packages.nix { cudaVersion = "10.0"; };
3107   cudaPackages_10_1 = callPackage ./cuda-packages.nix { cudaVersion = "10.1"; };
3108   cudaPackages_10_2 = callPackage ./cuda-packages.nix { cudaVersion = "10.2"; };
3109   cudaPackages_10 = recurseIntoAttrs cudaPackages_10_2;
3111   cudaPackages_11_0 = callPackage ./cuda-packages.nix { cudaVersion = "11.0"; };
3112   cudaPackages_11_1 = callPackage ./cuda-packages.nix { cudaVersion = "11.1"; };
3113   cudaPackages_11_2 = callPackage ./cuda-packages.nix { cudaVersion = "11.2"; };
3114   cudaPackages_11_3 = callPackage ./cuda-packages.nix { cudaVersion = "11.3"; };
3115   cudaPackages_11_4 = callPackage ./cuda-packages.nix { cudaVersion = "11.4"; };
3116   cudaPackages_11_5 = callPackage ./cuda-packages.nix { cudaVersion = "11.5"; };
3117   cudaPackages_11_6 = callPackage ./cuda-packages.nix { cudaVersion = "11.6"; };
3118   cudaPackages_11_7 = callPackage ./cuda-packages.nix { cudaVersion = "11.7"; };
3119   cudaPackages_11_8 = callPackage ./cuda-packages.nix { cudaVersion = "11.8"; };
3120   cudaPackages_11 = recurseIntoAttrs cudaPackages_11_8;
3122   cudaPackages_12_0 = callPackage ./cuda-packages.nix { cudaVersion = "12.0"; };
3123   cudaPackages_12_1 = callPackage ./cuda-packages.nix { cudaVersion = "12.1"; };
3124   cudaPackages_12_2 = callPackage ./cuda-packages.nix { cudaVersion = "12.2"; };
3125   cudaPackages_12_3 = callPackage ./cuda-packages.nix { cudaVersion = "12.3"; };
3126   cudaPackages_12_4 = callPackage ./cuda-packages.nix { cudaVersion = "12.4"; };
3127   cudaPackages_12 = cudaPackages_12_4; # Latest supported by cudnn
3129   cudaPackages = recurseIntoAttrs cudaPackages_12;
3131   # TODO: move to alias
3132   cudatoolkit = cudaPackages.cudatoolkit;
3133   cudatoolkit_11 = cudaPackages_11.cudatoolkit;
3135   curlFull = curl.override {
3136     ldapSupport = true;
3137     gsaslSupport = true;
3138     rtmpSupport = true;
3139     pslSupport = true;
3140     websocketSupport = true;
3141   };
3143   curlHTTP3 = curl.override {
3144     openssl = quictls;
3145     http3Support = true;
3146   };
3148   curl = curlMinimal.override ({
3149     idnSupport = true;
3150     pslSupport = true;
3151     zstdSupport = true;
3152   } // lib.optionalAttrs (!stdenv.hostPlatform.isStatic) {
3153     brotliSupport = true;
3154   });
3156   curlWithGnuTls = curl.override { gnutlsSupport = true; opensslSupport = false; };
3158   curl-impersonate = darwin.apple_sdk_11_0.callPackage ../tools/networking/curl-impersonate { };
3159   curl-impersonate-ff = curl-impersonate.curl-impersonate-ff;
3160   curl-impersonate-chrome = curl-impersonate.curl-impersonate-chrome;
3162   cve-bin-tool = python3Packages.callPackage ../tools/security/cve-bin-tool { };
3164   danger-gitlab = callPackage ../applications/version-management/danger-gitlab { };
3166   dar = callPackage ../tools/backup/dar {
3167     inherit (darwin.apple_sdk.frameworks) CoreFoundation;
3168   };
3170   dconf2nix = callPackage ../development/tools/haskell/dconf2nix { };
3172   devilspie2 = callPackage ../applications/misc/devilspie2 {
3173     gtk = gtk3;
3174   };
3176   ddcui = libsForQt5.callPackage ../applications/misc/ddcui { };
3178   inherit (callPackages ../applications/networking/p2p/deluge { })
3179     deluge-gtk
3180     deluged
3181     deluge;
3183   deluge-2_x = deluge;
3185   dnsviz = python3Packages.callPackage ../tools/networking/dnsviz { };
3187   diffoscope = callPackage ../tools/misc/diffoscope {
3188     jdk = jdk8;
3189   };
3191   diffoscopeMinimal = diffoscope.override {
3192     enableBloat = false;
3193   };
3195   diffr = callPackage ../tools/text/diffr {
3196     inherit (darwin.apple_sdk.frameworks) Security;
3197   };
3199   diffutils = callPackage ../tools/text/diffutils { };
3201   dmd = callPackage ../by-name/dm/dmd/package.nix ({
3202     inherit (darwin.apple_sdk.frameworks) Foundation;
3203   } // lib.optionalAttrs stdenv.hostPlatform.isLinux {
3204     # https://github.com/NixOS/nixpkgs/pull/206907#issuecomment-1527034123
3205     stdenv = gcc11Stdenv;
3206   });
3208   dogdns = callPackage ../tools/networking/dogdns {
3209     inherit (darwin.apple_sdk.frameworks) Security;
3210   };
3212   dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { };
3214   dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { };
3216   sl1-to-photon = python3Packages.callPackage ../applications/misc/sl1-to-photon { };
3218   drill = callPackage ../tools/networking/drill {
3219     inherit (darwin.apple_sdk.frameworks) Security;
3220   };
3222   drone = callPackage ../development/tools/continuous-integration/drone { };
3223   drone-oss = callPackage ../development/tools/continuous-integration/drone {
3224     enableUnfree = false;
3225   };
3227   dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { };
3229   inherit (import ../build-support/dlang/dub-support.nix { inherit callPackage; })
3230     buildDubPackage dub-to-nix;
3232   duff = callPackage ../tools/filesystems/duff {
3233     autoreconfHook = buildPackages.autoreconfHook269;
3234   };
3236   dump_syms = callPackage ../development/tools/dump_syms {
3237     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
3238   };
3240   dvtm = callPackage ../tools/misc/dvtm {
3241     # if you prefer a custom config, write the config.h in dvtm.config.h
3242     # and enable
3243     # customConfig = builtins.readFile ./dvtm.config.h;
3244   };
3246   dvtm-unstable = callPackage ../tools/misc/dvtm/unstable.nix { };
3248   ecryptfs = callPackage ../tools/security/ecryptfs { };
3250   ecryptfs-helper = callPackage ../tools/security/ecryptfs/helper.nix { };
3252   eid-mw = callPackage ../tools/security/eid-mw {
3253     autoreconfHook = buildPackages.autoreconfHook269;
3254   };
3256   engauge-digitizer = libsForQt5.callPackage ../applications/science/math/engauge-digitizer { };
3258   kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { };
3260   lychee = callPackage ../tools/networking/lychee {
3261     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
3262   };
3264   mozwire = callPackage ../tools/networking/mozwire {
3265     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
3266   };
3268   pax = callPackage ../tools/archivers/pax {
3269     inherit (pkgs.darwin.apple_sdk.libs) utmp;
3270   };
3272   rocmPackages = rocmPackages_6;
3273   rocmPackages_5 = recurseIntoAttrs (callPackage ../development/rocm-modules/5 { });
3274   rocmPackages_6 = recurseIntoAttrs (callPackage ../development/rocm-modules/6 { });
3276   solo2-cli = callPackage ../tools/security/solo2-cli {
3277     inherit (darwin.apple_sdk.frameworks) PCSC IOKit CoreFoundation AppKit;
3278   };
3280   sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { };
3282   strawberry-qt5 = libsForQt5.callPackage ../applications/audio/strawberry { };
3284   strawberry-qt6 = qt6Packages.callPackage ../applications/audio/strawberry { };
3286   strawberry = strawberry-qt5;
3288   schleuder = callPackage ../tools/security/schleuder { };
3290   schleuder-cli = callPackage ../tools/security/schleuder/cli { };
3292   tealdeer = callPackage ../tools/misc/tealdeer {
3293     inherit (darwin.apple_sdk.frameworks) Security;
3294   };
3296   teamocil = callPackage ../tools/misc/teamocil { };
3298   tsm-client-withGui = callPackage ../by-name/ts/tsm-client/package.nix { enableGui = true; };
3300   tracy-x11 = callPackage ../by-name/tr/tracy/package.nix { withWayland = false; };
3302   uusi = haskell.lib.compose.justStaticExecutables haskellPackages.uusi;
3304   uutils-coreutils = callPackage ../tools/misc/uutils-coreutils {
3305     inherit (python3Packages) sphinx;
3306     inherit (darwin.apple_sdk.frameworks) Security;
3307   };
3309   uutils-coreutils-noprefix = uutils-coreutils.override { prefix = null; };
3311   vorta = qt6Packages.callPackage ../applications/backup/vorta { };
3313   worker-build = callPackage ../development/tools/worker-build {
3314     inherit (darwin.apple_sdk.frameworks) Security;
3315   };
3317   wrangler_1 = callPackage ../development/tools/wrangler_1 {
3318     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security;
3319   };
3321   xkcdpass = with python3Packages; toPythonApplication xkcdpass;
3323   zee = callPackage ../applications/editors/zee {
3324     inherit (darwin.apple_sdk.frameworks) Security;
3325   };
3327   zeek = darwin.apple_sdk_11_0.callPackage ../applications/networking/ids/zeek { };
3329   zonemaster-cli = perlPackages.ZonemasterCLI;
3331   ### DEVELOPMENT / EMSCRIPTEN
3333   buildEmscriptenPackage = callPackage ../development/em-modules/generic { };
3335   emscripten = callPackage ../development/compilers/emscripten {
3336     llvmPackages = llvmPackages_19;
3337   };
3339   emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
3341   emscriptenStdenv = stdenv // { mkDerivation = buildEmscriptenPackage; };
3343   # The latest version used by elasticsearch, logstash, kibana and the the beats from elastic.
3344   # When updating make sure to update all plugins or they will break!
3345   elk7Version = "7.17.16";
3347   elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix {
3348     util-linux = util-linuxMinimal;
3349     jre_headless = jdk11_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
3350   };
3351   elasticsearch = elasticsearch7;
3353   elasticsearchPlugins = recurseIntoAttrs (
3354     callPackage ../servers/search/elasticsearch/plugins.nix {}
3355   );
3357   embree = callPackage ../development/libraries/embree { };
3358   embree2 = callPackage ../development/libraries/embree/2.x.nix { };
3360   emborg = python3Packages.callPackage ../development/python-modules/emborg { };
3362   emulsion = callPackage ../applications/graphics/emulsion {
3363     inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices Foundation OpenGL;
3364   };
3366   encfs = callPackage ../tools/filesystems/encfs {
3367     tinyxml2 = tinyxml-2;
3368   };
3370   envchain = callPackage ../tools/misc/envchain { inherit (darwin.apple_sdk.frameworks) Security; };
3372   ethercalc = callPackage ../servers/web-apps/ethercalc { };
3374   evtest-qt = libsForQt5.callPackage ../applications/misc/evtest-qt { };
3376   executor = with python3Packages; toPythonApplication executor;
3378   exiftool = perlPackages.ImageExifTool;
3380   expect = tclPackages.expect;
3382   Fabric = with python3Packages; toPythonApplication fabric;
3384   chewing-editor = libsForQt5.callPackage ../applications/misc/chewing-editor { };
3386   fcitx5 = callPackage ../tools/inputmethods/fcitx5 { };
3388   fcitx5-bamboo = callPackage ../tools/inputmethods/fcitx5/fcitx5-bamboo.nix { };
3390   fcitx5-skk = qt6Packages.callPackage ../tools/inputmethods/fcitx5/fcitx5-skk.nix { };
3392   fcitx5-anthy = callPackage ../tools/inputmethods/fcitx5/fcitx5-anthy.nix { };
3394   fcitx5-chewing = callPackage ../tools/inputmethods/fcitx5/fcitx5-chewing.nix { };
3396   fcitx5-lua = callPackage ../tools/inputmethods/fcitx5/fcitx5-lua.nix { lua = lua5_3; };
3398   fcitx5-m17n = callPackage ../tools/inputmethods/fcitx5/fcitx5-m17n.nix { };
3400   fcitx5-openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard { withFcitx5Support = true; };
3402   fcitx5-gtk = callPackage ../tools/inputmethods/fcitx5/fcitx5-gtk.nix { };
3404   fcitx5-hangul = callPackage ../tools/inputmethods/fcitx5/fcitx5-hangul.nix { };
3406   fcitx5-rime = callPackage ../tools/inputmethods/fcitx5/fcitx5-rime.nix { };
3408   fcitx5-table-extra = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-extra.nix { };
3410   fcitx5-table-other = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-other.nix { };
3412   featherpad = qt5.callPackage ../applications/editors/featherpad { };
3414   feroxbuster = callPackage ../tools/security/feroxbuster {
3415     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
3416   };
3418   ffsend = callPackage ../tools/misc/ffsend {
3419     inherit (darwin.apple_sdk.frameworks) Security AppKit;
3420   };
3422   flannel = callPackage ../tools/networking/flannel { };
3423   cni-plugin-flannel = callPackage ../tools/networking/flannel/plugin.nix { };
3425   flatpak-builder = callPackage ../development/tools/flatpak-builder {
3426     binutils = binutils-unwrapped;
3427   };
3429   fltrdr = callPackage ../tools/misc/fltrdr {
3430     icu = icu63;
3431   };
3433   file = callPackage ../tools/misc/file {
3434     inherit (windows) libgnurx;
3435   };
3437   findutils = callPackage ../tools/misc/findutils { };
3439   bsd-fingerd = bsd-finger.override {
3440     buildProduct = "daemon";
3441   };
3443   iprange = callPackage ../applications/networking/firehol/iprange.nix { };
3445   firehol = callPackage ../applications/networking/firehol { };
3447   fluentd = callPackage ../tools/misc/fluentd { };
3449   gemstash = callPackage ../development/tools/gemstash { };
3451   hmetis = pkgsi686Linux.callPackage ../applications/science/math/hmetis { };
3453   libbtbb = callPackage ../development/libraries/libbtbb {
3454     inherit (darwin.apple_sdk.frameworks) CoreServices;
3455   };
3457   lpd8editor = libsForQt5.callPackage ../applications/audio/lpd8editor {};
3459   lp_solve = callPackage ../applications/science/math/lp_solve {
3460     inherit (darwin) autoSignDarwinBinariesHook;
3461   };
3463   fastlane = callPackage ../tools/admin/fastlane { };
3465   fontforge = lowPrio (callPackage ../tools/misc/fontforge {
3466     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
3467     python = python3;
3468   });
3469   fontforge-gtk = fontforge.override {
3470     withSpiro = true;
3471     withGTK = true;
3472     gtk3 = gtk3-x11;
3473     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
3474   };
3476   fontforge-fonttools = callPackage ../tools/misc/fontforge/fontforge-fonttools.nix { };
3478   fontmatrix = libsForQt5.callPackage ../applications/graphics/fontmatrix { };
3480   fox = callPackage ../development/libraries/fox {};
3482   fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix {
3483     inherit (darwin.apple_sdk.frameworks) CoreServices;
3484   };
3486   fpm = callPackage ../tools/package-management/fpm { };
3488   ferdium = callPackage ../applications/networking/instant-messengers/ferdium {
3489     mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
3490   };
3492   franz = callPackage ../applications/networking/instant-messengers/franz {
3493     mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
3494   };
3496   freqtweak = callPackage ../applications/audio/freqtweak {
3497     wxGTK = wxGTK32;
3498   };
3500   freshfetch = callPackage ../tools/misc/freshfetch {
3501     inherit (darwin.apple_sdk.frameworks) AppKit CoreFoundation DiskArbitration Foundation IOKit;
3502   };
3504   frostwire-bin = callPackage ../applications/networking/p2p/frostwire/frostwire-bin.nix { };
3506   fstl = qt5.callPackage ../applications/graphics/fstl { };
3508   fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { });
3510   inherit (fdbPackages)
3511     foundationdb71
3512   ;
3514   foundationdb = foundationdb71;
3516   fuse-ext2 = darwin.apple_sdk_11_0.callPackage ../tools/filesystems/fuse-ext2 { };
3518   fwknop = callPackage ../tools/security/fwknop {
3519     texinfo = texinfo6_7; # Uses @setcontentsaftertitlepage, removed in 6.8.
3520   };
3522   uniscribe = callPackage ../tools/text/uniscribe { };
3524   gallery-dl = python3Packages.callPackage ../applications/misc/gallery-dl { };
3526   gandi-cli = python3Packages.callPackage ../tools/networking/gandi-cli { };
3528   gaphor = python3Packages.callPackage ../tools/misc/gaphor { };
3530   inherit (callPackages ../tools/filesystems/garage {
3531     inherit (darwin.apple_sdk.frameworks) Security;
3532   })
3533     garage
3534       garage_0_8 garage_0_9
3535       garage_0_8_7 garage_0_9_4
3536       garage_1_0_1 garage_1_x;
3538   gauge-unwrapped = callPackage ../development/tools/gauge { };
3539   gauge = callPackage ../development/tools/gauge/wrapper.nix { };
3540   gaugePlugins = recurseIntoAttrs (callPackage ../development/tools/gauge/plugins {});
3542   gawd = python3Packages.toPythonApplication python3Packages.gawd;
3544   gawk = callPackage ../tools/text/gawk {
3545     inherit (darwin) locale;
3546   };
3548   gawk-with-extensions = callPackage ../tools/text/gawk/gawk-with-extensions.nix {
3549     extensions = gawkextlib.full;
3550   };
3551   gawkextlib = callPackage ../tools/text/gawk/gawkextlib.nix { };
3553   gawkInteractive = gawk.override { interactive = true; };
3555   gbdfed = callPackage ../tools/misc/gbdfed {
3556     gtk = gtk2-x11;
3557   };
3559   gftp = callPackage ../applications/networking/ftp/gftp {
3560     gtk = gtk2;
3561   };
3563   ggshield = callPackage ../tools/security/ggshield {
3564     python3 = python311;
3565   };
3567   gibberish-detector = with python3Packages; toPythonApplication gibberish-detector;
3569   gifski = callPackage ../tools/graphics/gifski {
3570     ffmpeg = ffmpeg_6;
3571   };
3573   gitlab = callPackage ../applications/version-management/gitlab { };
3574   gitlab-ee = callPackage ../applications/version-management/gitlab {
3575     gitlabEnterprise = true;
3576   };
3578   gitlab-triage = callPackage ../applications/version-management/gitlab-triage { };
3580   gitlab-workhorse = callPackage ../applications/version-management/gitlab/gitlab-workhorse { };
3582   gitqlient = libsForQt5.callPackage ../applications/version-management/gitqlient { };
3584   glogg = libsForQt5.callPackage ../tools/text/glogg { };
3586   gmrender-resurrect = callPackage ../tools/networking/gmrender-resurrect {
3587     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav;
3588   };
3590   gnome-decoder = callPackage ../applications/graphics/gnome-decoder {
3591      inherit (gst_all_1) gstreamer gst-plugins-base;
3592      gst-plugins-bad = gst_all_1.gst-plugins-bad.override { enableZbar = true; };
3593   };
3595   gnome-panel-with-modules = callPackage ../by-name/gn/gnome-panel/wrapper.nix { };
3597   dapl = callPackage ../development/interpreters/dzaima-apl {
3598     buildNativeImage = false;
3599     stdenv = stdenvNoCC;
3600     jdk = jre;
3601   };
3602   dapl-native = callPackage ../development/interpreters/dzaima-apl {
3603     buildNativeImage = true;
3604     jdk = graalvm-ce;
3605   };
3607   gnucap-full = gnucap.withPlugins(p: [ p.verilog ]);
3609   gnufdisk = callPackage ../tools/system/fdisk {
3610     guile = guile_1_8;
3611   };
3613   gnugrep = callPackage ../tools/text/gnugrep { };
3615   gnupatch = callPackage ../tools/text/gnupatch { };
3617   gnupg1orig = callPackage ../tools/security/gnupg/1.nix { };
3618   gnupg1compat = callPackage ../tools/security/gnupg/1compat.nix { };
3619   gnupg1 = gnupg1compat;    # use config.packageOverrides if you prefer original gnupg1
3621   gnupg22 = callPackage ../tools/security/gnupg/22.nix {
3622     pinentry = if stdenv.hostPlatform.isDarwin then pinentry_mac else pinentry-gtk2;
3623     libgcrypt = libgcrypt_1_8;
3624   };
3626   gnupg24 = callPackage ../tools/security/gnupg/24.nix {
3627     pinentry = if stdenv.hostPlatform.isDarwin then pinentry_mac else pinentry-gtk2;
3628   };
3629   gnupg = gnupg24;
3631   gnuplot = libsForQt5.callPackage ../tools/graphics/gnuplot {
3632     inherit (darwin.apple_sdk.frameworks) Cocoa;
3633   };
3635   gnuplot_qt = gnuplot.override { withQt = true; };
3637   # must have AquaTerm installed separately
3638   gnuplot_aquaterm = gnuplot.override { aquaterm = true; };
3640   gnused = callPackage ../tools/text/gnused { };
3642   gnutar = callPackage ../tools/archivers/gnutar { };
3644   godot3 = callPackage ../development/tools/godot/3 { };
3646   godot3-export-templates = callPackage ../development/tools/godot/3/export-templates.nix { };
3648   godot3-headless = callPackage ../development/tools/godot/3/headless.nix { };
3650   godot3-debug-server = callPackage ../development/tools/godot/3/debug-server.nix { };
3652   godot3-server = callPackage ../development/tools/godot/3/server.nix { };
3654   godot3-mono = callPackage ../development/tools/godot/3/mono {};
3656   godot3-mono-export-templates = callPackage ../development/tools/godot/3/mono/export-templates.nix { };
3658   godot3-mono-headless = callPackage ../development/tools/godot/3/mono/headless.nix { };
3660   godot3-mono-debug-server = callPackage ../development/tools/godot/3/mono/debug-server.nix { };
3662   godot3-mono-server = callPackage ../development/tools/godot/3/mono/server.nix { };
3664   goattracker = callPackage ../applications/audio/goattracker { };
3666   goattracker-stereo = callPackage ../applications/audio/goattracker {
3667     isStereo = true;
3668   };
3670   google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk {
3671     python = python3;
3672   };
3673   google-cloud-sdk-gce = google-cloud-sdk.override {
3674     python = python3;
3675     with-gce = true;
3676   };
3678   google-compute-engine = with python3.pkgs; toPythonApplication google-compute-engine;
3680   gdown = with python3Packages; toPythonApplication gdown;
3682   goverlay = callPackage ../tools/graphics/goverlay {
3683     inherit (qt5) wrapQtAppsHook;
3684     inherit (plasma5Packages) breeze-qt5;
3685   };
3687   gpt4all-cuda = gpt4all.override {
3688     cudaSupport = true;
3689   };
3691   gpt2tc = callPackage ../tools/text/gpt2tc { };
3693   gptcommit = callPackage ../development/tools/gptcommit {
3694     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
3695   };
3697   gpredict = callPackage ../applications/science/astronomy/gpredict {
3698     hamlib = hamlib_4;
3699   };
3701   gprof2dot = with python3Packages; toPythonApplication gprof2dot;
3703   grails = callPackage ../development/web/grails { jdk = null; };
3705   graylog-5_1 = callPackage ../tools/misc/graylog/5.1.nix { };
3707   graylog-5_2 = callPackage ../tools/misc/graylog/5.2.nix { };
3709   graylog-6_0 = callPackage ../tools/misc/graylog/6.0.nix { };
3711   graylogPlugins = recurseIntoAttrs (
3712     callPackage ../tools/misc/graylog/plugins.nix { }
3713   );
3715   graphviz = callPackage ../tools/graphics/graphviz {
3716     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
3717   };
3719   graphviz-nox = callPackage ../tools/graphics/graphviz {
3720     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
3721     withXorg = false;
3722   };
3724   igrep = callPackage ../tools/text/igrep {
3725     inherit (darwin.apple_sdk.frameworks) Security;
3726   };
3728   ripgrep-all = callPackage ../tools/text/ripgrep-all {
3729     inherit (darwin.apple_sdk.frameworks) Security;
3730   };
3732   grub2 = callPackage ../tools/misc/grub/default.nix { };
3734   grub2_efi = grub2.override {
3735     efiSupport = true;
3736   };
3738   grub2_light = grub2.override {
3739     zfsSupport = false;
3740   };
3742   grub2_xen = grub2.override {
3743     xenSupport = true;
3744   };
3746   grub4dos = callPackage ../tools/misc/grub4dos {
3747     stdenv = stdenv_32bit;
3748   };
3750   gruut = with python3.pkgs; toPythonApplication gruut;
3752   gruut-ipa = with python3.pkgs; toPythonApplication gruut-ipa;
3754   gx = callPackage ../tools/package-management/gx { };
3755   gsmlib = callPackage ../development/libraries/gsmlib
3756     { autoreconfHook = buildPackages.autoreconfHook269; };
3758   gssdp = callPackage ../development/libraries/gssdp { };
3760   gssdp_1_6 = callPackage ../development/libraries/gssdp/1.6.nix { };
3762   gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
3764   gtkd = callPackage ../development/libraries/gtkd { dcompiler = ldc; };
3766   gup = callPackage ../development/tools/build-managers/gup { };
3768   gupnp = callPackage ../development/libraries/gupnp { };
3770   gupnp_1_6 = callPackage ../development/libraries/gupnp/1.6.nix { };
3772   gvm-tools = with python3.pkgs; toPythonApplication gvm-tools;
3774   gyroflow = qt6Packages.callPackage ../applications/video/gyroflow { };
3776   gzip = callPackage ../tools/compression/gzip { };
3778   pdisk = callPackage ../tools/system/pdisk {
3779     inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit;
3780   };
3782   plplot = callPackage ../development/libraries/plplot {
3783     inherit (darwin.apple_sdk.frameworks) Cocoa;
3784   };
3786   haguichi = callPackage ../tools/networking/haguichi { };
3788   hashcat = callPackage ../tools/security/hashcat {
3789     inherit (darwin.apple_sdk.frameworks) Foundation IOKit Metal OpenCL;
3790   };
3792   haskell-language-server = callPackage ../development/tools/haskell/haskell-language-server/withWrapper.nix { };
3794   hassil = with python3Packages; toPythonApplication hassil;
3796   haste-client = callPackage ../tools/misc/haste-client { };
3798   hal-hardware-analyzer = libsForQt5.callPackage ../applications/science/electronics/hal-hardware-analyzer {
3799     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
3800   };
3802   halide = callPackage ../development/compilers/halide {
3803     llvmPackages = llvmPackages_18;
3804   };
3806   hareThirdParty = recurseIntoAttrs (callPackage ./hare-third-party.nix { });
3808   ham = pkgs.perlPackages.ham;
3810   hdf5 = callPackage ../tools/misc/hdf5 {
3811     fortranSupport = false;
3812     fortran = gfortran;
3813   };
3815   hdf5_1_10 = callPackage ../tools/misc/hdf5/1.10.nix { };
3817   hdf5-mpi = hdf5.override {
3818     mpiSupport = true;
3819     cppSupport = false;
3820   };
3822   hdf5-cpp = hdf5.override { cppSupport = true; };
3824   hdf5-fortran = hdf5.override { fortranSupport = true; };
3826   hdf5-threadsafe = hdf5.override { threadsafe = true; };
3828   heaptrack = libsForQt5.callPackage ../development/tools/profiling/heaptrack { };
3830   heimdall = libsForQt5.callPackage ../tools/misc/heimdall { };
3832   heimdall-gui = heimdall.override { enableGUI = true; };
3834   headscale = callPackage ../servers/headscale {
3835     buildGoModule = buildGo123Module;
3836   };
3838   hiera-eyaml = callPackage ../tools/system/hiera-eyaml { };
3840   hobbits = libsForQt5.callPackage ../tools/graphics/hobbits { };
3842   highlight = callPackage ../tools/text/highlight {
3843     lua = lua5;
3844   };
3846   hockeypuck = callPackage ../servers/hockeypuck/server.nix { };
3848   hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
3850   homesick = callPackage ../tools/misc/homesick { };
3852   host = bind.host;
3854   hotdoc = python3Packages.callPackage ../development/tools/hotdoc { };
3856   hotspot = libsForQt5.callPackage ../development/tools/analysis/hotspot { };
3858   hpccm = with python3Packages; toPythonApplication hpccm;
3860   hqplayer-desktop = libsForQt5.callPackage ../applications/audio/hqplayer-desktop { };
3862   html-proofer = callPackage ../tools/misc/html-proofer { };
3864   htmlq = callPackage ../development/tools/htmlq {
3865     inherit (darwin.apple_sdk.frameworks) Security;
3866   };
3868   http-prompt = callPackage ../tools/networking/http-prompt { };
3870   httpie = with python3Packages; toPythonApplication httpie;
3872   hue-plus = libsForQt5.callPackage ../applications/misc/hue-plus { };
3874   humanfriendly = with python3Packages; toPythonApplication humanfriendly;
3876   hw-probe = perlPackages.callPackage ../tools/system/hw-probe { };
3878   hyphen = callPackage ../development/libraries/hyphen { };
3880   hyphenDicts = recurseIntoAttrs (callPackages ../development/libraries/hyphen/dictionaries.nix {});
3882   iannix = libsForQt5.callPackage ../applications/audio/iannix { };
3884   iaito = libsForQt5.callPackage ../tools/security/iaito { };
3886   jamulus = libsForQt5.callPackage ../applications/audio/jamulus { };
3888   icemon = libsForQt5.callPackage ../applications/networking/icemon { };
3890   icepeak = haskell.lib.compose.justStaticExecutables haskellPackages.icepeak;
3892   ifwifi = callPackage ../tools/networking/ifwifi {
3893     inherit (darwin.apple_sdk.frameworks) Security;
3894   };
3896   inherit (callPackages ../tools/filesystems/irods rec {
3897     stdenv = llvmPackages_13.libcxxStdenv;
3898     libcxx = llvmPackages_13.libcxx;
3899     boost = boost178.override { inherit stdenv; };
3900     fmt = fmt_8.override { inherit stdenv; };
3901     nanodbc_llvm = nanodbc.override { inherit stdenv; };
3902     avro-cpp_llvm = avro-cpp.override { inherit stdenv boost; };
3903     spdlog_llvm = spdlog.override { inherit stdenv fmt; };
3904   })
3905     irods
3906     irods-icommands;
3908   ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix {
3909     inherit (haskellPackages) ghcWithPackages;
3911     jupyter = python3.withPackages (ps: [ ps.jupyter ps.notebook ]);
3913     packages = config.ihaskell.packages or (_: []);
3914   };
3916   iruby = callPackage ../applications/editors/jupyter-kernels/iruby { };
3918   ilspycmd = callPackage ../development/tools/ilspycmd {
3919     inherit (darwin) autoSignDarwinBinariesHook;
3920   };
3922   in-formant = qt6Packages.callPackage ../applications/audio/in-formant { };
3924   incus-lts = callPackage ../by-name/in/incus/lts.nix { };
3926   indexed-bzip2 = with python3Packages; toPythonApplication indexed-bzip2;
3928   infisical = callPackage ../development/tools/infisical { };
3930   inform6 = darwin.apple_sdk_11_0.callPackage ../development/compilers/inform6 { };
3932   innernet = callPackage ../tools/networking/innernet {
3933     inherit (darwin.apple_sdk.frameworks) Security;
3934   };
3936   input-remapper = python3Packages.callPackage ../tools/inputmethods/input-remapper { };
3938   internetarchive = with python3Packages; toPythonApplication internetarchive;
3940   iocextract = with python3Packages; toPythonApplication iocextract;
3942   iocsearcher = with python3Packages; toPythonApplication iocsearcher;
3944   iperf2 = callPackage ../tools/networking/iperf/2.nix { };
3945   iperf3 = callPackage ../tools/networking/iperf/3.nix { };
3946   iperf = iperf3;
3948   i-pi = with python3Packages; toPythonApplication i-pi;
3950   # ipscan is commonly known under the name angryipscanner
3951   angryipscanner = ipscan;
3953   isl = isl_0_20;
3954   isl_0_17 = callPackage ../development/libraries/isl/0.17.1.nix { };
3955   isl_0_20 = callPackage ../development/libraries/isl/0.20.0.nix { };
3956   isl_0_24 = callPackage ../development/libraries/isl/0.24.0.nix { };
3958   isync = callPackage ../tools/networking/isync {
3959     inherit (darwin.apple_sdk.frameworks) Security;
3960   };
3962   jackett = callPackage ../servers/jackett { };
3964   jamesdsp = qt6Packages.callPackage ../applications/audio/jamesdsp { };
3965   jamesdsp-pulse = qt6Packages.callPackage ../applications/audio/jamesdsp {
3966     usePipewire = false;
3967     usePulseaudio = true;
3968   };
3970   jazzy = callPackage ../development/tools/jazzy { };
3972   jc = with python3Packages; toPythonApplication jc;
3974   jekyll = callPackage ../applications/misc/jekyll { };
3976   jello = with python3Packages; toPythonApplication jello;
3978   jing = res.jing-trang;
3979   jing-trang = callPackage ../tools/text/xml/jing-trang {
3980     jdk_headless = jdk8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
3981   };
3983   jl = haskellPackages.jl;
3985   jless = callPackage ../development/tools/jless {
3986     inherit (darwin.apple_sdk.frameworks) AppKit;
3987   };
3989   juicefs = callPackage ../tools/filesystems/juicefs {
3990     buildGoModule = buildGo122Module;
3991   };
3993   jogl = callPackage ../by-name/jo/jogl/package.nix {
3994     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64 then overrideSDK stdenv "11.0" else stdenv;
3995   };
3997   joplin = nodePackages.joplin;
3999   jpylyzer = with python3Packages; toPythonApplication jpylyzer;
4001   jsbeautifier = with python3Packages; toPythonApplication jsbeautifier;
4003   json-schema-for-humans = with python3Packages; toPythonApplication json-schema-for-humans;
4005   jsonwatch = callPackage ../tools/misc/jsonwatch {
4006     inherit (darwin.apple_sdk.frameworks) Security;
4007   };
4009   jupyter = callPackage ../applications/editors/jupyter { };
4011   jupyter-all = jupyter.override {
4012     definitions = {
4013       clojure = clojupyter.definition;
4014       octave = octave-kernel.definition;
4015       # wolfram = wolfram-for-jupyter-kernel.definition; # unfree
4016     };
4017   };
4019   jupyter-console = callPackage ../applications/editors/jupyter/console.nix { };
4021   jupyter-kernel = callPackage ../applications/editors/jupyter/kernel.nix { };
4023   wrapKakoune = kakoune: attrs: callPackage ../applications/editors/kakoune/wrapper.nix (attrs // { inherit kakoune; });
4024   kakounePlugins = recurseIntoAttrs (callPackage ../applications/editors/kakoune/plugins { });
4026   kakoune-unwrapped = callPackage ../applications/editors/kakoune { };
4027   kakoune = wrapKakoune kakoune-unwrapped {
4028     plugins = [ ];  # override with the list of desired plugins
4029   };
4030   kakouneUtils = callPackage ../applications/editors/kakoune/plugins/kakoune-utils.nix { };
4032   kaffeine = libsForQt5.callPackage ../applications/video/kaffeine { };
4034   kakoune-lsp = callPackage ../by-name/ka/kakoune-lsp/package.nix {
4035     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
4036   };
4038   kakoune-cr = callPackage ../tools/misc/kakoune-cr { crystal = crystal_1_2; };
4040   kbs2 = callPackage ../tools/security/kbs2 {
4041     inherit (darwin.apple_sdk.frameworks) AppKit SystemConfiguration;
4042   };
4044   kdash = callPackage ../development/tools/kdash {
4045     inherit (darwin.apple_sdk.frameworks) AppKit;
4046   };
4048   kdiskmark = libsForQt5.callPackage ../tools/filesystems/kdiskmark { };
4050   keepkey-agent = with python3Packages; toPythonApplication keepkey-agent;
4052   keybase = darwin.apple_sdk_11_0.callPackage ../tools/security/keybase {
4053     # Reasoning for the inherited apple_sdk.frameworks:
4054     # 1. specific compiler errors about: AVFoundation, AudioToolbox, MediaToolbox
4055     # 2. the rest are added from here: https://github.com/keybase/client/blob/68bb8c893c5214040d86ea36f2f86fbb7fac8d39/go/chat/attachments/preview_darwin.go#L7
4056     #      #cgo LDFLAGS: -framework AVFoundation -framework CoreFoundation -framework ImageIO -framework CoreMedia  -framework Foundation -framework CoreGraphics -lobjc
4057     #    with the exception of CoreFoundation, due to the warning in https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/darwin/apple-sdk/frameworks.nix#L25
4058     inherit (darwin.apple_sdk_11_0.frameworks) AppKit AVFoundation AudioToolbox ImageIO CoreMedia Foundation CoreGraphics MediaToolbox;
4059   };
4061   kbfs = callPackage ../tools/security/keybase/kbfs.nix { };
4063   keybase-gui = callPackage ../tools/security/keybase/gui.nix { };
4065   keyscope = callPackage ../tools/security/keyscope {
4066     inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation IOKit Security;
4067   };
4069   keystore-explorer = callPackage ../applications/misc/keystore-explorer {
4070     jdk = jdk11;
4071   };
4073   kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { };
4075   kphotoalbum = libsForQt5.callPackage ../applications/graphics/kphotoalbum { };
4077   krename = libsForQt5.callPackage ../applications/misc/krename { };
4079   krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { };
4081   krunner-translator = libsForQt5.callPackage ../tools/misc/krunner-translator { };
4083   krunvm = callPackage ../applications/virtualization/krunvm {
4084     inherit (darwin) sigtool;
4085   };
4087   kronometer = libsForQt5.callPackage ../tools/misc/kronometer { };
4089   kdiff3 = libsForQt5.callPackage ../tools/text/kdiff3 { };
4091   kubo-migrator-all-fs-repo-migrations = callPackage ../applications/networking/kubo-migrator/all-migrations.nix { };
4092   kubo-migrator-unwrapped = callPackage ../applications/networking/kubo-migrator/unwrapped.nix { };
4093   kubo-migrator = callPackage ../applications/networking/kubo-migrator { };
4095   kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { };
4097   peruse = libsForQt5.callPackage ../tools/misc/peruse { };
4099   ksmoothdock = libsForQt5.callPackage ../applications/misc/ksmoothdock { };
4101   kstars = libsForQt5.callPackage ../applications/science/astronomy/kstars { };
4103   ligo =
4104     let ocaml_p = ocaml-ng.ocamlPackages_4_14.overrideScope (self: super: {
4105       zarith = super.zarith.override { version = "1.13"; };
4106     }); in
4107     callPackage ../development/compilers/ligo {
4108     coq = coq_8_13.override {
4109       customOCamlPackages = ocaml_p;
4110     };
4111     ocamlPackages = ocaml_p;
4112   };
4114   leocad = libsForQt5.callPackage ../applications/graphics/leocad { };
4116   libcoap = callPackage ../applications/networking/libcoap {
4117     autoconf = buildPackages.autoconf269;
4118   };
4120   libcryptui = callPackage ../development/libraries/libcryptui {
4121     autoreconfHook = buildPackages.autoreconfHook269;
4122     gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
4123   };
4125   liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix {
4126     ffmpeg = ffmpeg_6-full;
4127     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
4128   };
4130   lldpd = callPackage ../tools/networking/lldpd {
4131     inherit (darwin.apple_sdk.frameworks) Foundation;
4132   };
4134   llm = with python3Packages; toPythonApplication llm;
4136   lnx = callPackage ../servers/search/lnx {
4137     inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation;
4138   };
4140   loganalyzer = libsForQt5.callPackage ../development/tools/loganalyzer { };
4142   logstash7 = callPackage ../tools/misc/logstash/7.x.nix {
4143     # https://www.elastic.co/support/matrix#logstash-and-jvm
4144     jre = jdk11_headless;
4145   };
4146   logstash7-oss = callPackage ../tools/misc/logstash/7.x.nix {
4147     enableUnfree = false;
4148     # https://www.elastic.co/support/matrix#logstash-and-jvm
4149     jre = jdk11_headless;
4150   };
4151   logstash = logstash7;
4153   logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { };
4155   lolcat = callPackage ../tools/misc/lolcat { };
4157   loudgain = callPackage ../tools/audio/loudgain/default.nix { };
4159   lsyncd = callPackage ../applications/networking/sync/lsyncd {
4160     lua = lua5_2_compat;
4161   };
4163   kdbg = libsForQt5.callPackage ../development/tools/misc/kdbg { };
4165   kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { };
4167   lagrange = callPackage ../applications/networking/browsers/lagrange {
4168     inherit (darwin.apple_sdk.frameworks) AppKit;
4169   };
4170   lagrange-tui = lagrange.override { enableTUI = true; };
4172   kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
4174   mailcatcher = callPackage ../development/web/mailcatcher { };
4176   maskromtool = qt6Packages.callPackage ../tools/graphics/maskromtool { };
4178   matrix-synapse = callPackage ../servers/matrix-synapse/wrapper.nix { };
4179   matrix-synapse-unwrapped = callPackage ../servers/matrix-synapse/default.nix { };
4180   matrix-synapse-plugins = recurseIntoAttrs matrix-synapse-unwrapped.plugins;
4181   matrix-synapse-tools = recurseIntoAttrs matrix-synapse-unwrapped.tools;
4183   matrix-appservice-slack = callPackage ../servers/matrix-synapse/matrix-appservice-slack {
4184     matrix-sdk-crypto-nodejs = matrix-sdk-crypto-nodejs-0_1_0-beta_3;
4185     nodejs = nodejs_18;
4186   };
4188   matrix-appservice-discord = callPackage ../servers/matrix-appservice-discord { };
4190   maubot = with python3Packages; toPythonApplication maubot;
4192   mautrix-signal = recurseIntoAttrs (callPackage ../servers/mautrix-signal { });
4194   mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { });
4196   m2r = with python3Packages; toPythonApplication m2r;
4198   md2gemini = with python3.pkgs; toPythonApplication md2gemini;
4200   md2pdf = with python3Packages; toPythonApplication md2pdf;
4202   mdbook-epub = callPackage ../tools/text/mdbook-epub {
4203     inherit (darwin.apple_sdk.frameworks) CoreServices;
4204   };
4206   mdbook-graphviz = callPackage ../tools/text/mdbook-graphviz {
4207     inherit (darwin.apple_sdk.frameworks) CoreServices;
4208   };
4210   mdbook-katex = callPackage ../tools/text/mdbook-katex {
4211     inherit (darwin.apple_sdk.frameworks) CoreServices;
4212   };
4214   mdbook-linkcheck = callPackage ../tools/text/mdbook-linkcheck {
4215     inherit (darwin.apple_sdk.frameworks) Security;
4216   };
4218   mdbook-mermaid = callPackage ../tools/text/mdbook-mermaid {
4219     inherit (darwin.apple_sdk.frameworks) CoreServices;
4220   };
4222   mdbook-pdf = callPackage ../tools/text/mdbook-pdf {
4223     inherit (darwin.apple_sdk.frameworks) CoreServices;
4224   };
4226   mdbook-plantuml = callPackage ../tools/text/mdbook-plantuml {
4227     inherit (darwin.apple_sdk.frameworks) CoreServices;
4228   };
4230   mdbook-toc = callPackage ../tools/text/mdbook-toc {
4231     inherit (darwin.apple_sdk.frameworks) CoreServices;
4232   };
4234   mdbook-admonish = callPackage ../tools/text/mdbook-admonish {
4235     inherit (darwin.apple_sdk.frameworks) CoreServices;
4236   };
4238   mdbook-footnote = callPackage ../tools/text/mdbook-footnote {
4239     inherit (darwin.apple_sdk.frameworks) CoreServices;
4240   };
4242   mdcat = callPackage ../tools/text/mdcat {
4243     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
4244     inherit (python3Packages) ansi2html;
4245   };
4247   medfile = callPackage ../development/libraries/medfile {
4248     hdf5 = hdf5.override { usev110Api = true; };
4249   };
4251   meilisearch = callPackage ../servers/search/meilisearch {
4252     inherit (darwin.apple_sdk_11_0.frameworks) Security SystemConfiguration;
4253   };
4255   mhonarc = perlPackages.MHonArc;
4257   mujmap = callPackage ../applications/networking/mujmap {
4258     inherit (darwin.apple_sdk.frameworks) Security;
4259   };
4261   mx-puppet-discord = callPackage ../servers/mx-puppet-discord { };
4263   nagstamon = callPackage ../tools/misc/nagstamon {
4264     pythonPackages = python3Packages;
4265   };
4267   nanoemoji = with python3Packages; toPythonApplication nanoemoji;
4269   nbtscanner = callPackage ../tools/security/nbtscanner {
4270     inherit (darwin.apple_sdk.frameworks) Security;
4271   };
4273   netexec = python3Packages.callPackage ../tools/security/netexec { };
4275   netdata = callPackage ../tools/system/netdata {
4276     protobuf = protobuf_21;
4277   };
4278   netdataCloud = netdata.override {
4279     withCloud = true;
4280     withCloudUi = true;
4281   };
4283   netsurf = recurseIntoAttrs (callPackage ../applications/networking/browsers/netsurf { });
4284   netsurf-browser = netsurf.browser;
4286   nyxt = callPackage ../applications/networking/browsers/nyxt {
4287     sbcl = sbcl_2_4_6;
4288     inherit (gst_all_1)
4289       gstreamer
4290       gst-libav
4291       gst-plugins-base
4292       gst-plugins-good
4293       gst-plugins-bad
4294       gst-plugins-ugly;
4295   };
4297   nixnote2 = libsForQt5.callPackage ../applications/misc/nixnote2 { };
4299   nodejs = hiPrio nodejs_20;
4300   nodejs-slim = nodejs-slim_20;
4301   corepack = hiPrio corepack_20;
4303   nodejs_18 = callPackage ../development/web/nodejs/v18.nix { };
4304   nodejs-slim_18 = callPackage ../development/web/nodejs/v18.nix { enableNpm = false; };
4305   corepack_18 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_18; });
4307   nodejs_20 = callPackage ../development/web/nodejs/v20.nix { };
4308   nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { enableNpm = false; };
4309   corepack_20 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_20; });
4311   nodejs_22 = callPackage ../development/web/nodejs/v22.nix { };
4312   nodejs-slim_22 = callPackage ../development/web/nodejs/v22.nix { enableNpm = false; };
4313   corepack_22 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_22; });
4315   nodejs_23 = callPackage ../development/web/nodejs/v23.nix { };
4316   nodejs-slim_23 = callPackage ../development/web/nodejs/v23.nix { enableNpm = false; };
4317   corepack_23 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_23; });
4319   # Update this when adding the newest nodejs major version!
4320   nodejs_latest = nodejs_23;
4321   nodejs-slim_latest = nodejs-slim_23;
4322   corepack_latest = hiPrio corepack_23;
4324   buildNpmPackage = callPackage ../build-support/node/build-npm-package { };
4326   npmHooks = callPackage ../build-support/node/build-npm-package/hooks { };
4328   inherit (callPackages ../build-support/node/fetch-npm-deps { })
4329     fetchNpmDeps prefetch-npm-deps;
4331   importNpmLock = callPackages ../build-support/node/import-npm-lock { };
4333   nodePackages_latest = dontRecurseIntoAttrs nodejs_latest.pkgs;
4335   nodePackages = dontRecurseIntoAttrs nodejs.pkgs;
4337   node2nix = nodePackages.node2nix;
4339   oxigraph = callPackage ../servers/oxigraph {
4340     inherit (darwin.apple_sdk.frameworks) IOKit Security;
4341   };
4343   kcollectd = libsForQt5.callPackage ../tools/misc/kcollectd { };
4345   ktailctl = kdePackages.callPackage ../applications/networking/ktailctl {};
4347   ldapdomaindump = with python3Packages; toPythonApplication ldapdomaindump;
4349   leanblueprint = with python3Packages; toPythonApplication leanblueprint;
4351   lethe = callPackage ../tools/security/lethe {
4352     inherit (darwin.apple_sdk.frameworks) Security;
4353   };
4355   libhandy = callPackage ../development/libraries/libhandy { };
4357   # Needed for apps that still depend on the unstable verison of the library (not libhandy-1)
4358   libhandy_0 = callPackage ../development/libraries/libhandy/0.x.nix { };
4360   libint = callPackage ../development/libraries/libint { };
4361   libintPsi4 = callPackage ../development/libraries/libint {
4362     enableFortran = false;
4363     enableSSE = false;
4364     maxAm = 6;
4365     eriDeriv = 2;
4366     eri3Deriv = 2;
4367     eri2Deriv = 2;
4368     eriAm = [ 6 5 4 ];
4369     eri3Am = [ 6 5 4 ];
4370     eri2Am = [ 6 5 4 ];
4371     eriOptAm = [ 3 2 2 ];
4372     eri3OptAm = [ 3 2 2 ];
4373     eri2OptAm = [ 3 2 2 ];
4374     enableOneBody = true;
4375     oneBodyDerivOrd = 2;
4376     enableGeneric = false;
4377     enableContracted = false;
4378     cartGaussOrd = "standard";
4379     shGaussOrd = "gaussian";
4380     eri2PureSh = false;
4381     eri3PureSh = false;
4382   };
4384   libirc = libsForQt5.callPackage ../development/libraries/libirc { };
4386   libmongocrypt = darwin.apple_sdk_11_0.callPackage ../development/libraries/libmongocrypt { };
4388   libportal-gtk3 = libportal.override { variant = "gtk3"; };
4389   libportal-gtk4 = libportal.override { variant = "gtk4"; };
4390   libportal-qt5 = libportal.override { variant = "qt5"; };
4391   libportal-qt6 = libportal.override { variant = "qt6"; };
4393   jesec-rtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent {
4394     libtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent/libtorrent.nix { };
4395   };
4397   librest = callPackage ../development/libraries/librest { };
4399   librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { };
4401   licensee = callPackage ../tools/package-management/licensee { };
4403   lidarr = callPackage ../servers/lidarr { };
4405   inherit ({
4406     limesuite = callPackage ../applications/radio/limesuite {
4407       inherit (darwin.apple_sdk.frameworks) GLUT;
4408     };
4409     limesuiteWithGui = limesuite.override {
4410       withGui = true;
4411     };
4412   })
4413   limesuite
4414   limesuiteWithGui;
4416   linux-gpib = callPackage ../applications/science/electronics/linux-gpib/user.nix { };
4418   liquidctl = with python3Packages; toPythonApplication liquidctl;
4420   localstack = with python3Packages; toPythonApplication localstack;
4422   xz = callPackage ../tools/compression/xz { };
4424   lzwolf = callPackage ../games/lzwolf { SDL2_mixer = SDL2_mixer_2_0; };
4426   madlang = haskell.lib.compose.justStaticExecutables haskellPackages.madlang;
4428   mailnag = callPackage ../applications/networking/mailreaders/mailnag {
4429     availablePlugins = {
4430       # More are listed here: https://github.com/pulb/mailnag/#desktop-integration
4431       # Use the attributes here as arguments to `plugins` list
4432       goa = callPackage ../applications/networking/mailreaders/mailnag/goa-plugin.nix { };
4433     };
4434   };
4435   mailnagWithPlugins = mailnag.withPlugins(
4436     builtins.attrValues mailnag.availablePlugins
4437   );
4438   mailpit = callPackage ../servers/mail/mailpit {
4439     libtool = if stdenv.hostPlatform.isDarwin then cctools else libtool;
4440   };
4442   mailutils = callPackage ../tools/networking/mailutils {
4443     sasl = gsasl;
4444   };
4446   matrix-sdk-crypto-nodejs = callPackage ../development/libraries/matrix-sdk-crypto-nodejs { };
4447   matrix-sdk-crypto-nodejs-0_1_0-beta_3 = callPackage ../development/libraries/matrix-sdk-crypto-nodejs/beta3.nix { };
4449   makemkv = libsForQt5.callPackage ../applications/video/makemkv { };
4451   man = man-db;
4453   mangohud = callPackage ../tools/graphics/mangohud {
4454     libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
4455     mangohud32 = pkgsi686Linux.mangohud;
4456     inherit (python3Packages) mako;
4457   };
4459   marimo = with python3Packages; toPythonApplication marimo;
4461   mecab =
4462     let
4463       mecab-nodic = callPackage ../tools/text/mecab/nodic.nix { };
4464     in
4465     callPackage ../tools/text/mecab {
4466       mecab-ipadic = callPackage ../tools/text/mecab/ipadic.nix {
4467         inherit mecab-nodic;
4468       };
4469     };
4471   mbutil = python310Packages.callPackage ../applications/misc/mbutil { };
4473   mcstatus = with python3Packages; toPythonApplication mcstatus;
4475   miniupnpd = callPackage ../tools/networking/miniupnpd { };
4477   miniupnpd-nftables = callPackage ../tools/networking/miniupnpd { firewall = "nftables"; };
4479   minijail = callPackage ../tools/system/minijail { };
4481   minijail-tools = python3.pkgs.callPackage ../tools/system/minijail/tools.nix { };
4483   mir-qualia = callPackage ../tools/text/mir-qualia {
4484     pythonPackages = python3Packages;
4485   };
4487   mitmproxy = with python3Packages; toPythonApplication mitmproxy;
4489   mjpegtoolsFull = mjpegtools.override {
4490     withMinimal = false;
4491   };
4493   mkpasswd = hiPrio (callPackage ../tools/security/mkpasswd { });
4495   molecule = with python3Packages; toPythonApplication molecule;
4497   monolith = callPackage ../tools/backup/monolith {
4498     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
4499   };
4501   moreutils = callPackage ../tools/misc/moreutils {
4502     docbook-xsl = docbook_xsl;
4503   };
4505   morgen = callPackage ../applications/office/morgen {
4506     electron = electron_32;
4507   };
4509   metasploit = callPackage ../tools/security/metasploit { };
4511   mhost = callPackage ../applications/networking/mhost {
4512     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
4513   };
4515   mtools = callPackage ../tools/filesystems/mtools { };
4517   mtr = callPackage ../tools/networking/mtr { };
4519   mtr-gui = callPackage ../tools/networking/mtr { withGtk = true; };
4521   multipass = qt6Packages.callPackage ../tools/virtualization/multipass { };
4523   multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in {
4524     multitrandata = callPackage ../tools/text/multitran/data { };
4526     libbtree = callPackage ../tools/text/multitran/libbtree { };
4528     libmtsupport = callPackage ../tools/text/multitran/libmtsupport { };
4530     libfacet = callPackage ../tools/text/multitran/libfacet { };
4532     libmtquery = callPackage ../tools/text/multitran/libmtquery { };
4534     mtutils = callPackage ../tools/text/multitran/mtutils { };
4535   });
4537   mytetra = libsForQt5.callPackage ../applications/office/mytetra { };
4539   navilu-font = callPackage ../data/fonts/navilu { stdenv = stdenvNoCC; };
4541   nerdfonts = callPackage ../data/fonts/nerdfonts { };
4543   netcdf-mpi = netcdf.override {
4544     hdf5 = hdf5-mpi.override { usev110Api = true; };
4545   };
4547   netcdffortran = callPackage ../development/libraries/netcdf-fortran {
4548     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices SystemConfiguration;
4549   };
4551   inherit (callPackage ../servers/web-apps/netbox { }) netbox_3_7;
4553   # Not in aliases because it wouldn't get picked up by callPackage
4554   netbox = netbox_4_1;
4556   netcat = libressl.nc.overrideAttrs (old: {
4557     meta = old.meta // {
4558       mainProgram = "nc";
4559     };
4560   });
4562   netlify-cli = callPackage ../development/web/netlify-cli { };
4564   netpbm = callPackage ../tools/graphics/netpbm { };
4566   networkmanager = callPackage ../tools/networking/networkmanager { };
4568   libnma = callPackage ../tools/networking/networkmanager/libnma { };
4570   libnma-gtk4 = libnma.override { withGtk4 = true; };
4572   nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { };
4574   inherit (callPackages ../servers/nextcloud {})
4575     nextcloud28 nextcloud29 nextcloud30;
4577   nextcloud28Packages = callPackage ../servers/nextcloud/packages {
4578     apps = lib.importJSON ../servers/nextcloud/packages/28.json;
4579   };
4580   nextcloud29Packages = callPackage ../servers/nextcloud/packages {
4581     apps = lib.importJSON ../servers/nextcloud/packages/29.json;
4582   };
4583   nextcloud30Packages = callPackage ../servers/nextcloud/packages {
4584     apps = lib.importJSON ../servers/nextcloud/packages/30.json;
4585   };
4588   nextcloud-client = qt6Packages.callPackage ../applications/networking/nextcloud-client { };
4590   nextcloud-news-updater = callPackage ../servers/nextcloud/news-updater.nix { };
4592   nextcloud-notify_push = callPackage ../servers/nextcloud/notify_push.nix { };
4594   inherit (callPackages ../applications/networking/cluster/nomad { })
4595     nomad
4596     nomad_1_4
4597     nomad_1_5
4598     nomad_1_6
4599     nomad_1_7
4600     nomad_1_8
4601     nomad_1_9
4602     ;
4604   nth = with python3Packages; toPythonApplication name-that-hash;
4606   nvchecker = with python3Packages; toPythonApplication (
4607     nvchecker.overridePythonAttrs (oldAttrs: {
4608       propagatedBuildInputs = oldAttrs.propagatedBuildInputs
4609         ++ lib.flatten (builtins.attrValues oldAttrs.optional-dependencies);
4610     })
4611   );
4613   nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher;
4616   mkgmap = callPackage ../applications/misc/mkgmap { };
4618   mkgmap-splitter = callPackage ../applications/misc/mkgmap/splitter { };
4620   op-geth = callPackage ../applications/blockchains/optimism/geth.nix {
4621     inherit (darwin) libobjc;
4622     inherit (darwin.apple_sdk.frameworks) IOKit;
4623   };
4625   optimism = callPackage ../applications/blockchains/optimism { };
4627   pandoc-acro = python3Packages.callPackage ../tools/misc/pandoc-acro { };
4629   pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { };
4631   pandoc-include = python3Packages.callPackage ../tools/misc/pandoc-include { };
4633   pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { };
4635   pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { };
4637   # pandoc-*nos is a filter suite, where pandoc-xnos has all functionality and the others are used for only specific functionality
4638   pandoc-eqnos = python3Packages.callPackage ../tools/misc/pandoc-eqnos { };
4639   pandoc-fignos = python3Packages.callPackage ../tools/misc/pandoc-fignos { };
4640   pandoc-secnos = python3Packages.callPackage ../tools/misc/pandoc-secnos { };
4641   pandoc-tablenos = python3Packages.callPackage ../tools/misc/pandoc-tablenos { };
4643   pegasus-frontend = libsForQt5.callPackage ../games/pegasus-frontend {};
4645   pgbadger = perlPackages.callPackage ../tools/misc/pgbadger { };
4647   nifskope = libsForQt5.callPackage ../tools/graphics/nifskope { };
4649   nlopt = callPackage ../development/libraries/nlopt { octave = null; };
4651   notation = callPackage ../by-name/no/notation/package.nix {
4652     buildGoModule = buildGo123Module;
4653   };
4655   nsjail = callPackage ../tools/security/nsjail {
4656     protobuf = protobuf_21;
4657   };
4659   ntfs3g = callPackage ../tools/filesystems/ntfs-3g {
4660     inherit (darwin.apple_sdk.frameworks) DiskArbitration;
4661   };
4663   # ntfsprogs are merged into ntfs-3g
4664   ntfsprogs = pkgs.ntfs3g;
4666   ntfy = callPackage ../tools/misc/ntfy { };
4668   ntfy-sh = callPackage ../tools/misc/ntfy-sh { };
4670   nvfancontrol = callPackage ../tools/misc/nvfancontrol {
4671     libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
4672   };
4674   nwdiag = with python3Packages; toPythonApplication nwdiag;
4676   nxdomain = python3.pkgs.callPackage ../tools/networking/nxdomain { };
4678   octofetch = callPackage ../tools/misc/octofetch {
4679     inherit (darwin.apple_sdk.frameworks) Security;
4680   };
4682   onetun = callPackage ../tools/networking/onetun {
4683     inherit (darwin.apple_sdk.frameworks) Security;
4684   };
4686   openobserve = darwin.apple_sdk_11_0.callPackage ../servers/monitoring/openobserve {
4687     apple_sdk = darwin.apple_sdk_11_0;
4688   };
4690   ofono-phonesim = libsForQt5.callPackage ../development/tools/ofono-phonesim { };
4692   ola = callPackage ../applications/misc/ola {
4693     protobuf = protobuf_21;
4694   };
4696   olive-editor = qt6Packages.callPackage ../applications/video/olive-editor {
4697     inherit (darwin.apple_sdk.frameworks) CoreFoundation;
4698   };
4700   ombi = callPackage ../servers/ombi { };
4702   ome_zarr = with python3Packages; toPythonApplication ome-zarr;
4704   onefetch = callPackage ../tools/misc/onefetch {
4705     inherit (darwin) libresolv;
4706     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
4707   };
4709   onlykey = callPackage ../tools/security/onlykey { node_webkit = nwjs; };
4711   openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { jre = pkgs.jre_headless; };
4713   openboard = libsForQt5.callPackage ../applications/graphics/openboard { };
4715   opendht = callPackage ../development/libraries/opendht  {
4716     inherit (darwin.apple_sdk.frameworks) Security;
4717   };
4719   ophcrack-cli = ophcrack.override { enableGui = false; };
4721   ophis = python3Packages.callPackage ../development/compilers/ophis { };
4723   open-interpreter = with python3Packages; toPythonApplication open-interpreter;
4725   openhantek6022 = libsForQt5.callPackage ../applications/science/electronics/openhantek6022 { };
4727   openmvg = callPackage ../applications/science/misc/openmvg {
4728     inherit (llvmPackages) openmp;
4729   };
4731   openmvs = callPackage ../applications/science/misc/openmvs {
4732     inherit (llvmPackages) openmp;
4733   };
4735   openntpd_nixos = openntpd.override {
4736     privsepUser = "ntp";
4737     privsepPath = "/var/empty";
4738   };
4740   openrefine = callPackage ../applications/science/misc/openrefine { jdk = jdk17; };
4742   openrgb = libsForQt5.callPackage ../applications/misc/openrgb { };
4744   openrgb-with-all-plugins = openrgb.withPlugins [
4745     openrgb-plugin-effects
4746     openrgb-plugin-hardwaresync
4747   ];
4749   openrgb-plugin-effects = libsForQt5.callPackage ../applications/misc/openrgb-plugins/effects { };
4751   openrgb-plugin-hardwaresync = libsForQt5.callPackage ../applications/misc/openrgb-plugins/hardwaresync { };
4753   toastify = darwin.apple_sdk_11_0.callPackage ../tools/misc/toastify {};
4755   opensshPackages = dontRecurseIntoAttrs (callPackage ../tools/networking/openssh {});
4757   openssh = opensshPackages.openssh.override {
4758     etcDir = "/etc/ssh";
4759   };
4761   opensshTest = openssh.tests.openssh;
4763   opensshWithKerberos = openssh.override {
4764     withKerberos = true;
4765   };
4767   openssh_hpn = opensshPackages.openssh_hpn.override {
4768     etcDir = "/etc/ssh";
4769   };
4771   openssh_hpnWithKerberos = openssh_hpn.override {
4772     withKerberos = true;
4773   };
4775   openssh_gssapi = opensshPackages.openssh_gssapi.override {
4776     etcDir = "/etc/ssh";
4777     withKerberos = true;
4778   };
4780   ssh-copy-id = callPackage ../tools/networking/openssh/copyid.nix { };
4782   sshd-openpgp-auth = callPackage ../by-name/ss/ssh-openpgp-auth/daemon.nix { };
4784   opentrack = libsForQt5.callPackage ../applications/misc/opentrack { };
4786   openvpn = callPackage ../tools/networking/openvpn {};
4788   openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
4790   openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix {
4791     inherit (llvmPackages_17) stdenv;
4792   };
4794   namespaced-openvpn = python3Packages.callPackage ../tools/networking/namespaced-openvpn { };
4796   update-dotdee = with python3Packages; toPythonApplication update-dotdee;
4798   update-nix-fetchgit = haskell.lib.compose.justStaticExecutables haskellPackages.update-nix-fetchgit;
4800   update-resolv-conf = callPackage ../tools/networking/openvpn/update-resolv-conf.nix { };
4802   update-systemd-resolved = callPackage ../tools/networking/openvpn/update-systemd-resolved.nix { };
4804   opentelemetry-collector = callPackage ../tools/misc/opentelemetry-collector { };
4805   opentelemetry-collector-contrib = callPackage ../tools/misc/opentelemetry-collector/contrib.nix { };
4807   openvswitch-dpdk = callPackage ../by-name/op/openvswitch/package.nix { withDPDK = true; };
4809   optifinePackages = callPackage ../tools/games/minecraft/optifine { };
4811   optifine = optifinePackages.optifine-latest;
4813   opl3bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor { };
4814   opn2bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor/opn2bankeditor.nix { };
4816   orangefs = callPackage ../tools/filesystems/orangefs {
4817     autoreconfHook = buildPackages.autoreconfHook269;
4818   };
4820   osl = libsForQt5.callPackage ../development/compilers/osl {
4821     boost = boost179;
4822     libclang = llvmPackages_15.libclang;
4823     clang = clang_15;
4824     llvm = llvm_15;
4825     openexr = openexr_3;
4826   };
4828   ossec-agent = callPackage ../tools/security/ossec/agent.nix { };
4830   ossec-server = callPackage ../tools/security/ossec/server.nix { };
4832   ovito = qt6Packages.callPackage ../applications/graphics/ovito {
4833     inherit (darwin.apple_sdk.frameworks) VideoDecodeAcceleration;
4834   };
4836   oxidized = callPackage ../tools/admin/oxidized { };
4838   p4c = callPackage ../development/compilers/p4c {
4839     protobuf = protobuf_21;
4840   };
4842   p7zip = callPackage ../tools/archivers/p7zip { };
4843   p7zip-rar = p7zip.override { enableUnfree = true; };
4845   packagekit = callPackage ../tools/package-management/packagekit { };
4847   padthv1 = libsForQt5.callPackage ../applications/audio/padthv1 { };
4849   pageedit = libsForQt5.callPackage ../applications/office/PageEdit {
4850     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
4851   };
4853   pagefind = libsForQt5.callPackage ../applications/misc/pagefind { };
4855   pakcs = callPackage ../development/compilers/pakcs { };
4857   paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { };
4859   parallel = callPackage ../tools/misc/parallel { };
4861   parallel-full = callPackage ../tools/misc/parallel/wrapper.nix { };
4863   parcellite = callPackage ../tools/misc/parcellite {
4864     autoreconfHook = buildPackages.autoreconfHook269;
4865   };
4867   parrot = callPackage ../applications/audio/parrot {
4868     inherit (darwin.apple_sdk.frameworks) Security;
4869   };
4871   patchutils = callPackage ../tools/text/patchutils { };
4873   patchutils_0_3_3 = callPackage ../tools/text/patchutils/0.3.3.nix { };
4875   patchutils_0_4_2 = callPackage ../tools/text/patchutils/0.4.2.nix { };
4877   inherit (import ../servers/sql/percona-server pkgs) percona-server_8_0 percona-server_8_4 percona-server;
4878   inherit (import ../tools/backup/percona-xtrabackup pkgs) percona-xtrabackup_8_0 percona-xtrabackup_8_4 percona-xtrabackup;
4880   pipecontrol = libsForQt5.callPackage ../applications/audio/pipecontrol { };
4882   pulumiPackages = recurseIntoAttrs (
4883     callPackage ../tools/admin/pulumi-packages { }
4884   );
4886   pulumi-bin = callPackage ../tools/admin/pulumi-bin { };
4888   patch = gnupatch;
4890   patchance = python3Packages.callPackage ../applications/audio/patchance { };
4892   pciutils = callPackage ../tools/system/pciutils {
4893     inherit (darwin.apple_sdk.frameworks) IOKit;
4894   };
4896   pcsclite = callPackage ../tools/security/pcsclite {
4897     inherit (darwin.apple_sdk.frameworks) Foundation IOKit;
4898   };
4900   pcscliteWithPolkit = pcsclite.override {
4901     pname = "pcsclite-with-polkit";
4902     polkitSupport = true;
4903   };
4905   pcsc-tools = callPackage ../tools/security/pcsc-tools {
4906     inherit (pkgs.darwin.apple_sdk.frameworks) PCSC;
4907   };
4909   pdd = python3Packages.callPackage ../tools/misc/pdd { };
4911   pdfposter = callPackage ../applications/misc/pdfposter { };
4913   pdfminer = with python3Packages; toPythonApplication pdfminer-six;
4915   pgsync = callPackage ../development/tools/database/pgsync { };
4917   pdsh = callPackage ../tools/networking/pdsh {
4918     rsh = true;          # enable internal rsh implementation
4919     ssh = openssh;
4920   };
4922   pfstools = libsForQt5.callPackage ../tools/graphics/pfstools { };
4924   phoc = callPackage ../applications/misc/phoc {
4925     wlroots = wlroots_0_17;
4926   };
4928   piper-train = callPackage ../tools/audio/piper/train.nix { };
4929   piper-tts = callPackage ../tools/audio/piper { };
4931   phosh = callPackage ../applications/window-managers/phosh { };
4933   phosh-mobile-settings = callPackage ../applications/window-managers/phosh/phosh-mobile-settings.nix { };
4935   inherit (callPackages ../tools/security/pinentry { })
4936     pinentry-curses
4937     pinentry-emacs
4938     pinentry-gtk2
4939     pinentry-gnome3
4940     pinentry-qt
4941     pinentry-tty
4942     pinentry-all;
4944   pinentry_mac = callPackage ../tools/security/pinentry/mac.nix {
4945     inherit (darwin.apple_sdk.frameworks) Cocoa;
4946   };
4948   pingu = callPackage ../tools/networking/pingu {
4949     buildGoModule = buildGo122Module;
4950   };
4952   pinnwand = callPackage ../servers/pinnwand { };
4954   piping-server-rust = callPackage ../servers/piping-server-rust {
4955     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
4956   };
4958   pinyin-tool = callPackage ../tools/text/pinyin-tool {
4959     inherit (darwin.apple_sdk.frameworks) Security;
4960   };
4962   plan9port = darwin.apple_sdk_11_0.callPackage ../tools/system/plan9port {
4963     inherit (darwin.apple_sdk_11_0.frameworks) Carbon Cocoa IOKit Metal QuartzCore;
4964     inherit (darwin) DarwinTools;
4965   };
4967   platformioPackages = dontRecurseIntoAttrs (callPackage ../development/embedded/platformio { });
4968   platformio = if stdenv.hostPlatform.isLinux then platformioPackages.platformio-chrootenv else platformioPackages.platformio-core;
4969   platformio-core = platformioPackages.platformio-core;
4971   playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { };
4973   playwright-driver = (callPackage ../development/web/playwright/driver.nix { }).playwright-core;
4974   playwright-test = (callPackage ../development/web/playwright/driver.nix { }).playwright-test;
4976   inherit (callPackage ../servers/plik { })
4977     plik plikd;
4979   plex = callPackage ../servers/plex { };
4981   plexRaw = callPackage ../servers/plex/raw.nix { };
4983   tabview = with python3Packages; toPythonApplication tabview;
4985   tautulli = python3Packages.callPackage ../servers/tautulli { };
4987   pleroma = callPackage ../servers/pleroma {
4988     elixir = elixir_1_17;
4989     beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_17; });
4990   };
4992   plfit = callPackage ../tools/misc/plfit {
4993     python = null;
4994   };
4996   pngpaste = callPackage ../os-specific/darwin/pngpaste {
4997     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
4998   };
5000   inherit (callPackage ../development/tools/pnpm { })
5001     pnpm_8 pnpm_9;
5002   pnpm = pnpm_9;
5004   po4a = perlPackages.Po4a;
5006   poac = callPackage ../development/tools/poac {
5007     inherit (llvmPackages_14) stdenv;
5008   };
5010   podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose { };
5012   podman-desktop = callPackage ../applications/virtualization/podman-desktop {
5013     inherit (darwin) autoSignDarwinBinariesHook;
5014   };
5016   poedit = callPackage ../tools/text/poedit {
5017     wxGTK32 = wxGTK32.override { withWebKit = true; };
5018   };
5020   polaris = callPackage ../servers/polaris { };
5022   polaris-web = callPackage ../servers/polaris/web.nix { };
5024   povray = callPackage ../tools/graphics/povray {
5025     # https://github.com/POV-Ray/povray/issues/460
5026     # https://github.com/NixOS/nixpkgs/issues/311017
5027     stdenv = gcc12Stdenv;
5028   };
5030   projectlibre = callPackage ../applications/misc/projectlibre {
5031     jre = jre8;
5032     jdk = jdk8;
5033   };
5035   projectm = libsForQt5.callPackage ../applications/audio/projectm { };
5037   proxmark3 = libsForQt5.callPackage ../tools/security/proxmark3/default.nix {
5038     inherit (darwin.apple_sdk_11_0.frameworks) Foundation AppKit;
5039     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
5040   };
5042   pws = callPackage ../tools/misc/pws { };
5044   pwninit = callPackage ../development/tools/misc/pwninit {
5045     inherit (darwin.apple_sdk.frameworks) Security;
5046   };
5048   pycflow2dot = with python3.pkgs; toPythonApplication pycflow2dot;
5050   pyinfra = with python3Packages; toPythonApplication pyinfra;
5052   pylint = with python3Packages; toPythonApplication pylint;
5054   pyocd = with python3Packages; toPythonApplication pyocd;
5056   pypass = with python3Packages; toPythonApplication pypass;
5058   py-spy = darwin.apple_sdk_11_0.callPackage ../development/tools/py-spy {
5059     # https://github.com/benfred/py-spy/issues/633
5060     python3 = python311;
5061   };
5063   pydeps = with python3Packages; toPythonApplication pydeps;
5065   pywal = with python3Packages; toPythonApplication pywal;
5067   raysession = python3Packages.callPackage ../applications/audio/raysession {};
5069   remarshal = with python3Packages; toPythonApplication remarshal;
5071   riseup-vpn = qt6Packages.callPackage ../tools/networking/bitmask-vpn {
5072     provider = "riseup";
5073     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
5074   };
5076   rocket = libsForQt5.callPackage ../tools/graphics/rocket { };
5078   rtabmap = libsForQt5.callPackage ../applications/video/rtabmap/default.nix {
5079     pcl = pcl.override { vtk = vtkWithQt5; };
5080   };
5082   rtaudio = callPackage ../development/libraries/audio/rtaudio {
5083     jack = libjack2;
5084     inherit (darwin.apple_sdk.frameworks) CoreAudio;
5085   };
5087   rtmidi = callPackage ../development/libraries/audio/rtmidi {
5088     jack = libjack2;
5089     inherit (darwin.apple_sdk.frameworks) CoreMIDI CoreAudio CoreServices;
5090   };
5092   mpi = openmpi; # this attribute should used to build MPI applications
5093   openmodelica = recurseIntoAttrs (callPackage ../applications/science/misc/openmodelica {});
5095   prowlarr = callPackage ../servers/prowlarr { };
5097   qarte = libsForQt5.callPackage ../applications/video/qarte { };
5099   qdrant = darwin.apple_sdk_11_0.callPackage ../servers/search/qdrant {
5100     inherit (darwin.apple_sdk_11_0.frameworks) Security SystemConfiguration;
5101   };
5103   qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { };
5105   qlog = qt6Packages.callPackage ../applications/radio/qlog { };
5107   quickbms = pkgsi686Linux.callPackage ../tools/archivers/quickbms { };
5109   qalculate-qt = qt6Packages.callPackage ../applications/science/math/qalculate-qt { };
5111   qastools = libsForQt5.callPackage ../tools/audio/qastools { };
5113   qdigidoc = libsForQt5.callPackage ../tools/security/qdigidoc { } ;
5115   qjournalctl = libsForQt5.callPackage ../applications/system/qjournalctl { };
5117   qjoypad = libsForQt5.callPackage ../tools/misc/qjoypad { };
5119   qmarkdowntextedit = libsForQt5.callPackage  ../development/libraries/qmarkdowntextedit { };
5121   qosmic = libsForQt5.callPackage ../applications/graphics/qosmic { };
5123   qownnotes = qt6Packages.callPackage ../applications/office/qownnotes {
5124     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
5125   };
5127   qtikz = libsForQt5.callPackage ../applications/graphics/ktikz { };
5129   qtspim = libsForQt5.callPackage ../development/tools/misc/qtspim { };
5131   quictls = callPackage ../development/libraries/quictls { };
5133   quickwit = callPackage ../servers/search/quickwit {
5134     inherit (darwin.apple_sdk.frameworks) Security;
5135   };
5137   quota = if stdenv.hostPlatform.isLinux then linuxquota else unixtools.quota;
5139   qvge = libsForQt5.callPackage ../applications/graphics/qvge { };
5141   qview = libsForQt5.callPackage ../applications/graphics/qview { };
5143   wayback_machine_downloader = callPackage ../applications/networking/wayback_machine_downloader { };
5145   radarr = callPackage ../servers/radarr { };
5147   radeon-profile = libsForQt5.callPackage ../tools/misc/radeon-profile { };
5149   rainbowstream = with python3.pkgs; toPythonApplication rainbowstream;
5151   rapidgzip = with python3Packages; toPythonApplication rapidgzip;
5153   rar = callPackage ../tools/archivers/rar { };
5155   ratarmount = with python3Packages; toPythonApplication ratarmount;
5157   rdbtools = callPackage ../development/tools/rdbtools { python = python3; };
5159   retext = qt6Packages.callPackage ../applications/editors/retext { };
5161   inherit (callPackage ../tools/security/rekor { })
5162     rekor-cli
5163     rekor-server;
5165   rst2pdf = with python3Packages; toPythonApplication rst2pdf;
5167   rstcheck = with python3Packages; toPythonApplication rstcheck;
5169   rtmpdump_gnutls = rtmpdump.override { gnutlsSupport = true; opensslSupport = false; };
5171   qt-box-editor = libsForQt5.callPackage ../applications/misc/qt-box-editor { };
5173   recoll = libsForQt5.callPackage ../applications/search/recoll { };
5175   recoll-nox = recoll.override { withGui = false; };
5177   remmina = darwin.apple_sdk_11_0.callPackage ../applications/networking/remote/remmina { };
5179   reckon = callPackage ../tools/text/reckon { };
5181   remote-exec = python3Packages.callPackage ../tools/misc/remote-exec { };
5183   reptor = with python3.pkgs; toPythonApplication reptor;
5185   rescuetime = libsForQt5.callPackage ../applications/misc/rescuetime { };
5187   inherit (callPackage ../development/misc/resholve { })
5188     resholve;
5190   reuse = with python3.pkgs; toPythonApplication reuse;
5192   riemann-tools = callPackage ../tools/misc/riemann-tools { };
5194   rmlint = callPackage ../tools/misc/rmlint {
5195     inherit (python3Packages) sphinx;
5196   };
5198   # Use `apple_sdk_11_0` because `apple_sdk.libs` does not provide `simd`
5199   rnnoise-plugin = darwin.apple_sdk_11_0.callPackage ../development/libraries/rnnoise-plugin {
5200     inherit (darwin.apple_sdk_11_0.frameworks) WebKit MetalKit CoreAudioKit;
5201     inherit (darwin.apple_sdk_11_0.libs) simd;
5202   };
5204   rosegarden = libsForQt5.callPackage ../applications/audio/rosegarden { };
5206   rosenpass = callPackage ../tools/networking/rosenpass  { };
5208   rosenpass-tools = callPackage ../tools/networking/rosenpass/tools.nix  { };
5210   rpm = callPackage ../tools/package-management/rpm {
5211     python = python3;
5212     lua = lua5_4;
5213   };
5215   rsibreak = libsForQt5.callPackage ../applications/misc/rsibreak { };
5217   rss2email = callPackage ../applications/networking/feedreaders/rss2email {
5218     pythonPackages = python3Packages;
5219   };
5221   rubocop = rubyPackages.rubocop;
5223   ruby-lsp = rubyPackages.ruby-lsp;
5225   ruplacer = callPackage ../tools/text/ruplacer {
5226     inherit (darwin.apple_sdk.frameworks) Security;
5227   };
5229   rust-motd = callPackage ../tools/misc/rust-motd {
5230     inherit (darwin.apple_sdk.frameworks) Security;
5231   };
5233   rustcat = callPackage ../tools/networking/rustcat {
5234     inherit (darwin.apple_sdk.frameworks) Security;
5235   };
5237   rustscan = callPackage ../tools/security/rustscan {
5238     inherit (darwin.apple_sdk.frameworks) Security;
5239   };
5241   rustdesk-server = callPackage ../servers/rustdesk-server {
5242     inherit (darwin.apple_sdk.frameworks) Security;
5243   };
5245   s3fs = darwin.apple_sdk_11_0.callPackage ../tools/filesystems/s3fs { };
5247   s3cmd = python3Packages.callPackage ../tools/networking/s3cmd { };
5249   s3rs = callPackage ../tools/networking/s3rs {
5250     inherit (darwin.apple_sdk.frameworks) Security;
5251   };
5253   s3-credentials = with python3Packages; toPythonApplication s3-credentials;
5255   safety-cli = with python3.pkgs; toPythonApplication safety;
5257   saml2aws = callPackage ../tools/security/saml2aws {
5258     inherit (darwin.apple_sdk.frameworks) AppKit;
5259   };
5261   sasview = libsForQt5.callPackage ../applications/science/misc/sasview { };
5263   screen = callPackage ../tools/misc/screen {
5264     inherit (darwin.apple_sdk.libs) utmp;
5265   };
5267   scfbuild = python3.pkgs.callPackage ../tools/misc/scfbuild { };
5269   sd = callPackage ../tools/text/sd {
5270     inherit (darwin.apple_sdk.frameworks) Security;
5271   };
5273   securefs = darwin.apple_sdk_11_0.callPackage ../tools/filesystems/securefs { };
5275   segger-jlink-headless = callPackage ../by-name/se/segger-jlink/package.nix { headless = true; };
5277   selectdefaultapplication = libsForQt5.callPackage ../applications/misc/selectdefaultapplication { };
5279   semgrep = python3.pkgs.toPythonApplication python3.pkgs.semgrep;
5280   inherit (semgrep.passthru) semgrep-core;
5282   seqdiag = with python3Packages; toPythonApplication seqdiag;
5284   shadowsocks-rust = callPackage ../tools/networking/shadowsocks-rust {
5285     inherit (darwin.apple_sdk.frameworks) Security CoreServices;
5286   };
5288   shellify = haskellPackages.shellify.bin;
5290   sharedown = callPackage ../tools/misc/sharedown { };
5292   shiv = with python3Packages; toPythonApplication shiv;
5294   sigil = libsForQt5.callPackage ../applications/editors/sigil { };
5296   inherit (callPackage ../applications/networking/instant-messengers/signal-desktop {}) signal-desktop signal-desktop-beta;
5298   slither-analyzer = with python3Packages; toPythonApplication slither-analyzer;
5300   # aka., pgp-tools
5301   simplescreenrecorder = libsForQt5.callPackage ../applications/video/simplescreenrecorder { };
5303   sisco.lv2 = callPackage ../applications/audio/sisco.lv2 { };
5305   sks = callPackage ../servers/sks {
5306     ocamlPackages = ocaml-ng.ocamlPackages_4_12;
5307   };
5309   slowlorust = callPackage ../tools/networking/slowlorust {
5310     inherit (darwin.apple_sdk.frameworks) Security;
5311   };
5313   slstatus = callPackage ../applications/misc/slstatus {
5314     conf = config.slstatus.conf or null;
5315   };
5317   smartmontools = callPackage ../tools/system/smartmontools {
5318     inherit (darwin.apple_sdk.frameworks) IOKit ApplicationServices;
5319   };
5321   smpq = callPackage ../by-name/sm/smpq/package.nix {
5322     stormlib = stormlib.overrideAttrs (old: {
5323       version = "9.22";
5324       src = fetchFromGitHub {
5325         owner = "ladislav-zezula";
5326         repo = "StormLib";
5327         rev = "v9.22";
5328         hash = "sha256-jFUfxLzuRHAvFE+q19i6HfGcL6GX4vKL1g7l7LOhjeU=";
5329       };
5330     });
5331   };
5333   snapcast = darwin.apple_sdk_11_0.callPackage ../applications/audio/snapcast {
5334     inherit (darwin.apple_sdk_11_0.frameworks) IOKit AudioToolbox;
5335     pulseaudioSupport = config.pulseaudio or stdenv.hostPlatform.isLinux;
5336   };
5338   soapui = callPackage ../applications/networking/soapui {
5339     jdk = jdk11;
5340   };
5342   specup = haskellPackages.specup.bin;
5344   spglib = callPackage ../development/libraries/spglib {
5345     inherit (llvmPackages) openmp;
5346   };
5348   # to match naming of other package repositories
5349   spire-agent = spire.agent;
5350   spire-server = spire.server;
5352   spoof-mac = python3Packages.callPackage ../tools/networking/spoof-mac { };
5354   suricata = callPackage ../applications/networking/ids/suricata {
5355     python = python3;
5356     libbpf = libbpf_0;
5357   };
5359   softhsm = callPackage ../tools/security/softhsm {
5360     inherit (darwin) libobjc;
5361     inherit (darwin.apple_sdk.frameworks) Security;
5362   };
5364   soundkonverter = libsForQt5.soundkonverter;
5366   sparrow-unwrapped = callPackage ../applications/blockchains/sparrow {
5367     openimajgrabber = callPackage ../applications/blockchains/sparrow/openimajgrabber.nix {};
5368     openjdk = jdk23.override { enableJavaFX = true; };
5369   };
5371   sparrow = callPackage ../applications/blockchains/sparrow/fhsenv.nix { };
5373   steck = callPackage ../servers/pinnwand/steck.nix { };
5375   stm32loader = with python3Packages; toPythonApplication stm32loader;
5377   stremio = qt5.callPackage ../applications/video/stremio { };
5379   solanum = callPackage ../servers/irc/solanum {
5380     autoreconfHook = buildPackages.autoreconfHook269;
5381   };
5383   solc-select = with python3Packages; toPythonApplication solc-select;
5385   splot = haskell.lib.compose.justStaticExecutables haskellPackages.splot;
5387   squashfs-tools-ng = darwin.apple_sdk_11_0.callPackage ../tools/filesystems/squashfs-tools-ng { };
5389   sourcehut = callPackage ../applications/version-management/sourcehut { };
5391   sshfs = sshfs-fuse; # added 2017-08-14
5393   inherit (callPackages ../tools/misc/sshx { })
5394     sshx
5395     sshx-server;
5397   strip-nondeterminism = perlPackages.strip-nondeterminism;
5399   subsurface = libsForQt5.callPackage ../applications/misc/subsurface { };
5401   sumorobot-manager = python3Packages.callPackage ../applications/science/robotics/sumorobot-manager { };
5403   sslscan = callPackage ../tools/security/sslscan {
5404     openssl = openssl.override { withZlib = true; };
5405   };
5407   stacer = libsForQt5.callPackage ../tools/system/stacer { };
5409   staticjinja = with python3.pkgs; toPythonApplication staticjinja;
5411   stoken = callPackage ../tools/security/stoken (config.stoken or {});
5413   stutter = haskell.lib.compose.justStaticExecutables haskellPackages.stutter;
5415   strongswanTNC = strongswan.override { enableTNC = true; };
5416   strongswanNM  = strongswan.override { enableNetworkManager = true; };
5418   stylish-haskell = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-haskell;
5420   su = shadow.su;
5422   subzerod = with python3Packages; toPythonApplication subzerod;
5424   suckit = callPackage ../tools/networking/suckit {
5425     inherit (darwin.apple_sdk.frameworks) Security;
5426   };
5428   system-config-printer = callPackage ../tools/misc/system-config-printer {
5429     autoreconfHook = buildPackages.autoreconfHook269;
5430     libxml2 = libxml2Python;
5431   };
5433   privoxy = callPackage ../tools/networking/privoxy {
5434     w3m = w3m-batch;
5435   };
5437   systemdgenie = libsForQt5.callPackage ../applications/system/systemdgenie { };
5439   t = callPackage ../tools/misc/t { };
5441   tabnine = callPackage ../development/tools/tabnine { };
5443   tab-rs = callPackage ../tools/misc/tab-rs {
5444     inherit (darwin.apple_sdk.frameworks) IOKit;
5445   };
5447   tandoor-recipes = callPackage ../applications/misc/tandoor-recipes { };
5449   tartube = callPackage ../applications/video/tartube { };
5451   tartube-yt-dlp = callPackage ../applications/video/tartube {
5452     youtube-dl = yt-dlp;
5453   };
5455   tcpreplay = callPackage ../tools/networking/tcpreplay {
5456     inherit (darwin.apple_sdk.frameworks) Carbon CoreServices;
5457   };
5459   teamviewer = libsForQt5.callPackage ../applications/networking/remote/teamviewer { };
5461   inherit (callPackages ../servers/teleport {
5462     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security AppKit;
5463     buildGoModule = buildGo122Module;
5464   }) teleport_15 teleport_16 teleport;
5466   telepresence = callPackage ../tools/networking/telepresence {
5467     pythonPackages = python3Packages;
5468   };
5470   texmacs = libsForQt5.callPackage ../applications/editors/texmacs {
5471     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
5472     extraFonts = true;
5473   };
5475   texmaker = qt6Packages.callPackage ../applications/editors/texmaker { };
5477   texstudio = qt6Packages.callPackage ../applications/editors/texstudio { };
5479   textadept = libsForQt5.callPackage ../applications/editors/textadept { };
5481   texworks = qt6Packages.callPackage ../applications/editors/texworks { };
5483   theLoungePlugins = let
5484     pkgs = lib.filterAttrs (name: _: lib.hasPrefix "thelounge-" name) nodePackages;
5485     getPackagesWithPrefix = prefix: lib.mapAttrs' (name: pkg: lib.nameValuePair (lib.removePrefix ("thelounge-" + prefix + "-") name) pkg)
5486       (lib.filterAttrs (name: _: lib.hasPrefix ("thelounge-" + prefix + "-") name) pkgs);
5487   in
5488   lib.recurseIntoAttrs {
5489     plugins = lib.recurseIntoAttrs (getPackagesWithPrefix "plugin");
5490     themes = lib.recurseIntoAttrs (getPackagesWithPrefix "theme");
5491   };
5493   thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { };
5495   tiled = libsForQt5.callPackage ../applications/editors/tiled { };
5497   timetrap = callPackage ../applications/office/timetrap { };
5499   tinc = callPackage ../tools/networking/tinc { };
5501   tikzit = libsForQt5.callPackage ../tools/typesetting/tikzit { };
5503   tinc_pre = callPackage ../tools/networking/tinc/pre.nix { };
5505   tldr-hs = haskellPackages.tldr;
5507   tmux-sessionizer = callPackage ../tools/misc/tmux-sessionizer {
5508     inherit (darwin.apple_sdk.frameworks) Security;
5509   };
5511   tmuxPlugins = recurseIntoAttrs (callPackage ../misc/tmux-plugins {
5512     pkgs = pkgs.__splicedPackages;
5513   });
5515   tokei = callPackage ../development/tools/misc/tokei {
5516     inherit (darwin.apple_sdk.frameworks) Security;
5517   };
5519   topgrade = callPackage ../tools/misc/topgrade {
5520     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Foundation;
5521   };
5523   tor = callPackage ../tools/security/tor { };
5525   torsocks = callPackage ../tools/security/tor/torsocks.nix { };
5527   toybox = darwin.apple_sdk_11_0.callPackage ../tools/misc/toybox { };
5529   trackma = callPackage ../tools/misc/trackma { };
5531   trackma-curses = trackma.override { withCurses = true; };
5533   trackma-gtk = trackma.override { withGTK = true; };
5535   trackma-qt = trackma.override { withQT = true; };
5537   tpmmanager = libsForQt5.callPackage ../applications/misc/tpmmanager { };
5539   trezorctl = with python3Packages; toPythonApplication trezor;
5541   trezord = callPackage ../servers/trezord {
5542     inherit (darwin.apple_sdk.frameworks) AppKit;
5543   };
5545   trezor-agent = with python3Packages; toPythonApplication trezor-agent;
5547   trunk-ng = callPackage ../by-name/tr/trunk-ng/package.nix {
5548     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
5549   };
5551   ttp = with python3.pkgs; toPythonApplication ttp;
5553   trace-cmd = callPackage ../os-specific/linux/trace-cmd { };
5555   kernelshark = qt6Packages.callPackage ../os-specific/linux/trace-cmd/kernelshark.nix { };
5557   tracee = callPackage ../tools/security/tracee {
5558     clang = clang_14;
5559   };
5561   translatelocally-models = recurseIntoAttrs (callPackages ../misc/translatelocally-models { });
5563   translatepy = with python3.pkgs; toPythonApplication translatepy;
5565   trenchbroom = libsForQt5.callPackage ../applications/misc/trenchbroom { };
5567   inherit (callPackage ../applications/office/trilium {})
5568     trilium-desktop
5569     trilium-server
5570     ;
5572   trytond = with python3Packages; toPythonApplication trytond;
5574   ttfautohint = libsForQt5.callPackage ../tools/misc/ttfautohint {
5575     autoreconfHook = buildPackages.autoreconfHook269;
5576   };
5577   ttfautohint-nox = ttfautohint.override { enableGUI = false; };
5579   tuifeed = callPackage ../applications/networking/feedreaders/tuifeed {
5580     inherit (darwin.apple_sdk.frameworks) Security;
5581   };
5583   tunnelto = callPackage ../tools/networking/tunnelto {
5584     inherit (darwin.apple_sdk.frameworks) Security;
5585   };
5587   twilight = callPackage ../tools/graphics/twilight {
5588     libX11 = xorg.libX11;
5589   };
5591   twitch-chat-downloader = python3Packages.callPackage ../applications/misc/twitch-chat-downloader { };
5593   twtxt = python3Packages.callPackage ../applications/networking/twtxt { };
5595   twurl = callPackage ../tools/misc/twurl { };
5597   typesense = callPackage ../servers/search/typesense { };
5599   ubidump = python3Packages.callPackage ../tools/filesystems/ubidump { };
5601   ubpm = libsForQt5.callPackage ../applications/misc/ubpm { };
5603   uftraceFull = uftrace.override {
5604     withLuaJIT = true;
5605     withPython = true;
5606   };
5608   unetbootin = libsForQt5.callPackage ../tools/cd-dvd/unetbootin { };
5610   unrpa = with python3Packages; toPythonApplication unrpa;
5612   usort = with python3Packages; toPythonApplication usort;
5614   vacuum = libsForQt5.callPackage ../applications/networking/instant-messengers/vacuum {};
5616   vampire = callPackage ../applications/science/logic/vampire { };
5618   vcmi = libsForQt5.callPackage ../games/vcmi { };
5620   video2midi = callPackage ../tools/audio/video2midi {
5621     pythonPackages = python3Packages;
5622   };
5624   vikunja = callPackage ../by-name/vi/vikunja/package.nix { pnpm = pnpm_9; };
5626   vimpager = callPackage ../tools/misc/vimpager { };
5627   vimpager-latest = callPackage ../tools/misc/vimpager/latest.nix { };
5629   vimwiki-markdown = python3Packages.callPackage ../tools/misc/vimwiki-markdown { };
5631   visidata = python3Packages.callPackage ../applications/misc/visidata { };
5633   vkbasalt = callPackage ../tools/graphics/vkbasalt {
5634     vkbasalt32 = pkgsi686Linux.vkbasalt;
5635   };
5637   vpn-slice = python3Packages.callPackage ../tools/networking/vpn-slice { };
5639   vpWithSixel = vp.override {
5640     # Enable next line for console graphics. Note that it requires `sixel`
5641     # enabled terminals such as mlterm or xterm -ti 340
5642     SDL = SDL_sixel;
5643   };
5645   openconnectPackages = callPackage ../tools/networking/openconnect { };
5647   inherit (openconnectPackages) openconnect openconnect_openssl;
5649   globalprotect-openconnect = libsForQt5.callPackage ../tools/networking/globalprotect-openconnect { };
5651   sssd = callPackage ../os-specific/linux/sssd {
5652     inherit (perlPackages) Po4a;
5653     # python312Packages.python-ldap is broken
5654     # https://github.com/NixOS/nixpkgs/issues/326296
5655     python3 = python311;
5656   };
5658   sentry-cli = callPackage ../development/tools/sentry-cli {
5659     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
5660   };
5662   waifu2x-converter-cpp = callPackage ../tools/graphics/waifu2x-converter-cpp {
5663     inherit (darwin.apple_sdk.frameworks) OpenCL;
5664   };
5666   watchexec = callPackage ../tools/misc/watchexec {
5667     inherit (darwin.apple_sdk.frameworks) Cocoa AppKit;
5668   };
5670   watchman = darwin.apple_sdk_11_0.callPackage ../development/tools/watchman {
5671     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices;
5672   };
5674   webassemblyjs-cli = nodePackages."@webassemblyjs/cli-1.11.1";
5675   webassemblyjs-repl = nodePackages."@webassemblyjs/repl-1.11.1";
5676   wasm-strip = nodePackages."@webassemblyjs/wasm-strip";
5677   wasm-text-gen = nodePackages."@webassemblyjs/wasm-text-gen-1.11.1";
5678   wast-refmt = nodePackages."@webassemblyjs/wast-refmt-1.11.1";
5680   wasmedge = callPackage ../development/tools/wasmedge {
5681     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else llvmPackages.stdenv;
5682     inherit (darwin.apple_sdk_11_0.frameworks) Foundation;
5683   };
5685   whatweb = callPackage ../tools/security/whatweb { };
5687   wireguard-tools = callPackage ../tools/networking/wireguard-tools { };
5689   wireguard-vanity-address = callPackage ../tools/networking/wireguard-vanity-address {
5690     inherit (darwin.apple_sdk.frameworks) Security;
5691   };
5693   wg-netmanager = callPackage ../tools/networking/wg-netmanager {
5694     inherit (darwin.apple_sdk.frameworks) Security;
5695   };
5697   woodpecker-agent = callPackage ../development/tools/continuous-integration/woodpecker/agent.nix { };
5699   woodpecker-cli = callPackage ../development/tools/continuous-integration/woodpecker/cli.nix { };
5701   woodpecker-server = callPackage ../development/tools/continuous-integration/woodpecker/server.nix { };
5703   wpscan = callPackage ../tools/security/wpscan { };
5705   testdisk = libsForQt5.callPackage ../tools/system/testdisk { };
5707   testdisk-qt = testdisk.override { enableQt = true; };
5709   htmldoc = callPackage ../tools/typesetting/htmldoc {
5710     inherit (darwin.apple_sdk.frameworks) SystemConfiguration Foundation;
5711   };
5713   td = callPackage ../tools/misc/td { };
5715   tweet-hs = haskell.lib.compose.justStaticExecutables haskellPackages.tweet-hs;
5717   tkgate = callPackage ../applications/science/electronics/tkgate/1.x.nix { };
5719   tremor-rs = darwin.apple_sdk_11_0.callPackage ../tools/misc/tremor-rs {
5720     inherit (darwin.apple_sdk_11_0.frameworks) Security;
5721   };
5723   tremor-language-server = callPackage ../tools/misc/tremor-rs/ls.nix { };
5725   truecrack-cuda = truecrack.override { cudaSupport = true; };
5727   turbovnc = callPackage ../tools/admin/turbovnc {
5728     # fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ];
5729     libjpeg_turbo = libjpeg_turbo.override { enableJava = true; };
5730   };
5732   ufmt = with python3Packages; toPythonApplication ufmt;
5734   uim = callPackage ../tools/inputmethods/uim {
5735     autoconf = buildPackages.autoconf269;
5736   };
5738   unbound-with-systemd = unbound.override {
5739     withSystemd = true;
5740   };
5742   unbound-full = unbound.override {
5743     python = python3;
5744     withSystemd = true;
5745     withPythonModule = true;
5746     withDoH = true;
5747     withECS = true;
5748     withDNSCrypt = true;
5749     withDNSTAP = true;
5750     withTFO = true;
5751     withRedis = true;
5752   };
5754   unicorn = callPackage ../development/libraries/unicorn {
5755     inherit (darwin.apple_sdk.frameworks) IOKit;
5756   };
5758   unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { };
5760   vuls = callPackage ../by-name/vu/vuls/package.nix {
5761     buildGoModule = buildGo123Module;
5762   };
5764   xdp-tools = callPackage ../tools/networking/xdp-tools {
5765     llvmPackages = llvmPackages_14;
5766   };
5768   ugarit = callPackage ../tools/backup/ugarit {
5769     inherit (chickenPackages_4) eggDerivation fetchegg;
5770   };
5772   ugarit-manifest-maker = callPackage ../tools/backup/ugarit-manifest-maker {
5773     inherit (chickenPackages_4) eggDerivation fetchegg;
5774   };
5776   unar = callPackage ../tools/archivers/unar {
5777     inherit (darwin.apple_sdk.frameworks) Foundation AppKit;
5778     stdenv = clangStdenv;
5779   };
5781   unzipNLS = lowPrio (unzip.override { enableNLS = true; });
5783   inherit (callPackages ../servers/varnish { })
5784     varnish60 varnish75;
5785   inherit (callPackages ../servers/varnish/packages.nix { })
5786     varnish60Packages varnish75Packages;
5788   varnishPackages = varnish75Packages;
5789   varnish = varnishPackages.varnish;
5791   viceroy = callPackage ../development/tools/viceroy {
5792     inherit (darwin.apple_sdk.frameworks) Security;
5793   };
5795   vncdo = with python3Packages; toPythonApplication vncdo;
5797   # An alias to work around the splicing incidents
5798   # Related:
5799   # https://github.com/NixOS/nixpkgs/issues/204303
5800   # https://github.com/NixOS/nixpkgs/issues/211340
5801   # https://github.com/NixOS/nixpkgs/issues/227327
5802   wafHook = waf.hook;
5804   wagyu = callPackage ../tools/misc/wagyu {
5805     inherit (darwin.apple_sdk.frameworks) Security;
5806   };
5808   web-eid-app = libsForQt5.callPackage ../tools/security/web-eid-app { };
5810   wio = callPackage ../by-name/wi/wio/package.nix {
5811     wlroots = wlroots_0_17;
5812   };
5814   wiiuse = callPackage ../development/libraries/wiiuse {
5815     inherit (darwin) libobjc;
5816     inherit (darwin.apple_sdk.frameworks) Foundation IOBluetooth;
5817   };
5819   wireguard-go = callPackage ../tools/networking/wireguard-go {
5820     buildGoModule = buildGo122Module;
5821   };
5823   wring = nodePackages.wring;
5825   wyrd = callPackage ../tools/misc/wyrd {
5826     ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
5827   };
5829   xbursttools = callPackage ../tools/misc/xburst-tools {
5830     # It needs a cross compiler for mipsel to build the firmware it will
5831     # load into the Ben Nanonote
5832     gccCross = pkgsCross.ben-nanonote.buildPackages.gccWithoutTargetLibc;
5833     autoconf = buildPackages.autoconf269;
5834   };
5836   clipbuzz = callPackage ../tools/misc/clipbuzz {
5837     zig = buildPackages.zig_0_12;
5838   };
5840   # A minimal xar is needed to break an infinite recursion between macfuse-stubs and xar.
5841   # It is also needed to reduce the amount of unnecessary stuff in the Darwin bootstrap.
5842   xarMinimal = callPackage ../by-name/xa/xar/package.nix { e2fsprogs = null; };
5844   xdelta = callPackage ../tools/compression/xdelta { };
5845   xdeltaUnstable = callPackage ../tools/compression/xdelta/unstable.nix { };
5847   xdot = with python3Packages; toPythonApplication xdot;
5849   xflux = callPackage ../tools/misc/xflux { };
5850   xflux-gui = python3Packages.callPackage ../tools/misc/xflux/gui.nix { };
5852   libxfs = xfsprogs.dev;
5854   xmlto = callPackage ../tools/typesetting/xmlto {
5855     w3m = w3m-batch;
5856   };
5858   xidlehook = callPackage ../tools/X11/xidlehook {
5859     inherit (darwin.apple_sdk.frameworks) Security;
5860   };
5862   xsv = callPackage ../tools/text/xsv {
5863     inherit (darwin.apple_sdk.frameworks) Security;
5864   };
5866   xtreemfs = callPackage ../tools/filesystems/xtreemfs {
5867     boost = boost179;
5868   };
5870   xorriso = libisoburn;
5872   xvfb-run = callPackage ../tools/misc/xvfb-run {
5873     inherit (texFunctions) fontsConf;
5874   };
5876   yapf = with python3Packages; toPythonApplication yapf;
5878   yarn-berry = callPackage ../development/tools/yarn-berry { };
5880   yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea/yarn2nix { pkgs = pkgs.__splicedPackages; };
5882   inherit (yarn2nix-moretea)
5883     yarn2nix
5884     mkYarnPackage
5885     mkYarnModules
5886     fixup_yarn_lock;
5888   yamlfix = with python3Packages; toPythonApplication yamlfix;
5890   yamllint = with python3Packages; toPythonApplication yamllint;
5892   # To expose more packages for Yi, override the extraPackages arg.
5893   yi = callPackage ../applications/editors/yi/wrapper.nix { };
5895   yaydl = callPackage ../tools/video/yaydl {
5896     inherit (darwin.apple_sdk.frameworks) Security;
5897   };
5899   zbackup = callPackage ../tools/backup/zbackup {
5900     protobuf = protobuf_21;
5901   };
5903   zbar = libsForQt5.callPackage ../tools/graphics/zbar {
5904     inherit (darwin.apple_sdk.frameworks) Foundation;
5905   };
5907   zenith = callPackage ../tools/system/zenith {
5908     inherit (darwin.apple_sdk.frameworks) IOKit;
5909   };
5911   # Nvidia support does not require any propietary libraries, so CI can build it.
5912   # Note that when enabling this unconditionally, non-nvidia users will always have an empty "GPU" section.
5913   zenith-nvidia = callPackage ../tools/system/zenith {
5914     inherit (darwin.apple_sdk.frameworks) IOKit;
5915     nvidiaSupport = true;
5916   };
5918   zpaq = callPackage ../tools/archivers/zpaq { };
5919   zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { };
5921   zint = qt6Packages.callPackage ../development/libraries/zint { };
5923   zstd = callPackage ../tools/compression/zstd {
5924     cmake = buildPackages.cmakeMinimal;
5925   };
5927   ### SHELLS
5929   runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}";
5930   runtimeShellPackage = bash;
5932   bash = lowPrio (callPackage ../shells/bash/5.nix { });
5933   # WARNING: this attribute is used by nix-shell so it shouldn't be removed/renamed
5934   bashInteractive = callPackage ../shells/bash/5.nix {
5935     interactive = true;
5936     withDocs = true;
5937   };
5938   bashInteractiveFHS = callPackage ../shells/bash/5.nix {
5939     interactive = true;
5940     withDocs = true;
5941     forFHSEnv = true;
5942   };
5944   carapace = callPackage ../shells/carapace {
5945     buildGoModule = buildGo123Module;
5946   };
5948   fish = callPackage ../shells/fish { };
5950   wrapFish = callPackage ../shells/fish/wrapper.nix { };
5952   fishPlugins = recurseIntoAttrs (callPackage ../shells/fish/plugins { });
5954   zsh = callPackage ../shells/zsh { };
5956   powerline = with python3Packages; toPythonApplication powerline;
5958   ### DEVELOPMENT / COMPILERS
5960   temurin-bin-23 = javaPackages.compiler.temurin-bin.jdk-23;
5961   temurin-jre-bin-23 = javaPackages.compiler.temurin-bin.jre-23;
5963   temurin-bin-21 = javaPackages.compiler.temurin-bin.jdk-21;
5964   temurin-jre-bin-21 = javaPackages.compiler.temurin-bin.jre-21;
5966   temurin-bin-17 = javaPackages.compiler.temurin-bin.jdk-17;
5967   temurin-jre-bin-17 = javaPackages.compiler.temurin-bin.jre-17;
5969   temurin-bin-11 = javaPackages.compiler.temurin-bin.jdk-11;
5970   temurin-jre-bin-11 = javaPackages.compiler.temurin-bin.jre-11;
5972   temurin-bin-8 = javaPackages.compiler.temurin-bin.jdk-8;
5973   temurin-jre-bin-8 = javaPackages.compiler.temurin-bin.jre-8;
5975   temurin-bin = temurin-bin-21;
5976   temurin-jre-bin = temurin-jre-bin-21;
5978   semeru-bin-21 = javaPackages.compiler.semeru-bin.jdk-21;
5979   semeru-jre-bin-21 = javaPackages.compiler.semeru-bin.jre-21;
5980   semeru-bin-17 = javaPackages.compiler.semeru-bin.jdk-17;
5981   semeru-jre-bin-17 = javaPackages.compiler.semeru-bin.jre-17;
5982   semeru-bin-11 = javaPackages.compiler.semeru-bin.jdk-11;
5983   semeru-jre-bin-11 = javaPackages.compiler.semeru-bin.jre-11;
5984   semeru-bin-8 = javaPackages.compiler.semeru-bin.jdk-8;
5985   semeru-jre-bin-8 = javaPackages.compiler.semeru-bin.jre-8;
5987   semeru-bin = semeru-bin-21;
5988   semeru-jre-bin = semeru-jre-bin-21;
5990   adoptopenjdk-icedtea-web = callPackage ../development/compilers/adoptopenjdk-icedtea-web {
5991     jdk = jdk8;
5992   };
5994   alan = callPackage ../development/compilers/alan { };
5996   alan_2 = callPackage ../development/compilers/alan/2.nix { };
5998   armips = callPackage ../development/compilers/armips {
5999     stdenv = gcc10Stdenv;
6000   };
6002   autocorrect = callPackage ../tools/text/autocorrect {
6003     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
6004   };
6006   ballerina = callPackage ../development/compilers/ballerina {
6007     openjdk = openjdk17_headless;
6008   };
6010   binaryen = callPackage ../development/compilers/binaryen {
6011     nodejs = nodejs-slim;
6012     inherit (python3Packages) filecheck;
6013   };
6015   bluespec = callPackage ../by-name/bl/bluespec/package.nix {
6016     gmp-static = gmp.override { withStatic = true; };
6017   };
6019   codon = callPackage ../development/compilers/codon {
6020     inherit (llvmPackages_14) lld stdenv;
6021   };
6023   colmap = libsForQt5.callPackage ../applications/science/misc/colmap { inherit (config) cudaSupport; };
6024   colmapWithCuda = colmap.override { cudaSupport = true; };
6026   opensplatWithCuda = opensplat.override { cudaSupport = true; };
6028   chickenPackages_4 = recurseIntoAttrs (callPackage ../development/compilers/chicken/4 { });
6029   chickenPackages_5 = recurseIntoAttrs (callPackage ../development/compilers/chicken/5 { });
6030   chickenPackages = dontRecurseIntoAttrs chickenPackages_5;
6032   inherit (chickenPackages_5)
6033     fetchegg
6034     eggDerivation
6035     chicken
6036     egg2nix;
6038   cdb = callPackage ../development/tools/database/cdb {
6039     stdenv = gccStdenv;
6040   };
6042   libclang = llvmPackages.libclang;
6043   clang-manpages = llvmPackages.clang-manpages;
6045   clang = llvmPackages.clang;
6046   clang_12 = llvmPackages_12.clang;
6047   clang_13 = llvmPackages_13.clang;
6048   clang_14 = llvmPackages_14.clang;
6049   clang_15 = llvmPackages_15.clang;
6050   clang_16 = llvmPackages_16.clang;
6051   clang_17 = llvmPackages_17.clang;
6053   clang-tools = llvmPackages.clang-tools;
6055   clang-analyzer = callPackage ../development/tools/analysis/clang-analyzer {
6056     llvmPackages = llvmPackages;
6057     inherit (llvmPackages) clang;
6058   };
6060   clazy = callPackage ../development/tools/analysis/clazy {
6061     llvmPackages = llvmPackages_14;
6062     stdenv = llvmPackages_14.stdenv;
6063   };
6065   #Use this instead of stdenv to build with clang
6066   clangStdenv = if stdenv.cc.isClang then stdenv else lowPrio llvmPackages.stdenv;
6067   libcxxStdenv = if stdenv.hostPlatform.isDarwin then stdenv else lowPrio llvmPackages.libcxxStdenv;
6069   comby = callPackage ../development/tools/comby {
6070     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6071   };
6073   inherit (coqPackages) compcert;
6075   computecpp = wrapCCWith rec {
6076     cc = computecpp-unwrapped;
6077     extraPackages = [
6078       llvmPackages.compiler-rt
6079     ];
6080     extraBuildCommands = ''
6081       wrap compute $wrapper $ccPath/compute
6082       wrap compute++ $wrapper $ccPath/compute++
6083       export named_cc=compute
6084       export named_cxx=compute++
6086       rsrc="$out/resource-root"
6087       mkdir -p "$rsrc/lib"
6088       ln -s "${cc}/lib" "$rsrc/include"
6089       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
6090     '';
6091   };
6093   corretto11 = javaPackages.compiler.corretto11;
6094   corretto17 = javaPackages.compiler.corretto17;
6095   corretto21 = javaPackages.compiler.corretto21;
6097   cotton = callPackage ../development/tools/cotton {
6098     inherit (darwin.apple_sdk.frameworks) CoreServices;
6099   };
6101   inherit (darwin.apple_sdk_11_0.callPackage ../development/compilers/crystal { })
6102     crystal_1_2
6103     crystal_1_7
6104     crystal_1_8
6105     crystal_1_9
6106     crystal_1_11
6107     crystal_1_12
6108     crystal_1_14
6109     crystal;
6111   crystalline = callPackage ../development/tools/language-servers/crystalline {
6112     llvmPackages = crystal.llvmPackages;
6113   };
6115   scry = callPackage ../development/tools/scry { crystal = crystal_1_2; };
6117   devpi-client = python3Packages.callPackage ../development/tools/devpi-client { };
6119   devpi-server = python3Packages.callPackage ../development/tools/devpi-server { };
6121   elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix;
6123   elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { });
6125   fasm = pkgsi686Linux.callPackage ../development/compilers/fasm {
6126     inherit (stdenv.hostPlatform) isx86_64;
6127   };
6128   fasm-bin = callPackage ../development/compilers/fasm/bin.nix { };
6130   fbc = if stdenv.hostPlatform.isDarwin then
6131     callPackage ../development/compilers/fbc/mac-bin.nix { }
6132   else
6133     callPackage ../development/compilers/fbc { };
6135   filecheck = with python3Packages; toPythonApplication filecheck;
6137   flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });
6138   flutterPackages-source = recurseIntoAttrs (callPackage ../development/compilers/flutter { useNixpkgsEngine = true; });
6139   flutterPackages = flutterPackages-bin;
6140   flutter = flutterPackages.stable;
6141   flutter327 = flutterPackages.v3_27;
6142   flutter326 = flutterPackages.v3_26;
6143   flutter324 = flutterPackages.v3_24;
6144   flutter319 = flutterPackages.v3_19;
6146   fnm = callPackage ../development/tools/fnm {
6147     inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security;
6148   };
6150   fpc = callPackage ../development/compilers/fpc { };
6152   gambit = callPackage ../development/compilers/gambit { };
6153   gambit-unstable = callPackage ../development/compilers/gambit/unstable.nix { };
6154   gambit-support = callPackage ../development/compilers/gambit/gambit-support.nix { };
6155   gerbil = callPackage ../development/compilers/gerbil { };
6156   gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
6157   gerbil-support = callPackage ../development/compilers/gerbil/gerbil-support.nix { };
6158   gerbilPackages-unstable = pkgs.gerbil-support.gerbilPackages-unstable; # NB: don't recurseIntoAttrs for (unstable!) libraries
6159   glow-lang = pkgs.gerbilPackages-unstable.glow-lang;
6161   default-gcc-version = 13;
6162   gcc = pkgs.${"gcc${toString default-gcc-version}"};
6163   gccFun = callPackage ../development/compilers/gcc;
6164   gcc-unwrapped = gcc.cc;
6166   wrapNonDeterministicGcc = stdenv: ccWrapper:
6167     if ccWrapper.isGNU then ccWrapper.overrideAttrs(old: {
6168       env = old.env // {
6169         cc = old.env.cc.override {
6170           reproducibleBuild = false;
6171           profiledCompiler = with stdenv; (!isDarwin && hostPlatform.isx86);
6172         };
6173       };
6174     }) else ccWrapper;
6176   gccStdenv =
6177     if stdenv.cc.isGNU
6178     then stdenv
6179     else stdenv.override {
6180       cc = buildPackages.gcc;
6181       allowedRequisites = null;
6182       # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses
6183       # clang's internal assembler).
6184       extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc;
6185     };
6187   gcc7Stdenv = overrideCC gccStdenv buildPackages.gcc7;
6188   gcc8Stdenv = overrideCC gccStdenv buildPackages.gcc8;
6189   gcc9Stdenv = overrideCC gccStdenv buildPackages.gcc9;
6190   gcc10Stdenv = overrideCC gccStdenv buildPackages.gcc10;
6191   gcc11Stdenv = overrideCC gccStdenv buildPackages.gcc11;
6192   gcc12Stdenv = overrideCC gccStdenv buildPackages.gcc12;
6193   gcc13Stdenv = overrideCC gccStdenv buildPackages.gcc13;
6194   gcc14Stdenv = overrideCC gccStdenv buildPackages.gcc14;
6196   # This is not intended for use in nixpkgs but for providing a faster-running
6197   # compiler to nixpkgs users by building gcc with reproducibility-breaking
6198   # profile-guided optimizations
6199   fastStdenv = overrideCC gccStdenv (wrapNonDeterministicGcc gccStdenv buildPackages.gcc_latest);
6201   wrapCCMulti = cc:
6202     if stdenv.targetPlatform.system == "x86_64-linux" then let
6203       # Binutils with glibc multi
6204       bintools = cc.bintools.override {
6205         libc = glibc_multi;
6206       };
6207     in lowPrio (wrapCCWith {
6208       cc = cc.cc.override {
6209         stdenv = overrideCC stdenv (wrapCCWith {
6210           cc = cc.cc;
6211           inherit bintools;
6212           libc = glibc_multi;
6213         });
6214         profiledCompiler = false;
6215         enableMultilib = true;
6216       };
6217       libc = glibc_multi;
6218       inherit bintools;
6219       extraBuildCommands = ''
6220         echo "dontMoveLib64=1" >> $out/nix-support/setup-hook
6221       '';
6222   }) else throw "Multilib ${cc.name} not supported for â€˜${stdenv.targetPlatform.system}’";
6224   wrapClangMulti = clang:
6225     if stdenv.targetPlatform.system == "x86_64-linux" then
6226       callPackage ../development/compilers/llvm/multi.nix {
6227         inherit clang;
6228         gcc32 = pkgsi686Linux.gcc;
6229         gcc64 = pkgs.gcc;
6230       }
6231     else throw "Multilib ${clang.cc.name} not supported for '${stdenv.targetPlatform.system}'";
6233   gcc_multi = wrapCCMulti gcc;
6234   clang_multi = wrapClangMulti clang;
6236   gccMultiStdenv = overrideCC stdenv buildPackages.gcc_multi;
6237   clangMultiStdenv = overrideCC stdenv buildPackages.clang_multi;
6238   multiStdenv = if stdenv.cc.isClang then clangMultiStdenv else gccMultiStdenv;
6240   gcc_debug = lowPrio (wrapCC (gcc.cc.overrideAttrs {
6241     dontStrip = true;
6242   }));
6244   gccCrossLibcStdenv = overrideCC stdenvNoCC buildPackages.gccWithoutTargetLibc;
6246   # The GCC used to build libc for the target platform. Normal gccs will be
6247   # built with, and use, that cross-compiled libc.
6248   gccWithoutTargetLibc = assert stdenv.targetPlatform != stdenv.hostPlatform; let
6249     libcCross1 = binutilsNoLibc.libc;
6250     in wrapCCWith {
6251       cc = gccFun {
6252         # copy-pasted
6253         inherit noSysDirs;
6254         majorMinorVersion = toString default-gcc-version;
6256         reproducibleBuild = true;
6257         profiledCompiler = false;
6259         isl = if !stdenv.hostPlatform.isDarwin then isl_0_20 else null;
6261         withoutTargetLibc = true;
6262         langCC = false;
6263         libcCross = libcCross1;
6264         targetPackages.stdenv.cc.bintools = binutilsNoLibc;
6265         enableShared =
6266           stdenv.targetPlatform.hasSharedLibraries
6268           # temporarily disabled due to breakage;
6269           # see https://github.com/NixOS/nixpkgs/pull/243249
6270           && !stdenv.targetPlatform.isWindows
6271           && !(stdenv.targetPlatform.useLLVM or false)
6272         ;
6273       };
6274       bintools = binutilsNoLibc;
6275       libc = libcCross1;
6276       extraPackages = [];
6277   };
6279   inherit (callPackage ../development/compilers/gcc/all.nix { inherit noSysDirs; })
6280     gcc7 gcc8 gcc9 gcc10 gcc11 gcc12 gcc13 gcc14;
6282   gcc_latest = gcc14;
6284   libgccjit = gcc.cc.override {
6285     name = "libgccjit";
6286     langFortran = false;
6287     langCC = false;
6288     langC = false;
6289     profiledCompiler = false;
6290     langJit = true;
6291     enableLTO = false;
6292   };
6294   gnat = gnat13; # When changing this, update also gnatPackages
6296   gnat11 = wrapCC (gcc11.cc.override {
6297     name = "gnat";
6298     langC = true;
6299     langCC = false;
6300     langAda = true;
6301     profiledCompiler = false;
6302     # As per upstream instructions building a cross compiler
6303     # should be done with a (native) compiler of the same version.
6304     # If we are cross-compiling GNAT, we may as well do the same.
6305     gnat-bootstrap =
6306       if stdenv.hostPlatform == stdenv.targetPlatform
6307          && stdenv.buildPlatform == stdenv.hostPlatform
6308       then buildPackages.gnat-bootstrap11
6309       else buildPackages.gnat11;
6310     stdenv =
6311       if stdenv.hostPlatform == stdenv.targetPlatform
6312          && stdenv.buildPlatform == stdenv.hostPlatform
6313          && stdenv.buildPlatform.isDarwin
6314          && stdenv.buildPlatform.isx86_64
6315       then overrideCC stdenv gnat-bootstrap11
6316       else stdenv;
6317   });
6319   gnat12 = wrapCC (gcc12.cc.override {
6320     name = "gnat";
6321     langC = true;
6322     langCC = false;
6323     langAda = true;
6324     profiledCompiler = false;
6325     # As per upstream instructions building a cross compiler
6326     # should be done with a (native) compiler of the same version.
6327     # If we are cross-compiling GNAT, we may as well do the same.
6328     gnat-bootstrap =
6329       if stdenv.hostPlatform == stdenv.targetPlatform
6330          && stdenv.buildPlatform == stdenv.hostPlatform
6331       then buildPackages.gnat-bootstrap12
6332       else buildPackages.gnat12;
6333     stdenv =
6334       if stdenv.hostPlatform == stdenv.targetPlatform
6335          && stdenv.buildPlatform == stdenv.hostPlatform
6336          && stdenv.buildPlatform.isDarwin
6337          && stdenv.buildPlatform.isx86_64
6338       then overrideCC stdenv gnat-bootstrap12
6339       else stdenv;
6340   });
6342   gnat13 = wrapCC (gcc13.cc.override {
6343     name = "gnat";
6344     langC = true;
6345     langCC = false;
6346     langAda = true;
6347     profiledCompiler = false;
6348     # As per upstream instructions building a cross compiler
6349     # should be done with a (native) compiler of the same version.
6350     # If we are cross-compiling GNAT, we may as well do the same.
6351     gnat-bootstrap =
6352       if stdenv.hostPlatform == stdenv.targetPlatform
6353          && stdenv.buildPlatform == stdenv.hostPlatform
6354       then buildPackages.gnat-bootstrap12
6355       else buildPackages.gnat13;
6356     stdenv =
6357       if stdenv.hostPlatform == stdenv.targetPlatform
6358          && stdenv.buildPlatform == stdenv.hostPlatform
6359          && stdenv.buildPlatform.isDarwin
6360          && stdenv.buildPlatform.isx86_64
6361       then overrideCC stdenv gnat-bootstrap12
6362       else stdenv;
6363   });
6365   gnat14 = wrapCC (gcc14.cc.override {
6366     name = "gnat";
6367     langC = true;
6368     langCC = false;
6369     langAda = true;
6370     profiledCompiler = false;
6371     # As per upstream instructions building a cross compiler
6372     # should be done with a (native) compiler of the same version.
6373     # If we are cross-compiling GNAT, we may as well do the same.
6374     gnat-bootstrap =
6375       if stdenv.hostPlatform == stdenv.targetPlatform
6376          && stdenv.buildPlatform == stdenv.hostPlatform
6377       then buildPackages.gnat-bootstrap12
6378       else buildPackages.gnat13;
6379     stdenv =
6380       if stdenv.hostPlatform == stdenv.targetPlatform
6381          && stdenv.buildPlatform == stdenv.hostPlatform
6382          && stdenv.buildPlatform.isDarwin
6383          && stdenv.buildPlatform.isx86_64
6384       then overrideCC stdenv gnat-bootstrap12
6385       else stdenv;
6386   });
6388   gnat-bootstrap = gnat-bootstrap12;
6389   gnat-bootstrap11 = wrapCC (callPackage ../development/compilers/gnat-bootstrap { majorVersion = "11"; });
6390   gnat-bootstrap12 = wrapCCWith ({
6391     cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "12"; };
6392   } // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
6393     bintools = bintoolsDualAs;
6394   });
6396   gnat12Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat12; });
6397   gnat13Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat13; });
6398   gnat14Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat14; });
6399   gnatPackages   = gnat13Packages;
6401   inherit (gnatPackages)
6402     gprbuild
6403     gnatprove;
6405   gccgo = wrapCC (gcc.cc.override {
6406     name = "gccgo";
6407     langCC = true; #required for go.
6408     langC = true;
6409     langGo = true;
6410     langJit = true;
6411     profiledCompiler = false;
6412   } // {
6413     # not supported on darwin: https://github.com/golang/go/issues/463
6414     meta.broken = stdenv.hostPlatform.isDarwin;
6415   });
6417   gccgo12 = wrapCC (gcc12.cc.override {
6418     name = "gccgo";
6419     langCC = true; #required for go.
6420     langC = true;
6421     langGo = true;
6422     langJit = true;
6423     profiledCompiler = false;
6424   } // {
6425     # not supported on darwin: https://github.com/golang/go/issues/463
6426     meta.broken = stdenv.hostPlatform.isDarwin;
6427   });
6429   gccgo13 = wrapCC (gcc13.cc.override {
6430     name = "gccgo";
6431     langCC = true; #required for go.
6432     langC = true;
6433     langGo = true;
6434     langJit = true;
6435     profiledCompiler = false;
6436   } // {
6437     # not supported on darwin: https://github.com/golang/go/issues/463
6438     meta.broken = stdenv.hostPlatform.isDarwin;
6439   });
6441   gccgo14 = wrapCC (gcc14.cc.override {
6442     name = "gccgo";
6443     langCC = true; #required for go.
6444     langC = true;
6445     langGo = true;
6446     langJit = true;
6447     profiledCompiler = false;
6448   } // {
6449     # not supported on darwin: https://github.com/golang/go/issues/463
6450     meta.broken = stdenv.hostPlatform.isDarwin;
6451   });
6453   ghdl-mcode = callPackage ../by-name/gh/ghdl/package.nix { backend = "mcode"; };
6455   ghdl-gcc = callPackage ../by-name/gh/ghdl/package.nix { backend = "gcc"; };
6457   ghdl-llvm = callPackage ../by-name/gh/ghdl/package.nix {
6458     backend = "llvm";
6459     inherit (llvmPackages_15) llvm;
6460   };
6462   gcc-arm-embedded = gcc-arm-embedded-12;
6464   # It would be better to match the default gcc so that there are no linking errors
6465   # when using C/C++ libraries in D packages, but right now versions >= 12 are broken.
6466   gdc = gdc11;
6467   gdc11 = wrapCC (gcc11.cc.override {
6468     name = "gdc";
6469     langCC = false;
6470     langC = false;
6471     langD = true;
6472     profiledCompiler = false;
6473   });
6475   gleam = callPackage ../development/compilers/gleam {
6476     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
6477     erlang = erlang_27;
6478   };
6480   # Haskell and GHC
6482   haskell = callPackage ./haskell-packages.nix { };
6484   haskellPackages = dontRecurseIntoAttrs
6485     # Prefer native-bignum to avoid linking issues with gmp
6486     # GHC 9.6 rts can't be built statically with hadrian, so we need to use 9.4
6487     # until 9.8 is ready
6488     (if stdenv.hostPlatform.isStatic then haskell.packages.native-bignum.ghc94
6489     # JS backend can't use gmp
6490     else if stdenv.hostPlatform.isGhcjs then haskell.packages.native-bignum.ghc96
6491     else haskell.packages.ghc96)
6492   // { __recurseIntoDerivationForReleaseJobs = true; };
6494   # haskellPackages.ghc is build->host (it exposes the compiler used to build the
6495   # set, similarly to stdenv.cc), but pkgs.ghc should be host->target to be more
6496   # consistent with the gcc, gnat, clang etc. derivations
6497   #
6498   # We use targetPackages.haskellPackages.ghc if available since this also has
6499   # the withPackages wrapper available. In the final cross-compiled package set
6500   # however, targetPackages won't be populated, so we need to fall back to the
6501   # plain, cross-compiled compiler (which is only theoretical at the moment).
6502   ghc = targetPackages.haskellPackages.ghc or
6503     # Prefer native-bignum to avoid linking issues with gmp
6504     # Use 9.4 for static over broken 9.6
6505     (if stdenv.targetPlatform.isStatic then haskell.compiler.native-bignum.ghc94
6506     # JS backend can't use GMP
6507     else if stdenv.targetPlatform.isGhcjs then haskell.compiler.native-bignum.ghc96
6508     else haskell.compiler.ghc96);
6510   alex = haskell.lib.compose.justStaticExecutables haskellPackages.alex;
6512   happy = haskell.lib.compose.justStaticExecutables haskellPackages.happy;
6514   hscolour = haskell.lib.compose.justStaticExecutables haskellPackages.hscolour;
6516   cabal-install = haskell.lib.compose.justStaticExecutables haskellPackages.cabal-install;
6518   stack =
6519     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
6520     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
6521       haskellPackages.stack;
6523   hlint = haskell.lib.compose.justStaticExecutables haskellPackages.hlint;
6525   krank = haskell.lib.compose.justStaticExecutables haskellPackages.krank;
6527   stylish-cabal = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-cabal;
6529   lhs2tex = haskellPackages.lhs2tex;
6531   all-cabal-hashes = callPackage ../data/misc/hackage { };
6533   purescript = callPackage ../development/compilers/purescript/purescript { };
6535   purescript-psa = nodePackages.purescript-psa;
6537   purenix = haskell.lib.compose.justStaticExecutables haskellPackages.purenix;
6539   spago = callPackage ../development/tools/purescript/spago { };
6541   pulp = nodePackages.pulp;
6543   pscid = nodePackages.pscid;
6545   coreboot-toolchain = recurseIntoAttrs (callPackage ../development/tools/misc/coreboot-toolchain { });
6547   spicedb     = callPackage ../servers/spicedb { };
6548   spicedb-zed = callPackage ../servers/spicedb/zed.nix { };
6550   tamarin-prover =
6551     (haskellPackages.callPackage ../applications/science/logic/tamarin-prover {
6552       # NOTE: do not use the haskell packages 'graphviz' and 'maude'
6553       inherit maude which;
6554       graphviz = graphviz-nox;
6555     });
6557   inherit (callPackage ../development/compilers/haxe {
6558     inherit (darwin.apple_sdk.frameworks) Security;
6559   })
6560     haxe_4_3
6561     haxe_4_1
6562     haxe_4_0
6563     ;
6565   haxe = haxe_4_3;
6566   haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { });
6567   inherit (haxePackages) hxcpp;
6569   falcon = callPackage ../development/interpreters/falcon {
6570     stdenv = gcc10Stdenv;
6571   };
6573   fstar = callPackage ../development/compilers/fstar {
6574     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6575     z3 = z3_4_8_5;
6576   };
6578   dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {});
6580   gwe = callPackage ../tools/misc/gwe {
6581     nvidia_x11 = linuxPackages.nvidia_x11;
6582   };
6584   gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { };
6586   iay = callPackage ../tools/misc/iay {
6587     inherit (darwin.apple_sdk.frameworks) AppKit Security Foundation Cocoa;
6588   };
6590   idrisPackages = dontRecurseIntoAttrs (callPackage ../development/idris-modules {
6591     idris-no-deps = haskellPackages.idris;
6592     pkgs = pkgs.__splicedPackages;
6593   });
6595   idris = idrisPackages.with-packages [ idrisPackages.base ] ;
6597   idris2Packages = recurseIntoAttrs (callPackage ../development/compilers/idris2 { });
6599   inherit (idris2Packages) idris2;
6601   inherit (callPackage ../development/tools/database/indradb { })
6602     indradb-server
6603     indradb-client;
6605   instawow = callPackage ../games/instawow/default.nix { };
6607   irony-server = callPackage ../development/tools/irony-server {
6608     # The repository of irony to use -- must match the version of the employed emacs
6609     # package.  Wishing we could merge it into one irony package, to avoid this issue,
6610     # but its emacs-side expression is autogenerated, and we can't hook into it (other
6611     # than peek into its version).
6612     inherit (emacs.pkgs.melpaStablePackages) irony;
6613   };
6615   heptagon = callPackage ../development/compilers/heptagon {
6616     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6617   };
6619   openjfx17 = openjfx;
6620   openjfx21 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "21"; };
6621   openjfx23 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "23"; };
6623   openjdk8-bootstrap = javaPackages.compiler.openjdk8-bootstrap;
6624   openjdk8 = javaPackages.compiler.openjdk8;
6625   openjdk8_headless = javaPackages.compiler.openjdk8.headless;
6626   jdk8 = openjdk8;
6627   jdk8_headless = openjdk8_headless;
6628   jre8 = openjdk8.jre;
6629   jre8_headless = openjdk8_headless.jre;
6631   openjdk11-bootstrap = javaPackages.compiler.openjdk11-bootstrap;
6632   openjdk11 = javaPackages.compiler.openjdk11;
6633   openjdk11_headless = javaPackages.compiler.openjdk11.headless;
6634   jdk11 = openjdk11;
6635   jdk11_headless = openjdk11_headless;
6637   openjdk17-bootstrap = javaPackages.compiler.openjdk17-bootstrap;
6638   openjdk17 = javaPackages.compiler.openjdk17;
6639   openjdk17_headless = javaPackages.compiler.openjdk17.headless;
6640   jdk17 = openjdk17;
6641   jdk17_headless = openjdk17_headless;
6643   openjdk21 = javaPackages.compiler.openjdk21;
6644   openjdk21_headless = javaPackages.compiler.openjdk21.headless;
6645   jdk21 = openjdk21;
6646   jdk21_headless = openjdk21_headless;
6648   openjdk23 = javaPackages.compiler.openjdk23;
6649   openjdk23_headless = javaPackages.compiler.openjdk23.headless;
6650   jdk23 = openjdk23;
6651   jdk23_headless = openjdk23_headless;
6653   /* default JDK */
6654   jdk = jdk21;
6655   jdk_headless = jdk21_headless;
6657   # Since the introduction of the Java Platform Module System in Java 9, Java
6658   # no longer ships a separate JRE package.
6659   #
6660   # If you are building a 'minimal' system/image, you are encouraged to use
6661   # 'jre_minimal' to build a bespoke JRE containing only the modules you need.
6662   #
6663   # For a general-purpose system, 'jre' defaults to the full JDK:
6664   jre = jdk;
6665   jre_headless = jdk_headless;
6667   jre17_minimal = callPackage ../development/compilers/openjdk/jre.nix {
6668     jdk = jdk17;
6669   };
6670   jre_minimal = callPackage ../development/compilers/openjdk/jre.nix { };
6672   openjdk = jdk;
6673   openjdk_headless = jdk_headless;
6675   graalvmCEPackages = callPackage ../development/compilers/graalvm/community-edition { };
6676   graalvm-ce = graalvmCEPackages.graalvm-ce;
6677   buildGraalvmNativeImage = (callPackage ../build-support/build-graalvm-native-image {
6678     graalvmDrv = graalvm-ce;
6679   }).override;
6681   openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt {
6682     python3 = python311;
6683   };
6685   inherit (callPackage ../development/compilers/julia { })
6686     julia_19-bin
6687     julia_110-bin
6688     julia_111-bin
6689     julia_19
6690     julia_110
6691     julia_111;
6693   julia-lts = julia_110-bin;
6694   julia-stable = julia_111;
6695   julia = julia-stable;
6697   julia-lts-bin = julia_110-bin;
6698   julia-stable-bin = julia_111-bin;
6699   julia-bin = julia-stable-bin;
6701   kind2 = darwin.apple_sdk_11_0.callPackage ../development/compilers/kind2 { };
6703   koka = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../development/compilers/koka { });
6705   kotlin = callPackage ../development/compilers/kotlin { };
6706   kotlin-native = callPackage ../development/compilers/kotlin/native.nix { };
6708   lazarus = callPackage ../development/compilers/fpc/lazarus.nix {
6709     fpc = fpc;
6710   };
6712   lazarus-qt = libsForQt5.callPackage ../development/compilers/fpc/lazarus.nix {
6713     fpc = fpc;
6714     withQt = true;
6715   };
6717   lessc = nodePackages.less;
6719   lobster = callPackage ../development/compilers/lobster {
6720     inherit (darwin.apple_sdk.frameworks)
6721       CoreFoundation Cocoa AudioToolbox OpenGL Foundation ForceFeedback;
6722   };
6724   lld = llvmPackages.lld;
6725   lld_12 = llvmPackages_12.lld;
6726   lld_13 = llvmPackages_13.lld;
6727   lld_14 = llvmPackages_14.lld;
6728   lld_15 = llvmPackages_15.lld;
6729   lld_16 = llvmPackages_16.lld;
6730   lld_17 = llvmPackages_17.lld;
6732   lldb = llvmPackages.lldb;
6733   lldb_12 = llvmPackages_12.lldb;
6734   lldb_13 = llvmPackages_13.lldb;
6735   lldb_14 = llvmPackages_14.lldb;
6736   lldb_15 = llvmPackages_15.lldb;
6737   lldb_16 = llvmPackages_16.lldb;
6738   lldb_17 = llvmPackages_17.lldb;
6740   llvm = llvmPackages.llvm;
6741   llvm_12 = llvmPackages_12.llvm;
6742   llvm_13 = llvmPackages_13.llvm;
6743   llvm_14 = llvmPackages_14.llvm;
6744   llvm_15 = llvmPackages_15.llvm;
6745   llvm_16 = llvmPackages_16.llvm;
6746   llvm_17 = llvmPackages_17.llvm;
6748   mlir_16 = llvmPackages_16.mlir;
6749   mlir_17 = llvmPackages_17.mlir;
6751   libclc = llvmPackages.libclc;
6752   libllvm = llvmPackages.libllvm;
6753   llvm-manpages = llvmPackages.llvm-manpages;
6755   # Please remove all this logic when bumping to LLVM 19 and make this
6756   # a simple alias.
6757   llvmPackages = let
6758     # This returns the minimum supported version for the platform. The
6759     # assumption is that or any later version is good.
6760     choose = platform: if platform.isDarwin then 16 else 18;
6761     # We take the "max of the mins". Why? Since those are lower bounds of the
6762     # supported version set, this is like intersecting those sets and then
6763     # taking the min bound of that.
6764     minSupported = toString (lib.trivial.max (choose stdenv.hostPlatform) (choose
6765       stdenv.targetPlatform));
6766   in pkgs.${"llvmPackages_${minSupported}"};
6768   llvmPackages_12 = recurseIntoAttrs (callPackage ../development/compilers/llvm/12 {
6769     inherit (stdenvAdapters) overrideCC;
6770     buildLlvmTools = buildPackages.llvmPackages_12.tools;
6771     targetLlvmLibraries = targetPackages.llvmPackages_12.libraries or llvmPackages_12.libraries;
6772     targetLlvm = targetPackages.llvmPackages_12.llvm or llvmPackages_12.llvm;
6773   });
6775   inherit (rec {
6776     llvmPackagesSet = recurseIntoAttrs (callPackages ../development/compilers/llvm { });
6778     llvmPackages_13 = llvmPackagesSet."13";
6779     llvmPackages_14 = llvmPackagesSet."14";
6780     llvmPackages_15 = llvmPackagesSet."15";
6781     llvmPackages_16 = llvmPackagesSet."16";
6782     llvmPackages_17 = llvmPackagesSet."17";
6784     llvmPackages_18 = llvmPackagesSet."18";
6785     clang_18 = llvmPackages_18.clang;
6786     lld_18 = llvmPackages_18.lld;
6787     lldb_18 = llvmPackages_18.lldb;
6788     llvm_18 = llvmPackages_18.llvm;
6790     llvmPackages_19 = llvmPackagesSet."19";
6791     clang_19 = llvmPackages_19.clang;
6792     lld_19 = llvmPackages_19.lld;
6793     lldb_19 = llvmPackages_19.lldb;
6794     llvm_19 = llvmPackages_19.llvm;
6795     bolt_19 = llvmPackages_19.bolt;
6796   }) llvmPackages_13
6797     llvmPackages_14
6798     llvmPackages_15
6799     llvmPackages_16
6800     llvmPackages_17
6801     llvmPackages_18
6802     clang_18
6803     lld_18
6804     lldb_18
6805     llvm_18
6806     llvmPackages_19
6807     clang_19
6808     lld_19
6809     lldb_19
6810     llvm_19
6811     bolt_19;
6813   lorri = callPackage ../tools/misc/lorri {
6814     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
6815   };
6817   mercury = callPackage ../development/compilers/mercury {
6818     jdk_headless = openjdk8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
6819   };
6821   mint = callPackage ../development/compilers/mint { crystal = crystal_1_9; };
6823   mitscheme = callPackage ../development/compilers/mit-scheme {
6824     texinfo = texinfo6;
6825   };
6827   mitschemeX11 = mitscheme.override {
6828     enableX11 = true;
6829   };
6831   inherit (callPackage ../development/compilers/mlton {})
6832     mlton20130715
6833     mlton20180207Binary
6834     mlton20180207
6835     mlton20210117
6836     mltonHEAD;
6838   mlton = mlton20210117;
6840   mono = mono6;
6842   mono4 = lowPrio (callPackage ../development/compilers/mono/4.nix {
6843     inherit (darwin) libobjc;
6844     inherit (darwin.apple_sdk.frameworks) Foundation;
6845   });
6847   mono5 = callPackage ../development/compilers/mono/5.nix {
6848     inherit (darwin) libobjc;
6849     inherit (darwin.apple_sdk.frameworks) Foundation;
6850   };
6852   mono6 = callPackage ../development/compilers/mono/6.nix {
6853     inherit (darwin) libobjc;
6854     inherit (darwin.apple_sdk.frameworks) Foundation;
6855   };
6857   mozart2 = callPackage ../development/compilers/mozart {
6858     emacs = emacs-nox;
6859     jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
6860   };
6862   mozart2-binary = callPackage ../development/compilers/mozart/binary.nix { };
6864   nim = nim2;
6865   nim1 = nim-1_0;
6866   nim2 = nim-2_2;
6867   nim-unwrapped = nim-unwrapped-2_2;
6868   nim-unwrapped-1 = nim-unwrapped-1_0;
6869   nim-unwrapped-2 = nim-unwrapped-2_2;
6871   buildNimPackage = callPackage ../build-support/build-nim-package.nix { };
6872   nimOverrides = callPackage ./nim-overrides.nix { };
6874   nextpnrWithGui = libsForQt5.callPackage ../by-name/ne/nextpnr/package.nix {
6875     enableGui = true;
6876     inherit (darwin.apple_sdk.frameworks) OpenGL;
6877   };
6879   obliv-c = callPackage ../development/compilers/obliv-c {
6880     stdenv = gcc10Stdenv;
6881     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6882   };
6884   ocaml-ng = callPackage ./ocaml-packages.nix { };
6885   ocaml = ocamlPackages.ocaml;
6887   ocamlPackages = recurseIntoAttrs ocaml-ng.ocamlPackages;
6889   ocaml-crunch = ocamlPackages.crunch.bin;
6891   inherit (ocaml-ng.ocamlPackages_4_14)
6892     ocamlformat_0_19_0 ocamlformat_0_20_0 ocamlformat_0_20_1 ocamlformat_0_21_0
6893     ocamlformat_0_22_4;
6895   inherit (ocamlPackages)
6896     ocamlformat # latest version
6897     ocamlformat_0_23_0 ocamlformat_0_24_1 ocamlformat_0_25_1 ocamlformat_0_26_0
6898     ocamlformat_0_26_1 ocamlformat_0_26_2;
6900   inherit (ocamlPackages) odig;
6902   ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml.nix { };
6904   opam = callPackage ../development/tools/ocaml/opam {
6905     inherit (darwin.apple_sdk.frameworks) Foundation;
6906   };
6908   opam-installer = callPackage ../development/tools/ocaml/opam/installer.nix { };
6910   wrapWatcom = callPackage ../development/compilers/open-watcom/wrapper.nix { };
6911   open-watcom-v2-unwrapped = callPackage ../development/compilers/open-watcom/v2.nix { };
6912   open-watcom-v2 = wrapWatcom open-watcom-v2-unwrapped { };
6913   open-watcom-bin-unwrapped = callPackage ../development/compilers/open-watcom/bin.nix { };
6914   open-watcom-bin = wrapWatcom open-watcom-bin-unwrapped { };
6916   ponyc = callPackage ../development/compilers/ponyc {
6917     # Upstream pony no longer supports GCC
6918     stdenv = llvmPackages.stdenv;
6919   };
6921   pony-corral = callPackage ../development/compilers/ponyc/pony-corral.nix { };
6923   replibyte = callPackage ../development/tools/database/replibyte {
6924     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
6925   };
6927   rml = callPackage ../development/compilers/rml {
6928     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6929   };
6931   rtags = callPackage ../development/tools/rtags {
6932     inherit (darwin) apple_sdk;
6933   };
6935   wrapRustcWith = { rustc-unwrapped, ... } @ args: callPackage ../build-support/rust/rustc-wrapper args;
6936   wrapRustc = rustc-unwrapped: wrapRustcWith { inherit rustc-unwrapped; };
6938   rust_1_82 = callPackage ../development/compilers/rust/1_82.nix {
6939     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
6940     llvm_18 = llvmPackages_18.libllvm;
6941   };
6942   rust = rust_1_82;
6944   mrustc = callPackage ../development/compilers/mrustc { };
6945   mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { };
6946   mrustc-bootstrap = callPackage ../development/compilers/mrustc/bootstrap.nix {
6947     openssl = openssl_1_1;
6948   };
6950   rustPackages_1_82 = rust_1_82.packages.stable;
6951   rustPackages = rustPackages_1_82;
6953   inherit (rustPackages) cargo cargo-auditable cargo-auditable-cargo-wrapper clippy rustc rustPlatform;
6955   makeRustPlatform = callPackage ../development/compilers/rust/make-rust-platform.nix { };
6957   buildRustCrate =
6958     let
6959       # Returns a true if the builder's rustc was built with support for the target.
6960       targetAlreadyIncluded = lib.elem stdenv.hostPlatform.rust.rustcTarget
6961         (lib.splitString "," (lib.removePrefix "--target=" (
6962           lib.elemAt (lib.filter (f: lib.hasPrefix "--target=" f) pkgsBuildBuild.rustc.unwrapped.configureFlags) 0
6963         )));
6964     in
6965     callPackage ../build-support/rust/build-rust-crate ({ } // lib.optionalAttrs (stdenv.hostPlatform.libc == null) {
6966       stdenv = stdenvNoCC; # Some build targets without libc will fail to evaluate with a normal stdenv.
6967     } // lib.optionalAttrs targetAlreadyIncluded { inherit (pkgsBuildBuild) rustc cargo; } # Optimization.
6968   );
6969   buildRustCrateHelpers = callPackage ../build-support/rust/build-rust-crate/helpers.nix { };
6971   cargo-web = callPackage ../development/tools/rust/cargo-web {
6972     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
6973   };
6975   cargo-flamegraph = callPackage ../development/tools/rust/cargo-flamegraph {
6976     inherit (darwin.apple_sdk.frameworks) Security;
6977     inherit (linuxPackages) perf;
6978   };
6980   defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { };
6982   cargo-audit = callPackage ../development/tools/rust/cargo-audit {
6983     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
6984   };
6985   cargo-c = callPackage ../development/tools/rust/cargo-c {
6986     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
6987   };
6988   cargo-clone = callPackage ../development/tools/rust/cargo-clone {
6989     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
6990   };
6991   cargo-codspeed = callPackage ../development/tools/rust/cargo-codspeed {
6992     rustPlatform = makeRustPlatform {
6993       stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
6994       inherit rustc cargo;
6995     };
6996   };
6997   cargo-cyclonedx = callPackage ../development/tools/rust/cargo-cyclonedx {
6998     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration CoreFoundation;
6999   };
7000   cargo-deadlinks = callPackage ../development/tools/rust/cargo-deadlinks {
7001     inherit (darwin.apple_sdk.frameworks) Security;
7002   };
7003   cargo-edit = callPackage ../development/tools/rust/cargo-edit {
7004     inherit (darwin.apple_sdk.frameworks) Security;
7005   };
7006   cargo-outdated = callPackage ../development/tools/rust/cargo-outdated {
7007     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security SystemConfiguration;
7008   };
7009   inherit (callPackages ../development/tools/rust/cargo-pgrx { })
7010     cargo-pgrx_0_10_2
7011     cargo-pgrx_0_11_2
7012     cargo-pgrx_0_11_3
7013     cargo-pgrx_0_12_0_alpha_1
7014     ;
7015   cargo-pgrx = cargo-pgrx_0_11_2;
7017   buildPgrxExtension = callPackage ../development/tools/rust/cargo-pgrx/buildPgrxExtension.nix {
7018     inherit (darwin.apple_sdk.frameworks) Security;
7019   };
7020   cargo-tarpaulin = callPackage ../development/tools/analysis/cargo-tarpaulin {
7021     inherit (darwin.apple_sdk.frameworks) Security;
7022   };
7023   cargo-asm = callPackage ../development/tools/rust/cargo-asm {
7024     inherit (darwin.apple_sdk.frameworks) Security;
7025   };
7026   cargo-bazel = callPackage ../development/tools/rust/cargo-bazel {
7027     inherit (darwin.apple_sdk.frameworks) Security;
7028   };
7029   cargo-cache = callPackage ../development/tools/rust/cargo-cache {
7030     inherit (darwin.apple_sdk.frameworks) Security;
7031   };
7032   cargo-crev = callPackage ../development/tools/rust/cargo-crev {
7033     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration CoreFoundation;
7034   };
7035   cargo-fund = callPackage ../development/tools/rust/cargo-fund {
7036     inherit (darwin.apple_sdk.frameworks) Security;
7037   };
7038   cargo-hf2 = callPackage ../development/tools/rust/cargo-hf2 {
7039     inherit (darwin.apple_sdk.frameworks) AppKit;
7040   };
7041   cargo-inspect = callPackage ../development/tools/rust/cargo-inspect {
7042     inherit (darwin.apple_sdk.frameworks) Security;
7043   };
7044   cargo-lambda = callPackage ../development/tools/rust/cargo-lambda {
7045     zig = buildPackages.zig_0_12;
7046     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
7047   };
7048   cargo-msrv = callPackage ../development/tools/rust/cargo-msrv {
7049     inherit (darwin.apple_sdk.frameworks) Security;
7050   };
7051   cargo-ndk = callPackage ../development/tools/rust/cargo-ndk {
7052     inherit (darwin.apple_sdk.frameworks) CoreGraphics Foundation;
7053   };
7055   cargo-rdme = callPackage ../by-name/ca/cargo-rdme/package.nix {
7056     inherit (darwin.apple_sdk.frameworks) Security;
7057   };
7058   cargo-spellcheck = callPackage ../development/tools/rust/cargo-spellcheck {
7059     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
7060   };
7061   cargo-udeps = callPackage ../development/tools/rust/cargo-udeps {
7062     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
7063   };
7064   cargo-vet = callPackage ../development/tools/rust/cargo-vet {
7065     inherit (darwin.apple_sdk.frameworks) Security;
7066   };
7067   cargo-watch = callPackage ../development/tools/rust/cargo-watch {
7068     inherit (darwin.apple_sdk.frameworks) Foundation Cocoa;
7069   };
7070   cargo-whatfeatures = callPackage ../development/tools/rust/cargo-whatfeatures {
7071     inherit (darwin.apple_sdk.frameworks) Security;
7072   };
7074   cargo-zigbuild = callPackage ../development/tools/rust/cargo-zigbuild {
7075     zig = buildPackages.zig_0_12;
7076   };
7078   opensmalltalk-vm = callPackage ../development/compilers/opensmalltalk-vm { };
7080   opensycl = darwin.apple_sdk_11_0.callPackage ../development/compilers/opensycl { };
7081   opensyclWithRocm = opensycl.override { rocmSupport = true; };
7083   rustfmt = rustPackages.rustfmt;
7084   rust-analyzer-unwrapped = callPackage ../development/tools/rust/rust-analyzer {
7085     inherit (darwin.apple_sdk.frameworks) CoreServices;
7086   };
7087   rust-analyzer = callPackage ../development/tools/rust/rust-analyzer/wrapper.nix { };
7088   rust-bindgen-unwrapped = callPackage ../development/tools/rust/bindgen/unwrapped.nix { };
7089   rust-bindgen = callPackage ../development/tools/rust/bindgen { };
7090   rust-cbindgen = callPackage ../development/tools/rust/cbindgen {
7091     inherit (darwin.apple_sdk.frameworks) Security;
7092   };
7093   rustup = callPackage ../development/tools/rust/rustup {
7094     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
7095   };
7096   rustup-toolchain-install-master = callPackage ../development/tools/rust/rustup-toolchain-install-master {
7097     inherit (darwin.apple_sdk.frameworks) Security;
7098   };
7099   scala_2_10 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.10"; jre = jdk8; };
7100   scala_2_11 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.11"; jre = jdk8; };
7101   scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; };
7102   scala_2_13 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.13"; };
7103   scala_3 = callPackage ../development/compilers/scala { };
7105   scala = scala_3;
7106   scala-runners = callPackage ../development/compilers/scala-runners {
7107     coursier = coursier.override { jre = jdk8; };
7108   };
7110   scalafix = callPackage ../development/tools/scalafix {
7111     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
7112   };
7113   # smlnjBootstrap should be redundant, now that smlnj works on Darwin natively
7114   smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { };
7115   smlnj = callPackage ../development/compilers/smlnj {
7116     inherit (darwin) Libsystem;
7117   };
7119   sqlx-cli = callPackage ../development/tools/rust/sqlx-cli {
7120     inherit (darwin.apple_sdk.frameworks) SystemConfiguration CoreFoundation Security;
7121   };
7123   squeak = callPackage ../development/compilers/squeak {
7124     stdenv = clangStdenv;
7125   };
7127   squirrel-sql = callPackage ../development/tools/database/squirrel-sql {
7128     drivers = [ jtds_jdbc mssql_jdbc mysql_jdbc postgresql_jdbc ];
7129   };
7131   surrealdb-migrations = callPackage ../development/tools/database/surrealdb-migrations {
7132     inherit (darwin.apple_sdk.frameworks) Security;
7133   };
7135   swiftPackages = recurseIntoAttrs (callPackage ../development/compilers/swift { });
7136   inherit (swiftPackages) swift swiftpm sourcekit-lsp swift-format swiftpm2nix;
7138   swi-prolog = callPackage ../development/compilers/swi-prolog {
7139     inherit (darwin.apple_sdk.frameworks) Security;
7140   };
7141   swi-prolog-gui = swi-prolog.override { withGui = true; };
7143   tbb_2020_3 = callPackage ../development/libraries/tbb/2020_3.nix { };
7144   tbb_2021_5 = callPackage ../development/libraries/tbb/2021_5.nix { } ;
7145   tbb_2021_11 = callPackage ../development/libraries/tbb { };
7146   # many packages still fail with latest version
7147   tbb = tbb_2020_3;
7149   terra = callPackage ../development/compilers/terra {
7150     inherit (darwin) libobjc;
7151     inherit (darwin.apple_sdk.frameworks) Cocoa Foundation;
7152   };
7154   teyjus = callPackage ../development/compilers/teyjus {
7155     inherit (ocaml-ng.ocamlPackages_4_14) buildDunePackage;
7156   };
7158   thrust = callPackage ../development/tools/thrust {
7159     gconf = gnome2.GConf;
7160   };
7162   tinycc = darwin.apple_sdk_11_0.callPackage ../development/compilers/tinycc { };
7164   tinygo = callPackage ../development/compilers/tinygo {
7165     llvmPackages = llvmPackages_18;
7166   };
7168   ubports-click = python3Packages.callPackage ../development/tools/click { };
7170   urweb = callPackage ../development/compilers/urweb {
7171     icu = icu67;
7172   };
7174   vcard = python3Packages.toPythonApplication python3Packages.vcard;
7176   inherit (callPackage ../development/compilers/vala { })
7177     vala_0_56
7178     vala;
7180   vyper = with python3Packages; toPythonApplication vyper;
7182   wrapCCWith =
7183     { cc
7184     , # This should be the only bintools runtime dep with this sort of logic. The
7185       # Others should instead delegate to the next stage's choice with
7186       # `targetPackages.stdenv.cc.bintools`. This one is different just to
7187       # provide the default choice, avoiding infinite recursion.
7188       # See the bintools attribute for the logic and reasoning. We need to provide
7189       # a default here, since eval will hit this function when bootstrapping
7190       # stdenv where the bintools attribute doesn't exist, but will never actually
7191       # be evaluated -- callPackage ends up being too eager.
7192       bintools ? pkgs.bintools
7193     , libc ? bintools.libc
7194     , # libc++ from the default LLVM version is bound at the top level, but we
7195       # want the C++ library to be explicitly chosen by the caller, and null by
7196       # default.
7197       libcxx ? null
7198     , extraPackages ? lib.optional (cc.isGNU or false && stdenv.targetPlatform.isMinGW) threadsCross.package
7199     , nixSupport ? {}
7200     , ...
7201     } @ extraArgs:
7202       callPackage ../build-support/cc-wrapper (let self = {
7203     nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
7204     nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
7205     nativePrefix = stdenv.cc.nativePrefix or "";
7206     noLibc = !self.nativeLibc && (self.libc == null);
7208     isGNU = cc.isGNU or false;
7209     isClang = cc.isClang or false;
7210     isArocc = cc.isArocc or false;
7211     isZig = cc.isZig or false;
7213     inherit cc bintools libc libcxx extraPackages nixSupport zlib;
7214   } // extraArgs; in self);
7216   wrapCC = cc: wrapCCWith {
7217     inherit cc;
7218   };
7220   wrapBintoolsWith =
7221     { bintools
7222     , libc ? if stdenv.targetPlatform != stdenv.hostPlatform then libcCross else stdenv.cc.libc
7223     , ...
7224     } @ extraArgs:
7225       callPackage ../build-support/bintools-wrapper (let self = {
7226     nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
7227     nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
7228     nativePrefix = stdenv.cc.nativePrefix or "";
7230     noLibc = (self.libc == null);
7232     inherit bintools libc;
7233   } // extraArgs; in self);
7235   # prolog
7236   yosys = callPackage ../development/compilers/yosys { };
7237   yosys-bluespec = callPackage ../development/compilers/yosys/plugins/bluespec.nix { };
7238   yosys-ghdl = callPackage ../development/compilers/yosys/plugins/ghdl.nix { };
7239   yosys-synlig = callPackage ../development/compilers/yosys/plugins/synlig.nix { };
7240   yosys-symbiflow = callPackage ../development/compilers/yosys/plugins/symbiflow.nix { };
7242   zulu8 = callPackage ../development/compilers/zulu/8.nix { };
7243   zulu11 = callPackage ../development/compilers/zulu/11.nix { };
7244   zulu17 = callPackage ../development/compilers/zulu/17.nix { };
7245   zulu21 = callPackage ../development/compilers/zulu/21.nix { };
7246   zulu23 = callPackage ../development/compilers/zulu/23.nix { };
7247   zulu = zulu21;
7249   ### DEVELOPMENT / INTERPRETERS
7251   acl2 = callPackage ../development/interpreters/acl2 { };
7252   acl2-minimal = callPackage ../development/interpreters/acl2 { certifyBooks = false; };
7254   babashka-unwrapped = callPackage ../development/interpreters/babashka { };
7255   babashka = callPackage ../development/interpreters/babashka/wrapped.nix { };
7257   # BQN interpreters and compilers
7259   mbqn = bqn;
7261   cbqn = cbqn-bootstrap.phase2;
7262   cbqn-replxx = cbqn-bootstrap.phase2-replxx;
7263   cbqn-standalone = cbqn-bootstrap.phase0;
7264   cbqn-standalone-replxx = cbqn-bootstrap.phase0-replxx;
7266   # Below, the classic self-bootstrapping process
7267   cbqn-bootstrap = lib.dontRecurseIntoAttrs {
7268     # Use clang to compile CBQN if we aren't already.
7269     # CBQN's upstream primarily targets and tests clang which means using gcc
7270     # will result in slower binaries and on some platforms failing/broken builds.
7271     # See https://github.com/dzaima/CBQN/issues/12.
7272     #
7273     # Known issues:
7274     #
7275     # * CBQN using gcc is broken at runtime on i686 due to
7276     #   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58416,
7277     # * CBQN uses some CPP macros gcc doesn't like for aarch64.
7278     stdenv = if !stdenv.cc.isClang then clangStdenv else stdenv;
7280     mbqn-source = buildPackages.mbqn.src;
7282     phase0 = callPackage ../development/interpreters/bqn/cbqn {
7283       inherit (cbqn-bootstrap) mbqn-source stdenv;
7284       generateBytecode = false;
7285       # Not really used, but since null can be dangerous...
7286       bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
7287     };
7289     phase0-replxx = callPackage ../development/interpreters/bqn/cbqn {
7290       inherit (cbqn-bootstrap) mbqn-source stdenv;
7291       enableReplxx = true;
7292       generateBytecode = false;
7293       # Not really used, but since null can be dangerous...
7294       bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
7295     };
7297     phase1 = callPackage ../development/interpreters/bqn/cbqn {
7298       inherit (cbqn-bootstrap) mbqn-source stdenv;
7299       generateBytecode = true;
7300       bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
7301     };
7303     phase2 = callPackage ../development/interpreters/bqn/cbqn {
7304       inherit (cbqn-bootstrap) mbqn-source stdenv;
7305       generateBytecode = true;
7306       bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
7307     };
7309     phase2-replxx = callPackage ../development/interpreters/bqn/cbqn {
7310       inherit (cbqn-bootstrap) mbqn-source stdenv;
7311       generateBytecode = true;
7312       enableReplxx = true;
7313       bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
7314     };
7315   };
7317   dbqn = callPackage ../by-name/db/dbqn/package.nix {
7318     buildNativeImage = false;
7319     jdk = jre;
7320     stdenv = stdenvNoCC;
7321   };
7323   dbqn-native = dbqn.override {
7324     buildNativeImage = true;
7325     jdk = graalvm-ce;
7326   };
7328   cliscord = callPackage ../misc/cliscord {
7329     inherit (darwin.apple_sdk.frameworks) Security;
7330   };
7332   clojupyter = callPackage ../applications/editors/jupyter-kernels/clojupyter {
7333     jre = jre8;
7334   };
7336   inherit (callPackage ../applications/editors/jupyter-kernels/xeus-cling { })
7337     cpp11-kernel cpp14-kernel cpp17-kernel cpp2a-kernel;
7338   xeus-cling = callPackage ../applications/editors/jupyter-kernels/xeus-cling/xeus-cling.nix { };
7340   clojure = callPackage ../development/interpreters/clojure {
7341     # set this to an LTS version of java
7342     jdk = jdk21;
7343   };
7345   clooj = callPackage ../development/interpreters/clojure/clooj.nix { };
7347   dhall = haskell.lib.compose.justStaticExecutables haskellPackages.dhall;
7349   dhall-bash = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-bash;
7351   dhall-docs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-docs;
7353   dhall-lsp-server = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-lsp-server;
7355   dhall-json = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-json;
7357   dhall-nix = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nix;
7359   dhall-nixpkgs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nixpkgs;
7361   dhall-yaml = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-yaml;
7363   dhallPackages = recurseIntoAttrs (callPackage ./dhall-packages.nix { });
7365   duckscript = callPackage ../development/tools/rust/duckscript {
7366     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
7367   };
7369   evcxr = callPackage ../development/interpreters/evcxr {
7370     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
7371   };
7373   beam = callPackage ./beam-packages.nix { };
7374   beam_nox = callPackage ./beam-packages.nix { beam = beam_nox; wxSupport = false; };
7375   beam_minimal = callPackage ./beam-packages.nix {
7376     beam = beam_minimal;
7377     wxSupport = false;
7378     systemdSupport = false;
7379   };
7380   beam_nodocs = callPackage ./beam-packages.nix {
7381     beam = beam_nodocs;
7382     wxSupport = false;
7383     systemdSupport = false;
7384     ex_docSupport = false;
7385   };
7387   inherit (beam.interpreters)
7388     erlang erlang_27 erlang_26 erlang_25 erlang_24
7389     elixir elixir_1_17 elixir_1_16 elixir_1_15 elixir_1_14 elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10
7390     elixir-ls;
7392   erlang_nox = beam_nox.interpreters.erlang;
7394   inherit (beam.packages.erlang)
7395     ex_doc erlang-ls erlfmt elvis-erlang
7396     rebar rebar3 rebar3WithPlugins
7397     fetchHex
7398     lfe lfe_2_1;
7399   beamPackages = beam.packages.erlang // { __attrsFailEvaluation = true; };
7401   erlang_language_platform = callPackage ../by-name/er/erlang-language-platform/package.nix { };
7403   gnudatalanguage = callPackage ../development/interpreters/gnudatalanguage {
7404     inherit (llvmPackages) openmp;
7405     inherit (darwin.apple_sdk.frameworks) Cocoa;
7406     # MPICH currently build on Darwin
7407     mpi = mpich;
7408   };
7410   graphql-client = callPackage ../development/tools/graphql-client {
7411     inherit (darwin.apple_sdk.frameworks) Security;
7412   };
7414   inherit (callPackages ../applications/networking/cluster/hadoop {})
7415     hadoop_3_4
7416     hadoop_3_3
7417     hadoop2;
7418   hadoop3 = hadoop_3_4;
7419   hadoop = hadoop3;
7421   jacinda = haskell.lib.compose.justStaticExecutables haskellPackages.jacinda;
7423   janet = callPackage ../development/interpreters/janet { };
7425   jpm = callPackage ../development/interpreters/janet/jpm.nix { };
7427   davmail = callPackage ../applications/networking/davmail {
7428     zulu = zulu11;
7429   };
7431   lambda-lisp-blc = lambda-lisp;
7433   love_0_10 = callPackage ../development/interpreters/love/0.10.nix { };
7434   love_11 = callPackage ../development/interpreters/love/11.nix { };
7435   love = love_11;
7437   ### LUA interpreters
7438   emiluaPlugins = recurseIntoAttrs
7439     (callPackage ./emilua-plugins.nix {}
7440       (callPackage ../development/interpreters/emilua { }));
7442   inherit (emiluaPlugins) emilua;
7444   luaInterpreters = callPackage ./../development/interpreters/lua-5 { };
7445   inherit (luaInterpreters) lua5_1 lua5_2 lua5_2_compat lua5_3 lua5_3_compat lua5_4 lua5_4_compat luajit_2_1 luajit_2_0 luajit_openresty;
7447   lua5 = lua5_2_compat;
7448   lua = lua5;
7450   lua51Packages = recurseIntoAttrs lua5_1.pkgs;
7451   lua52Packages = recurseIntoAttrs lua5_2.pkgs;
7452   lua53Packages = recurseIntoAttrs lua5_3.pkgs;
7453   lua54Packages = recurseIntoAttrs lua5_4.pkgs;
7454   luajitPackages = recurseIntoAttrs luajit.pkgs;
7456   luaPackages = lua52Packages;
7458   luajit = luajit_2_1;
7460   luarocks = luaPackages.luarocks;
7461   luarocks-nix = luaPackages.luarocks-nix;
7463   luarocks-packages-updater = callPackage ../by-name/lu/luarocks-packages-updater/package.nix {
7464     pluginupdate = ../../maintainers/scripts/pluginupdate-py;
7465   };
7467   toluapp = callPackage ../development/tools/toluapp {
7468     lua = lua5_1; # doesn't work with any other :(
7469   };
7471   ### END OF LUA
7473   ### CuboCore
7474   CuboCore = recurseIntoAttrs (import ./cubocore-packages.nix {
7475     inherit newScope lxqt lib libsForQt5;
7476   });
7478   ### End of CuboCore
7480   obb = callPackage ../development/interpreters/clojure/obb.nix { };
7482   octave = callPackage ../development/interpreters/octave { };
7484   octaveFull = octave.override {
7485     enableQt = true;
7486   };
7488   octave-kernel = callPackage ../applications/editors/jupyter-kernels/octave { };
7490   octavePackages = recurseIntoAttrs octave.pkgs;
7492   # PHP interpreters, packages and extensions.
7493   #
7494   # Set default PHP interpreter, extensions and packages
7495   php = php82;
7496   phpExtensions = php.extensions;
7497   phpPackages = php.packages;
7499   # Import PHP84 interpreter, extensions and packages
7500   php84 = callPackage ../development/interpreters/php/8.4.nix {
7501     stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
7502     pcre2 = pcre2.override {
7503       withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
7504     };
7505   };
7506   php84Extensions = recurseIntoAttrs php84.extensions;
7507   php84Packages = recurseIntoAttrs php84.packages;
7509   # Import PHP83 interpreter, extensions and packages
7510   php83 = callPackage ../development/interpreters/php/8.3.nix {
7511     stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
7512     pcre2 = pcre2.override {
7513       withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
7514     };
7515   };
7516   php83Extensions = recurseIntoAttrs php83.extensions;
7517   php83Packages = recurseIntoAttrs php83.packages;
7519   # Import PHP82 interpreter, extensions and packages
7520   php82 = callPackage ../development/interpreters/php/8.2.nix {
7521     stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
7522     pcre2 = pcre2.override {
7523       withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
7524     };
7525   };
7526   php82Extensions = recurseIntoAttrs php82.extensions;
7527   php82Packages = recurseIntoAttrs php82.packages;
7529   # Import PHP81 interpreter, extensions and packages
7530   php81 = callPackage ../development/interpreters/php/8.1.nix {
7531     stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
7532     pcre2 = pcre2.override {
7533       withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
7534     };
7535   };
7536   php81Extensions = recurseIntoAttrs php81.extensions;
7537   php81Packages = recurseIntoAttrs php81.packages;
7539   polyml = callPackage ../development/compilers/polyml { };
7540   polyml56 = callPackage ../development/compilers/polyml/5.6.nix { };
7541   polyml57 = callPackage ../development/compilers/polyml/5.7.nix { };
7543   # Python interpreters. All standard library modules are included except for tkinter, which is
7544   # available as `pythonPackages.tkinter` and can be used as any other Python package.
7545   # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md
7546   python2 = python27;
7547   python3 = python312;
7549   # pythonPackages further below, but assigned here because they need to be in sync
7550   python2Packages = dontRecurseIntoAttrs python27Packages;
7551   python3Packages = dontRecurseIntoAttrs python312Packages;
7553   pypy = pypy2;
7554   pypy2 = pypy27;
7555   pypy3 = pypy39;
7557   # Python interpreter that is build with all modules, including tkinter.
7558   # These are for compatibility and should not be used inside Nixpkgs.
7559   python2Full = python2.override {
7560     self = python2Full;
7561     pythonAttr = "python2Full";
7562     x11Support = true;
7563   };
7564   python27Full = python27.override {
7565     self = python27Full;
7566     pythonAttr = "python27Full";
7567     x11Support = true;
7568   };
7569   python3Full = python3.override {
7570     self = python3Full;
7571     pythonAttr = "python3Full";
7572     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7573     x11Support = true;
7574   };
7575   python39Full = python39.override {
7576     self = python39Full;
7577     pythonAttr = "python39Full";
7578     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7579     x11Support = true;
7580   };
7581   python310Full = python310.override {
7582     self = python310Full;
7583     pythonAttr = "python310Full";
7584     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7585     x11Support = true;
7586   };
7587   python311Full = python311.override {
7588     self = python311Full;
7589     pythonAttr = "python311Full";
7590     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7591     x11Support = true;
7592   };
7593   python312Full = python312.override {
7594     self = python312Full;
7595     pythonAttr = "python312Full";
7596     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7597     x11Support = true;
7598   };
7599   python313Full = python313.override {
7600     self = python313Full;
7601     pythonAttr = "python313Full";
7602     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7603     x11Support = true;
7604   };
7605   python314Full = python314.override {
7606     self = python314Full;
7607     pythonAttr = "python314Full";
7608     bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
7609     x11Support = true;
7610   };
7612   # https://py-free-threading.github.io
7613   python313FreeThreading = python313.override {
7614     pythonAttr = "python313FreeThreading";
7615     enableGIL = false;
7616   };
7617   python314FreeThreading = python314.override {
7618     pythonAttr = "python313FreeThreading";
7619     enableGIL = false;
7620   };
7622   pythonInterpreters = callPackage ./../development/interpreters/python { };
7623   inherit (pythonInterpreters) python27 python39 python310 python311 python312 python313 python314 python3Minimal pypy27 pypy310 pypy39 rustpython;
7625   # List of extensions with overrides to apply to all Python package sets.
7626   pythonPackagesExtensions = [ ];
7628   # Python package sets.
7629   python27Packages = python27.pkgs;
7630   python39Packages = python39.pkgs;
7631   python310Packages = python310.pkgs;
7632   python311Packages = recurseIntoAttrs python311.pkgs;
7633   python312Packages = recurseIntoAttrs python312.pkgs;
7634   python313Packages = python313.pkgs;
7635   python314Packages = python314.pkgs;
7636   pypyPackages = pypy.pkgs;
7637   pypy2Packages = pypy2.pkgs;
7638   pypy27Packages = pypy27.pkgs;
7639   pypy3Packages = pypy3.pkgs;
7640   pypy39Packages = pypy39.pkgs;
7641   pypy310Packages = pypy310.pkgs;
7643   pythonManylinuxPackages = callPackage ./../development/interpreters/python/manylinux { };
7645   pythonCondaPackages = callPackage ./../development/interpreters/python/conda { };
7647   # Should eventually be moved inside Python interpreters.
7648   python-setup-hook = buildPackages.callPackage ../development/interpreters/python/setup-hook.nix { };
7650   pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs {});
7652   svg2tikz = with python3.pkgs; toPythonApplication svg2tikz;
7654   poetryPlugins = recurseIntoAttrs poetry.plugins;
7656   pipx = with python3.pkgs; toPythonApplication pipx;
7658   pipewire = callPackage ../development/libraries/pipewire {
7659     # ffmpeg depends on SDL2 which depends on pipewire by default.
7660     # Break the cycle by depending on ffmpeg-headless.
7661     # Pipewire only uses libavcodec (via an SPA plugin), which isn't
7662     # affected by the *-headless changes.
7663     ffmpeg = ffmpeg-headless;
7664   };
7666   wireplumber = callPackage ../development/libraries/pipewire/wireplumber.nix { };
7668   racket = callPackage ../development/interpreters/racket {
7669     inherit (darwin.apple_sdk.frameworks) CoreFoundation;
7670   };
7671   racket_7_9 = callPackage ../development/interpreters/racket/racket_7_9.nix {
7672     inherit (darwin.apple_sdk.frameworks) CoreFoundation;
7673   };
7674   racket-minimal = callPackage ../development/interpreters/racket/minimal.nix { };
7676   rakudo = callPackage ../development/interpreters/rakudo { };
7677   moarvm = darwin.apple_sdk_11_0.callPackage ../development/interpreters/rakudo/moarvm.nix {
7678     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices ApplicationServices;
7679   };
7680   nqp = callPackage  ../development/interpreters/rakudo/nqp.nix { };
7681   zef = callPackage ../development/interpreters/rakudo/zef.nix { };
7683   inherit (ocamlPackages) reason rtop;
7685   buildRubyGem = callPackage ../development/ruby-modules/gem {
7686     inherit (darwin) libobjc;
7687   };
7688   defaultGemConfig = callPackage ../development/ruby-modules/gem-config {
7689     inherit (darwin) DarwinTools autoSignDarwinBinariesHook;
7690     inherit (darwin.apple_sdk.frameworks) CoreServices;
7691   };
7692   bundlerEnv = callPackage ../development/ruby-modules/bundler-env { };
7693   bundlerApp = callPackage ../development/ruby-modules/bundler-app { };
7694   bundlerUpdateScript = callPackage ../development/ruby-modules/bundler-update-script { };
7696   bundler-audit = callPackage ../tools/security/bundler-audit { };
7698   solargraph = rubyPackages.solargraph;
7700   rubyfmt = darwin.apple_sdk_11_0.callPackage ../development/tools/rubyfmt {
7701     inherit (darwin.apple_sdk_11_0.frameworks) Foundation Security;
7702     inherit (darwin) libobjc;
7703   };
7705   inherit (callPackage ../development/interpreters/ruby {
7706     inherit (darwin) libobjc libunwind;
7707     inherit (darwin.apple_sdk.frameworks) Foundation;
7708   })
7709     mkRubyVersion
7710     mkRuby
7711     ruby_3_1
7712     ruby_3_2
7713     ruby_3_3
7714     ruby_3_4;
7716   ruby = ruby_3_3;
7717   rubyPackages = rubyPackages_3_3;
7719   rubyPackages_3_1 = recurseIntoAttrs ruby_3_1.gems;
7720   rubyPackages_3_2 = recurseIntoAttrs ruby_3_2.gems;
7721   rubyPackages_3_3 = recurseIntoAttrs ruby_3_3.gems;
7722   rubyPackages_3_4 = recurseIntoAttrs ruby_3_4.gems;
7724   samplebrain = libsForQt5.callPackage ../applications/audio/samplebrain { };
7726   inherit (callPackages ../applications/networking/cluster/spark { })
7727     spark_3_5 spark_3_4;
7728   spark3 = spark_3_5;
7729   spark = spark3;
7731   inherit
7732     ({
7733       spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix {
7734         inherit (darwin) libobjc;
7735       };
7736       spidermonkey_91 = callPackage ../development/interpreters/spidermonkey/91.nix {
7737         inherit (darwin) libobjc;
7738       };
7739       spidermonkey_115 = callPackage ../development/interpreters/spidermonkey/115.nix {
7740         inherit (darwin) libobjc;
7741       };
7742       spidermonkey_128 = callPackage ../development/interpreters/spidermonkey/128.nix {
7743         inherit (darwin) libobjc;
7744       };
7745     })
7746     spidermonkey_78
7747     spidermonkey_91
7748     spidermonkey_115
7749     spidermonkey_128
7750     ;
7752   supercollider = libsForQt5.callPackage ../development/interpreters/supercollider {
7753     fftw = fftwSinglePrec;
7754   };
7756   supercollider_scel = supercollider.override { useSCEL = true; };
7758   supercolliderPlugins = recurseIntoAttrs {
7759     sc3-plugins = callPackage ../development/interpreters/supercollider/plugins/sc3-plugins.nix {
7760       fftw = fftwSinglePrec;
7761     };
7762   };
7764   supercollider-with-plugins = callPackage ../development/interpreters/supercollider/wrapper.nix {
7765     plugins = [];
7766   };
7768   supercollider-with-sc3-plugins = supercollider-with-plugins.override {
7769     plugins = with supercolliderPlugins; [ sc3-plugins ];
7770   };
7772   tcl = tcl-8_6;
7773   tcl-8_5 = callPackage ../development/interpreters/tcl/8.5.nix { };
7774   tcl-8_6 = callPackage ../development/interpreters/tcl/8.6.nix { };
7775   tcl-9_0 = callPackage ../development/interpreters/tcl/9.0.nix { };
7777   # We don't need versioned package sets thanks to the tcl stubs mechanism
7778   tclPackages = recurseIntoAttrs (callPackage ./tcl-packages.nix {});
7780   tclreadline = tclPackages.tclreadline;
7782   wasm = ocamlPackages.wasm;
7784   ### DEVELOPMENT / MISC
7786   inherit (callPackages ../development/misc/h3 { }) h3_3 h3_4;
7788   h3 = h3_3;
7790   avrlibc = callPackage ../development/misc/avr/libc {
7791     stdenv = stdenvNoLibc;
7792   };
7794   sourceFromHead = callPackage ../build-support/source-from-head-fun.nix { };
7796   jruby = callPackage ../development/interpreters/jruby { };
7798   guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { };
7800   # Needed for autogen
7801   guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { };
7803   guile_2_2 = callPackage ../development/interpreters/guile/2.2.nix { };
7805   guile_3_0 = callPackage ../development/interpreters/guile/3.0.nix { };
7807   guile = guile_3_0;
7809   guile-sdl = callPackage ../by-name/gu/guile-sdl/package.nix {
7810     guile = guile_2_2;
7811   };
7813   guile-xcb = callPackage ../by-name/gu/guile-xcb/package.nix {
7814     guile = guile_2_2;
7815   };
7817   msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { };
7819   msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { };
7821   mspds = callPackage ../development/misc/msp430/mspds { };
7822   mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { };
7824   mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { };
7826   vc4-newlib = callPackage ../development/misc/vc4/newlib.nix { };
7828   or1k-newlib = callPackage ../development/misc/or1k/newlib.nix { };
7830   mise = callPackage ../by-name/mi/mise/package.nix {
7831     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
7832   };
7834   ### DEVELOPMENT / TOOLS
7836   actiona = libsForQt5.callPackage ../applications/misc/actiona { };
7838   inherit (callPackage ../development/tools/alloy { })
7839     alloy5
7840     alloy6
7841     alloy;
7843   anybadge = with python3Packages; toPythonApplication anybadge;
7845   ansible = ansible_2_17;
7846   ansible_2_17 = python3Packages.toPythonApplication python3Packages.ansible-core;
7847   ansible_2_16 = python3Packages.toPythonApplication (python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
7848     version = "2.16.8";
7849     src = oldAttrs.src.override {
7850       inherit version;
7851       hash = "sha256-WeSqQO1azbTvm789BYkY//k/ZqFJNz2BWciilgRBC9o=";
7852     };
7853   }));
7854   ansible_2_15 = python3Packages.toPythonApplication (python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
7855     version = "2.15.9";
7856     src = oldAttrs.src.override {
7857       inherit version;
7858       pname = "ansible-core";
7859       hash = "sha256-JfmxtaWvPAmGvTko7QhurduGdSf7XIOv7xoDz60080U=";
7860     };
7861   }));
7863   ansible-builder = with python3Packages; toPythonApplication ansible-builder;
7865   ansible-doctor = callPackage ../tools/admin/ansible/doctor.nix { };
7867   yakut = python3Packages.callPackage ../development/tools/misc/yakut { };
7869   ### DEVELOPMENT / TOOLS / LANGUAGE-SERVERS
7871   ccls = callPackage ../development/tools/language-servers/ccls {
7872     llvmPackages = llvmPackages_14;
7873   };
7875   fortls = python3.pkgs.callPackage ../development/tools/language-servers/fortls { };
7877   fortran-language-server = python3.pkgs.callPackage ../development/tools/language-servers/fortran-language-server { };
7879   inherit (callPackages ../development/tools/language-servers/nixd {
7880     llvmPackages = llvmPackages_16;
7881   }) nixf nixt nixd;
7883   ansible-later = callPackage ../tools/admin/ansible/later.nix { };
7885   ansible-lint = callPackage ../tools/admin/ansible/lint.nix { };
7887   antlr2 = callPackage ../development/tools/parsing/antlr/2.7.7.nix { };
7888   antlr3_4 = callPackage ../development/tools/parsing/antlr/3.4.nix { };
7889   antlr3_5 = callPackage ../development/tools/parsing/antlr/3.5.nix { };
7890   antlr3 = antlr3_5;
7892   inherit (callPackages ../development/tools/parsing/antlr/4.nix { })
7893     antlr4_8
7894     antlr4_9
7895     antlr4_10
7896     antlr4_11
7897     antlr4_12
7898     antlr4_13;
7900   antlr4 = antlr4_13;
7902   antlr = antlr4;
7904   ant = apacheAnt;
7906   inherit (callPackages ../servers/apache-kafka { })
7907     apacheKafka_3_6
7908     apacheKafka_3_7
7909     apacheKafka_3_8;
7911   apacheKafka = apacheKafka_3_8;
7913   asn2quickder = python3Packages.callPackage ../development/tools/asn2quickder { };
7915   libastyle = astyle.override { asLibrary = true; };
7917   aws-adfs = with python3Packages; toPythonApplication aws-adfs;
7919   electron-source = callPackage ../development/tools/electron { };
7921   inherit (callPackages ../development/tools/electron/binary { })
7922     electron_24-bin
7923     electron_27-bin
7924     electron_28-bin
7925     electron_29-bin
7926     electron_30-bin
7927     electron_31-bin
7928     electron_32-bin
7929     electron_33-bin
7930     ;
7932   inherit (callPackages ../development/tools/electron/chromedriver { })
7933     electron-chromedriver_29
7934     electron-chromedriver_30
7935     electron-chromedriver_31
7936     electron-chromedriver_32
7937     electron-chromedriver_33
7938     ;
7940   electron_24 = electron_24-bin;
7941   electron_27 = electron_27-bin;
7942   electron_28 = electron_28-bin;
7943   electron_29 = electron_29-bin;
7944   electron_30 = electron_30-bin;
7945   electron_31 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_31 then electron-source.electron_31 else electron_31-bin;
7946   electron_32 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_32 then electron-source.electron_32 else electron_32-bin;
7947   electron_33 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_33 then electron-source.electron_33 else electron_33-bin;
7948   electron = electron_33;
7949   electron-bin = electron_33-bin;
7950   electron-chromedriver = electron-chromedriver_33;
7952   autoconf = callPackage ../development/tools/misc/autoconf { };
7953   autoconf213 = callPackage ../development/tools/misc/autoconf/2.13.nix { };
7954   autoconf264 = callPackage ../development/tools/misc/autoconf/2.64.nix { };
7955   autoconf269 = callPackage ../development/tools/misc/autoconf/2.69.nix { };
7956   autoconf271 = callPackage ../development/tools/misc/autoconf/2.71.nix { };
7958   automake = automake116x;
7960   automake111x = callPackage ../development/tools/misc/automake/automake-1.11.x.nix { };
7962   automake115x = callPackage ../development/tools/misc/automake/automake-1.15.x.nix { };
7964   automake116x = callPackage ../development/tools/misc/automake/automake-1.16.x.nix { };
7966   automake117x = callPackage ../development/tools/misc/automake/automake-1.17.x.nix { };
7968   bandit = with python3Packages; toPythonApplication bandit;
7970   bazel = bazel_6;
7972   bazel_5 = callPackage ../development/tools/build-managers/bazel/bazel_5 {
7973     inherit (darwin) sigtool;
7974     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
7975     buildJdk = jdk11_headless;
7976     runJdk = jdk11_headless;
7977     stdenv = if stdenv.cc.isClang then llvmPackages.stdenv
7978       else if stdenv.cc.isGNU then gcc12Stdenv
7979       else stdenv;
7980     bazel_self = bazel_5;
7981   };
7983   bazel_6 = darwin.apple_sdk_11_0.callPackage ../development/tools/build-managers/bazel/bazel_6 {
7984     inherit (darwin) sigtool;
7985     inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation CoreServices Foundation;
7986     buildJdk = jdk11_headless;
7987     runJdk = jdk11_headless;
7988     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv
7989       else if stdenv.cc.isClang then llvmPackages.stdenv
7990       else if stdenv.cc.isGNU then gcc12Stdenv
7991       else stdenv;
7992     bazel_self = bazel_6;
7993   };
7995   bazel_7 = darwin.apple_sdk_11_0.callPackage ../development/tools/build-managers/bazel/bazel_7 {
7996     inherit (darwin) sigtool;
7997     inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation CoreServices Foundation IOKit;
7998     buildJdk = jdk21_headless;
7999     runJdk = jdk21_headless;
8000     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv
8001       else if stdenv.cc.isClang then llvmPackages.stdenv
8002       else stdenv;
8003     bazel_self = bazel_7;
8004   };
8006   buildifier = bazel-buildtools;
8007   buildozer = bazel-buildtools;
8008   unused_deps = bazel-buildtools;
8010   rebazel = callPackage ../development/tools/rebazel {
8011     inherit (darwin.apple_sdk.frameworks) CoreServices;
8012   };
8014   buildBazelPackage = darwin.apple_sdk_11_0.callPackage ../build-support/build-bazel-package { };
8016   binutils-unwrapped = callPackage ../development/tools/misc/binutils {
8017     inherit (darwin.apple_sdk.frameworks) CoreServices;
8018     # FHS sys dirs presumably only have stuff for the build platform
8019     noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
8020   };
8021   binutils-unwrapped-all-targets = callPackage ../development/tools/misc/binutils {
8022     inherit (darwin.apple_sdk.frameworks) CoreServices;
8023     # FHS sys dirs presumably only have stuff for the build platform
8024     noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
8025     withAllTargets = true;
8026   };
8027   binutils = wrapBintoolsWith {
8028     bintools = binutils-unwrapped;
8029   };
8030   binutils_nogold = lowPrio (wrapBintoolsWith {
8031     bintools = binutils-unwrapped.override {
8032       enableGold = false;
8033     };
8034   });
8035   binutilsNoLibc = wrapBintoolsWith {
8036     bintools = binutils-unwrapped;
8037     libc = preLibcCrossHeaders;
8038   };
8040   libbfd = callPackage ../development/tools/misc/binutils/libbfd.nix { };
8042   libopcodes = callPackage ../development/tools/misc/binutils/libopcodes.nix { };
8044   # Held back 2.38 release. Remove once all dependencies are ported to 2.39.
8045   binutils-unwrapped_2_38 = callPackage ../development/tools/misc/binutils/2.38 {
8046     autoreconfHook = autoreconfHook269;
8047     # FHS sys dirs presumably only have stuff for the build platform
8048     noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
8049   };
8051   libbfd_2_38 = callPackage ../development/tools/misc/binutils/2.38/libbfd.nix {
8052     autoreconfHook = buildPackages.autoreconfHook269;
8053   };
8055   libopcodes_2_38 = callPackage ../development/tools/misc/binutils/2.38/libopcodes.nix {
8056     autoreconfHook = buildPackages.autoreconfHook269;
8057   };
8059   # Here we select the default bintools implementations to be used.  Note when
8060   # cross compiling these are used not for this stage but the *next* stage.
8061   # That is why we choose using this stage's target platform / next stage's
8062   # host platform.
8063   #
8064   # Because this is the *next* stages choice, it's a bit non-modular to put
8065   # here. In theory, bootstraping is supposed to not be a chain but at tree,
8066   # where each stage supports many "successor" stages, like multiple possible
8067   # futures. We don't have a better alternative, but with this downside in
8068   # mind, please be judicious when using this attribute. E.g. for building
8069   # things in *this* stage you should use probably `stdenv.cc.bintools` (from a
8070   # default or alternate `stdenv`), at build time, and try not to "force" a
8071   # specific bintools at runtime at all.
8072   #
8073   # In other words, try to only use this in wrappers, and only use those
8074   # wrappers from the next stage.
8075   bintools-unwrapped = let
8076     inherit (stdenv.targetPlatform) linker;
8077   in     if linker == "lld"     then llvmPackages.bintools-unwrapped
8078     else if linker == "cctools" then darwin.binutils-unwrapped
8079     else if linker == "bfd"     then binutils-unwrapped
8080     else if linker == "gold"    then binutils-unwrapped.override { enableGoldDefault = true; }
8081     else null;
8082   bintoolsNoLibc = wrapBintoolsWith {
8083     bintools = bintools-unwrapped;
8084     libc = preLibcCrossHeaders;
8085   };
8086   bintools = wrapBintoolsWith {
8087     bintools = bintools-unwrapped;
8088   };
8090   bintoolsDualAs = wrapBintoolsWith {
8091     bintools = darwin.binutilsDualAs-unwrapped;
8092     wrapGas = true;
8093   };
8095   black = with python3Packages; toPythonApplication black;
8097   blackfire = callPackage ../development/tools/misc/blackfire { };
8099   black-macchiato = with python3Packages; toPythonApplication black-macchiato;
8101   bossa = callPackage ../development/embedded/bossa { };
8103   bossa-arduino = callPackage ../development/embedded/bossa/arduino.nix { };
8105   buck = callPackage ../development/tools/build-managers/buck {
8106     python3 = python311;
8107   };
8109   buck2 = callPackage ../development/tools/build-managers/buck2 { stdenv = stdenvNoCC; };
8111   build2 = callPackage ../development/tools/build-managers/build2 {
8112     # Break cycle by using self-contained toolchain for bootstrapping
8113     build2 = buildPackages.callPackage ../development/tools/build-managers/build2/bootstrap.nix { };
8114   };
8116   # Dependency of build2, must also break cycle for this
8117   libbutl = callPackage ../development/libraries/libbutl {
8118     build2 = build2.bootstrap;
8119     inherit (darwin) DarwinTools;
8120   };
8122   bdep = callPackage ../development/tools/build-managers/build2/bdep.nix { };
8124   bore-cli = callPackage ../tools/networking/bore-cli/default.nix {
8125     inherit (darwin.apple_sdk.frameworks) Security;
8126   };
8128   bpkg = callPackage ../development/tools/build-managers/build2/bpkg.nix { };
8130   buildkite-test-collector-rust  = callPackage ../development/tools/continuous-integration/buildkite-test-collector-rust {
8131     inherit (darwin.apple_sdk.frameworks) Security;
8132   };
8134   libbpf = callPackage ../os-specific/linux/libbpf { };
8135   libbpf_0 = callPackage ../os-specific/linux/libbpf/0.x.nix { };
8137   bundlewrap = with python3.pkgs; toPythonApplication bundlewrap;
8139   cadre = callPackage ../development/tools/cadre { };
8141   # Wrapper that works as gcc or g++
8142   # It can be used by setting in nixpkgs config like this, for example:
8143   #    replaceStdenv = { pkgs }: pkgs.ccacheStdenv;
8144   # But if you build in chroot, you should have that path in chroot
8145   # If instantiated directly, it will use $HOME/.ccache as the cache directory,
8146   # i.e. /homeless-shelter/.ccache using the Nix daemon.
8147   # You should specify a different directory using an override in
8148   # packageOverrides to set extraConfig.
8149   #
8150   # Example using Nix daemon (i.e. multiuser Nix install or on NixOS):
8151   #    packageOverrides = pkgs: {
8152   #     ccacheWrapper = pkgs.ccacheWrapper.override {
8153   #       extraConfig = ''
8154   #         export CCACHE_COMPRESS=1
8155   #         export CCACHE_DIR=/var/cache/ccache
8156   #         export CCACHE_UMASK=007
8157   #       '';
8158   #     };
8159   # You can use a different directory, but whichever directory you choose
8160   # should be owned by user root, group nixbld with permissions 0770.
8161   ccacheWrapper = makeOverridable ({ extraConfig, cc }:
8162     cc.override {
8163       cc = ccache.links {
8164         inherit extraConfig;
8165         unwrappedCC = cc.cc;
8166       };
8167     }) {
8168       extraConfig = "";
8169       inherit (stdenv) cc;
8170     };
8172   ccacheStdenv = lowPrio (makeOverridable ({ stdenv, ... } @ extraArgs:
8173     overrideCC stdenv (buildPackages.ccacheWrapper.override ({
8174       inherit (stdenv) cc;
8175     } // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) {
8176       extraConfig = extraArgs.extraConfig;
8177     }))) {
8178       inherit stdenv;
8179     });
8181   matter-compiler = callPackage ../development/compilers/matter-compiler { };
8183   chromedriver = callPackage ../development/tools/selenium/chromedriver { };
8185   chruby = callPackage ../development/tools/misc/chruby { rubies = null; };
8187   cloudcompare = libsForQt5.callPackage ../applications/graphics/cloudcompare { };
8189   coder = callPackage ../development/tools/coder { };
8191   cookiecutter = with python3Packages; toPythonApplication cookiecutter;
8193   corundum = callPackage ../development/tools/corundum { };
8195   ctags = callPackage ../development/tools/misc/ctags { };
8197   ctagsWrapped = callPackage ../development/tools/misc/ctags/wrapped.nix { };
8199   cubiomes-viewer = libsForQt5.callPackage ../applications/misc/cubiomes-viewer { };
8201   # can't use override - it triggers infinite recursion
8202   cmakeMinimal = callPackage ../by-name/cm/cmake/package.nix {
8203     isMinimalBuild = true;
8204   };
8206   cmakeCurses = cmake.override {
8207     uiToolkits = [ "ncurses" ];
8208   };
8210   cmakeWithGui = cmake.override {
8211     uiToolkits = [ "ncurses" "qt5" ];
8212   };
8214   cmake-format = python3Packages.callPackage ../development/tools/cmake-format { };
8216   cmake-language-server = python3Packages.callPackage ../development/tools/misc/cmake-language-server {
8217     inherit cmake cmake-format;
8218   };
8220   # Does not actually depend on Qt 5
8221   inherit (plasma5Packages) extra-cmake-modules;
8223   coccinelle = callPackage ../development/tools/misc/coccinelle {
8224     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
8225   };
8227   credstash = with python3Packages; toPythonApplication credstash;
8229   creduce = callPackage ../development/tools/misc/creduce {
8230     inherit (llvmPackages_16) llvm libclang;
8231   };
8233   inherit (nodePackages) csslint;
8235   css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify;
8237   cvise = python3Packages.callPackage ../development/tools/misc/cvise {
8238     # cvise keeps up with fresh llvm releases and supports wide version range
8239     inherit (llvmPackages_14) llvm libclang;
8240   };
8242   dbt = with python3Packages; toPythonApplication dbt-core;
8244   dprint = callPackage ../development/tools/dprint {
8245     inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation Security;
8246   };
8248   devbox = callPackage ../development/tools/devbox { buildGoModule = buildGo123Module; };
8250   libcxx = llvmPackages.libcxx;
8252   libgcc = stdenv.cc.cc.libgcc or null;
8254   # This is for e.g. LLVM libraries on linux.
8255   gccForLibs =
8256     if stdenv.targetPlatform == stdenv.hostPlatform && targetPackages.stdenv.cc.isGNU
8257     # Can only do this is in the native case, otherwise we might get infinite
8258     # recursion if `targetPackages.stdenv.cc.cc` itself uses `gccForLibs`.
8259       then targetPackages.stdenv.cc.cc
8260     else gcc.cc;
8262   libstdcxx5 = callPackage ../development/libraries/gcc/libstdc++/5.nix { };
8264   libsigrok = callPackage ../development/tools/libsigrok {
8265     python = python3;
8266   };
8268   distcc = callPackage ../development/tools/misc/distcc {
8269     libiberty_static = libiberty.override { staticBuild = true; };
8270   };
8272   # distccWrapper: wrapper that works as gcc or g++
8273   # It can be used by setting in nixpkgs config like this, for example:
8274   #    replaceStdenv = { pkgs }: pkgs.distccStdenv;
8275   # But if you build in chroot, a default 'nix' will create
8276   # a new net namespace, and won't have network access.
8277   # You can use an override in packageOverrides to set extraConfig:
8278   #    packageOverrides = pkgs: {
8279   #     distccWrapper = pkgs.distccWrapper.override {
8280   #       extraConfig = ''
8281   #         DISTCC_HOSTS="myhost1 myhost2"
8282   #       '';
8283   #     };
8284   #
8285   distccWrapper = makeOverridable ({ extraConfig ? "" }:
8286     wrapCC (distcc.links extraConfig)) { };
8287   distccStdenv = lowPrio (overrideCC stdenv buildPackages.distccWrapper);
8289   distccMasquerade = if stdenv.hostPlatform.isDarwin
8290     then null
8291     else callPackage ../development/tools/misc/distcc/masq.nix {
8292       gccRaw = gcc.cc;
8293       binutils = binutils;
8294     };
8296   docutils = with python3Packages; toPythonApplication docutils;
8298   doit = with python3Packages; toPythonApplication doit;
8300   dot2tex = with python3.pkgs; toPythonApplication dot2tex;
8302   doxygen = darwin.apple_sdk_11_0.callPackage ../development/tools/documentation/doxygen {
8303     qt5 = null;
8304     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices;
8305   };
8307   doxygen_gui = lowPrio (doxygen.override { inherit qt5; });
8309   drake = callPackage ../development/tools/build-managers/drake { };
8311   dura = callPackage ../development/tools/misc/dura {
8312     inherit (darwin.apple_sdk.frameworks) Security;
8313   };
8315   edb = libsForQt5.callPackage ../development/tools/misc/edb { };
8317   elf2uf2-rs = darwin.apple_sdk_11_0.callPackage ../development/embedded/elf2uf2-rs {
8318     inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation DiskArbitration Foundation;
8319   };
8321   license_finder = callPackage ../development/tools/license_finder { };
8323   # NOTE: Override and set useIcon = false to use Awk instead of Icon.
8324   fffuu = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../tools/misc/fffuu { });
8326   flow = callPackage ../development/tools/analysis/flow {
8327     inherit (darwin.apple_sdk.frameworks) CoreServices;
8328     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
8329   };
8331   fswatch = callPackage ../development/tools/misc/fswatch {
8332     inherit (darwin.apple_sdk.frameworks) CoreServices;
8333     autoreconfHook = buildPackages.autoreconfHook269;
8334   };
8336   fujprog = callPackage ../development/embedded/fpga/fujprog {
8337     inherit (darwin.apple_sdk.frameworks) IOKit;
8338   };
8340   gede = libsForQt5.callPackage ../development/tools/misc/gede { };
8342   gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { };
8344   pmd = callPackage ../development/tools/analysis/pmd {
8345     openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
8346   };
8348   jdepend = callPackage ../development/tools/analysis/jdepend {
8349     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
8350   };
8352   flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { };
8353   flex = callPackage ../development/tools/parsing/flex { };
8355   m4 = gnum4;
8357   gnumake = callPackage ../development/tools/build-managers/gnumake { };
8358   gradle-packages = import ../development/tools/build-managers/gradle {
8359     inherit jdk11 jdk17 jdk21;
8360   };
8361   gradleGen = gradle-packages.gen;
8362   wrapGradle = callPackage gradle-packages.wrapGradle { };
8364   gradle_7-unwrapped = callPackage gradle-packages.gradle_7 { };
8365   gradle_8-unwrapped = callPackage gradle-packages.gradle_8 { };
8366   gradle-unwrapped = gradle_8-unwrapped;
8368   gradle_7 = wrapGradle gradle_7-unwrapped null;
8369   gradle_8 = wrapGradle gradle_8-unwrapped null;
8370   gradle = wrapGradle gradle-unwrapped "gradle-unwrapped";
8372   gperf = callPackage ../development/tools/misc/gperf { };
8373   # 3.1 changed some parameters from int to size_t, leading to mismatches.
8374   gperf_3_0 = callPackage ../development/tools/misc/gperf/3.0.x.nix { };
8376   griffe = with python3Packages; toPythonApplication griffe;
8378   gwrap = g-wrap;
8379   g-wrap = callPackage ../by-name/g-/g-wrap/package.nix {
8380     guile = guile_2_2;
8381   };
8383   hadolint =
8384     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
8385     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
8386     haskellPackages.hadolint;
8388   iaca_2_1 = callPackage ../development/tools/iaca/2.1.nix { };
8389   iaca_3_0 = callPackage ../development/tools/iaca/3.0.nix { };
8390   iaca = iaca_3_0;
8392   ikos = callPackage ../development/tools/analysis/ikos {
8393     inherit (llvmPackages_14) stdenv clang llvm;
8394     tbb = tbb_2021_11;
8395   };
8397   include-what-you-use = callPackage ../development/tools/analysis/include-what-you-use {
8398     llvmPackages = llvmPackages_18;
8399   };
8401   inherit (callPackage ../applications/misc/inochi2d { })
8402     inochi-creator inochi-session;
8404   javacc = callPackage ../development/tools/parsing/javacc {
8405     # Upstream doesn't support anything newer than Java 8.
8406     # https://github.com/javacc/javacc/blob/c708628423b71ce8bc3b70143fa5b6a2b7362b3a/README.md#building-javacc-from-source
8407     jdk = jdk8;
8408     jre = jre8;
8409   };
8411   jenkins-job-builder = with python3Packages; toPythonApplication jenkins-job-builder;
8413   kcc = libsForQt5.callPackage ../applications/graphics/kcc { };
8415   kubie = callPackage ../development/tools/kubie {
8416     inherit (darwin.apple_sdk.frameworks) Security;
8417   };
8419   kustomize = callPackage ../development/tools/kustomize { };
8421   kustomize_3 = callPackage ../development/tools/kustomize/3.nix { };
8423   kustomize_4 = callPackage ../development/tools/kustomize/4.nix { };
8425   kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { };
8427   libtool = libtool_2;
8429   libtool_1_5 = callPackage ../development/tools/misc/libtool { };
8431   libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { };
8433   linuxkit = callPackage ../development/tools/misc/linuxkit {
8434     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa Virtualization;
8435     inherit (darwin) sigtool;
8436   };
8438   listenbrainz-mpd = callPackage ../applications/audio/listenbrainz-mpd  {
8439     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration CoreFoundation;
8440   };
8442   lit = with python3Packages; toPythonApplication lit;
8444   lttng-ust = callPackage ../development/tools/misc/lttng-ust { };
8446   lttng-ust_2_12 = callPackage ../development/tools/misc/lttng-ust/2.12.nix { };
8448   marksman = callPackage ../development/tools/marksman { };
8450   massif-visualizer = libsForQt5.callPackage ../development/tools/analysis/massif-visualizer { };
8452   maven3 = maven;
8453   inherit (maven) buildMaven;
8455   mavproxy = python3Packages.callPackage ../applications/science/robotics/mavproxy { };
8457   mdl = callPackage ../development/tools/misc/mdl { };
8459   meraki-cli = python3Packages.callPackage ../tools/admin/meraki-cli { };
8461   python-matter-server = with python3Packages; toPythonApplication (
8462     python-matter-server.overridePythonAttrs (oldAttrs: {
8463       dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.server;
8464     })
8465   );
8467   minizinc = callPackage ../development/tools/minizinc { };
8468   minizincide = qt6Packages.callPackage ../development/tools/minizinc/ide.nix {
8469     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa;
8470   };
8472   mkdocs = with python3Packages; toPythonApplication mkdocs;
8474   mold = callPackage ../by-name/mo/mold/package.nix {
8475     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
8476     tbb = tbb_2021_11;
8477   };
8479   mold-wrapped = wrapBintoolsWith {
8480     bintools = mold;
8481     extraBuildCommands = ''
8482       wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}ld.mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/ld.mold
8483       wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/mold
8484     '';
8485   };
8487   moon = callPackage ../development/tools/build-managers/moon/default.nix { };
8489   mopsa = ocamlPackages.mopsa.bin;
8491   haskell-ci =
8492     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
8493     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
8494       haskellPackages.haskell-ci;
8496   nimbo = with python3Packages; callPackage ../applications/misc/nimbo { };
8498   nixbang = callPackage ../development/tools/misc/nixbang {
8499     pythonPackages = python3Packages;
8500   };
8502   nexusmods-app-unfree = nexusmods-app.override {
8503     pname = "nexusmods-app-unfree";
8504     _7zz = _7zz-rar;
8505   };
8507   nwjs = callPackage ../development/tools/nwjs { };
8509   nwjs-sdk = callPackage ../development/tools/nwjs {
8510     sdk = true;
8511   };
8513   obelisk = callPackage ../development/tools/ocaml/obelisk { menhir = ocamlPackages.menhir; };
8515   openai = with python3Packages; toPythonApplication openai;
8517   openai-whisper = with python3.pkgs; toPythonApplication openai-whisper;
8519   openai-whisper-cpp = darwin.apple_sdk_11_0.callPackage ../tools/audio/openai-whisper-cpp {
8520     inherit (darwin.apple_sdk_11_0.frameworks) Accelerate CoreGraphics CoreML CoreVideo MetalKit;
8521   };
8523   openocd-rp2040 = openocd.overrideAttrs (old: {
8524     pname = "openocd-rp2040";
8525     src = fetchFromGitHub {
8526       owner = "raspberrypi";
8527       repo = "openocd";
8528       rev = "4d87f6dcae77d3cbcd8ac3f7dc887adf46ffa504";
8529       hash = "sha256-bBqVoHsnNoaC2t8hqcduI8GGlO0VDMUovCB0HC+rxvc=";
8530       # openocd disables the vendored libraries that use submodules and replaces them with nix versions.
8531       # this works out as one of the submodule sources seems to be flakey.
8532       fetchSubmodules = false;
8533     };
8534     nativeBuildInputs = old.nativeBuildInputs ++ [
8535       autoreconfHook
8536     ];
8537   });
8539   oprofile = callPackage ../development/tools/profiling/oprofile {
8540     libiberty_static = libiberty.override { staticBuild = true; };
8541   };
8543   pactorio = callPackage ../development/tools/pactorio {
8544     inherit (darwin.apple_sdk.frameworks) Security;
8545   };
8547   patchelf = callPackage ../development/tools/misc/patchelf { };
8549   patchelfUnstable = lowPrio (callPackage ../development/tools/misc/patchelf/unstable.nix { });
8551   pgcli = with pkgs.python3Packages; toPythonApplication pgcli;
8553   pkgconf-unwrapped = libpkgconf;
8555   pkgconf = callPackage ../build-support/pkg-config-wrapper {
8556     pkg-config = pkgconf-unwrapped;
8557     baseBinName = "pkgconf";
8558   };
8560   pkg-config = callPackage ../build-support/pkg-config-wrapper {
8561     pkg-config = pkg-config-unwrapped;
8562   };
8564   pkg-configUpstream = lowPrio (pkg-config.override (old: {
8565     pkg-config = old.pkg-config.override {
8566       vanilla = true;
8567     };
8568   }));
8570   pnpm-lock-export = callPackage ../development/web/pnpm-lock-export { };
8572   portableService = callPackage ../build-support/portable-service { };
8574   polar = callPackage ../tools/misc/polar { };
8576   inherit (nodePackages) postcss-cli;
8578   pyprof2calltree = with python3Packages; toPythonApplication pyprof2calltree;
8580   premake3 = callPackage ../development/tools/misc/premake/3.nix { };
8582   premake4 = callPackage ../development/tools/misc/premake { };
8584   premake5 = callPackage ../development/tools/misc/premake/5.nix {
8585     inherit (darwin.apple_sdk.frameworks) Foundation;
8586   };
8588   premake = premake4;
8590   procodile = callPackage ../tools/system/procodile { };
8592   pry = callPackage ../development/tools/pry { };
8594   pycritty = with python3Packages; toPythonApplication pycritty;
8596   qtcreator = qt6Packages.callPackage ../development/tools/qtcreator {
8597     inherit (linuxPackages) perf;
8598     stdenv = llvmPackages.stdenv;
8599   };
8601   qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit {} ;
8603   radare2 = callPackage ../development/tools/analysis/radare2 ({
8604     lua = lua5;
8605   } // (config.radare or {}));
8607   rizin = pkgs.callPackage ../development/tools/analysis/rizin { };
8609   rizinPlugins = recurseIntoAttrs rizin.plugins;
8611   cutter = qt6.callPackage ../development/tools/analysis/rizin/cutter.nix { };
8613   cutterPlugins = recurseIntoAttrs cutter.plugins;
8615   ragel = ragelStable;
8617   inherit (callPackages ../development/tools/parsing/ragel { }) ragelStable ragelDev;
8619   redis-dump = callPackage ../development/tools/redis-dump { };
8621   inherit (regclient) regbot regctl regsync;
8623   reno = callPackage ../development/tools/reno {
8624     python3Packages = python311Packages;
8625   };
8627   replace-secret = callPackage ../build-support/replace-secret/replace-secret.nix { };
8629   inherit (callPackage ../development/tools/replay-io { })
8630     replay-io replay-node-cli;
8632   rnginline = with python3Packages; toPythonApplication rnginline;
8634   rr = callPackage ../development/tools/analysis/rr { };
8636   rufo = callPackage ../development/tools/rufo { };
8638   muonStandalone = muon.override {
8639     embedSamurai = true;
8640     buildDocs = false;
8641   };
8643   sauce-connect = callPackage ../development/tools/sauce-connect { };
8645   sbomnix = python3.pkgs.callPackage ../tools/security/sbomnix { };
8647   seer = libsForQt5.callPackage ../development/tools/misc/seer { };
8649   semantik = libsForQt5.callPackage ../applications/office/semantik { };
8651   sbt = callPackage ../development/tools/build-managers/sbt { };
8652   sbt-with-scala-native = callPackage ../development/tools/build-managers/sbt/scala-native.nix { };
8653   simpleBuildTool = sbt;
8655   scala-cli = callPackage ../development/tools/build-managers/scala-cli { };
8657   scss-lint = callPackage ../development/tools/scss-lint { };
8659   shadowenv = callPackage ../tools/misc/shadowenv {
8660     inherit (darwin.apple_sdk.frameworks) Security;
8661   };
8663   shake =
8664     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
8665     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
8666     haskellPackages.shake;
8668   inherit (callPackage ../development/tools/build-managers/shards { })
8669     shards_0_17
8670     shards;
8672   shellcheck = callPackage ../development/tools/shellcheck {
8673     inherit (__splicedPackages.haskellPackages) ShellCheck;
8674   };
8677   # Minimal shellcheck executable for package checks.
8678   # Use shellcheck which does not include docs, as
8679   # pandoc takes long to build and documentation isn't needed for just running the cli
8680   shellcheck-minimal = haskell.lib.compose.justStaticExecutables shellcheck.unwrapped;
8682   slint-lsp = callPackage ../by-name/sl/slint-lsp/package.nix {
8683     inherit (darwin.apple_sdk_11_0.frameworks) AppKit CoreGraphics CoreServices CoreText Foundation OpenGL;
8684   };
8686   sloc = nodePackages.sloc;
8688   snowman = qt5.callPackage ../development/tools/analysis/snowman { };
8690   sparse = callPackage ../development/tools/analysis/sparse {
8691     llvm = llvm_14;
8692   };
8694   speedtest-cli = with python3Packages; toPythonApplication speedtest-cli;
8696   splint = callPackage ../development/tools/analysis/splint {
8697     flex = flex_2_5_35;
8698   };
8700   spoofer = callPackage ../tools/networking/spoofer {
8701     protobuf = protobuf_21;
8702   };
8704   spoofer-gui = callPackage ../tools/networking/spoofer {
8705     withGUI = true;
8706     protobuf = protobuf_21;
8707   };
8709   spr = callPackage ../development/tools/spr {
8710     inherit (darwin.apple_sdk.frameworks) Security;
8711   };
8713   sqlitebrowser = libsForQt5.callPackage ../development/tools/database/sqlitebrowser { };
8715   sqlite-utils = with python3Packages; toPythonApplication sqlite-utils;
8717   sqlmap = with python3Packages; toPythonApplication sqlmap;
8719   c0 = callPackage ../development/compilers/c0 {
8720     stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
8721   };
8723   swftools = callPackage ../tools/video/swftools {
8724     stdenv = gccStdenv;
8725   };
8727   tarmac = callPackage ../development/tools/tarmac {
8728     inherit (darwin.apple_sdk.frameworks) Security;
8729   };
8731   teensyduino = arduino-core.override { withGui = true; withTeensyduino = true; };
8733   tytools = libsForQt5.callPackage ../development/embedded/tytools { };
8735   texinfoPackages = callPackages ../development/tools/misc/texinfo/packages.nix { };
8736   inherit (texinfoPackages)
8737     texinfo413
8738     texinfo6_5 # needed for allegro
8739     texinfo6_7 # needed for gpm, iksemel and fwknop
8740     texinfo6
8741     texinfo7
8742     ;
8743   texinfo4= texinfo413; # needed for eukleides and singular
8744   texinfo = texinfo7;
8745   texinfoInteractive = texinfo.override { interactive = true; };
8747   texlab = callPackage ../development/tools/misc/texlab {
8748     inherit (darwin.apple_sdk.frameworks) Security CoreServices;
8749   };
8751   tflint-plugins = recurseIntoAttrs (
8752     callPackage ../development/tools/analysis/tflint-plugins { }
8753   );
8755   travis = callPackage ../development/tools/misc/travis { };
8757   tree-sitter = makeOverridable (callPackage ../development/tools/parsing/tree-sitter) {
8758     inherit (darwin.apple_sdk.frameworks) Security CoreServices;
8759   };
8761   tree-sitter-grammars = recurseIntoAttrs tree-sitter.builtGrammars;
8763   uhd = callPackage ../applications/radio/uhd { };
8764   uhdMinimal = uhd.override {
8765     enableUtils = false;
8766     enablePythonApi = false;
8767   };
8769   gdb = callPackage ../development/tools/misc/gdb {
8770     guile = null;
8771   };
8773   gdbHostCpuOnly = gdb.override { hostCpuOnly = true; };
8775   jprofiler = callPackage ../development/tools/java/jprofiler {
8776     jdk = jdk11;
8777   };
8779   valgrind = callPackage ../development/tools/analysis/valgrind {
8780     inherit (buildPackages.darwin) xnu bootstrap_cmds;
8781   };
8782   valgrind-light = (res.valgrind.override { gdb = null; }).overrideAttrs (oldAttrs: {
8783     meta = oldAttrs.meta // { description = "${oldAttrs.meta.description} (without GDB)"; };
8784   });
8786   qcachegrind = libsForQt5.callPackage ../development/tools/analysis/qcachegrind { };
8788   vcpkg-tool-unwrapped = callPackage ../by-name/vc/vcpkg-tool/package.nix { doWrap = false; };
8790   wails = callPackage ../development/tools/wails {
8791     stdenv = gccStdenv;
8792   };
8794   whatstyle = callPackage ../development/tools/misc/whatstyle {
8795     inherit (llvmPackages) clang-unwrapped;
8796   };
8798   watson-ruby = callPackage ../development/tools/misc/watson-ruby { };
8800   xmake = darwin.apple_sdk_11_0.callPackage ../development/tools/build-managers/xmake {
8801     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices;
8802   };
8804   xcode-install = callPackage ../development/tools/xcode-install { };
8806   xcbuild = callPackage ../by-name/xc/xcbuild/package.nix {
8807     stdenv =
8808       # xcbuild is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
8809       if stdenv.hostPlatform.isDarwin then
8810         darwin.bootstrapStdenv
8811       else
8812         stdenv;
8813   };
8815   xcbuildHook = makeSetupHook {
8816     name = "xcbuild-hook";
8817     propagatedBuildInputs = [ xcbuild ];
8818   } ../by-name/xc/xcbuild/setup-hook.sh;
8820   xcodebuild = xcbuild;
8822   xcpretty = callPackage ../development/tools/xcpretty { };
8824   xxdiff = libsForQt5.callPackage ../development/tools/misc/xxdiff { };
8826   xxe-pe = callPackage ../applications/editors/xxe-pe { };
8828   xxdiff-tip = xxdiff;
8830   ycmd = callPackage ../by-name/yc/ycmd/package.nix {
8831     inherit (darwin.apple_sdk.frameworks) Cocoa;
8832     python = python3;
8833   };
8835   yourkit-java = callPackage ../by-name/yo/yourkit-java/package.nix {
8836     jre = jdk17;
8837   };
8839   yq = python3.pkgs.toPythonApplication python3.pkgs.yq;
8841   mypy = with python3Packages; toPythonApplication mypy;
8843   mypy-protobuf = with python3Packages; toPythonApplication mypy-protobuf;
8845   ### DEVELOPMENT / LIBRARIES
8847   abseil-cpp_202103 = callPackage ../development/libraries/abseil-cpp/202103.nix {
8848     # If abseil-cpp doesn’t have a deployment target of 10.13+, arrow-cpp crashes in libgrpc.dylib.
8849     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64
8850       then overrideSDK stdenv { darwinMinVersion = "10.13"; }
8851       else stdenv;
8852   };
8853   abseil-cpp_202301 = callPackage ../development/libraries/abseil-cpp/202301.nix {
8854     # If abseil-cpp doesn’t have a deployment target of 10.13+, arrow-cpp crashes in libgrpc.dylib.
8855     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64
8856       then overrideSDK stdenv { darwinMinVersion = "10.13"; }
8857       else stdenv;
8858   };
8859   abseil-cpp_202401 = callPackage ../development/libraries/abseil-cpp/202401.nix {
8860     # If abseil-cpp doesn’t have a deployment target of 10.13+, arrow-cpp crashes in libgrpc.dylib.
8861     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64
8862       then overrideSDK stdenv { darwinMinVersion = "10.13"; }
8863       else stdenv;
8864   };
8865   abseil-cpp_202407 = callPackage ../development/libraries/abseil-cpp/202407.nix {
8866      # If abseil-cpp doesn’t have a deployment target of 10.13+, arrow-cpp crashes in libgrpc.dylib.
8867     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64
8868       then overrideSDK stdenv { darwinMinVersion = "10.13"; }
8869       else stdenv;
8870   };
8871   abseil-cpp = abseil-cpp_202407;
8873   acl = callPackage ../development/libraries/acl { };
8875   agg = callPackage ../development/libraries/agg {
8876     stdenv = gccStdenv;
8877   };
8879   allegro = allegro4;
8880   allegro4 = callPackage ../development/libraries/allegro { };
8881   allegro5 = callPackage ../development/libraries/allegro/5.nix { };
8883   ansi2html = with python3.pkgs; toPythonApplication ansi2html;
8885   appstream = callPackage ../development/libraries/appstream { };
8887   apr = callPackage ../development/libraries/apr {
8888     autoreconfHook = buildPackages.autoreconfHook269;
8889   };
8891   argparse-manpage = with python3Packages; toPythonApplication argparse-manpage;
8893   aribb25 = callPackage ../development/libraries/aribb25 {
8894     inherit (darwin.apple_sdk.frameworks) PCSC;
8895   };
8897   arrayfire = callPackage ../development/libraries/arrayfire {
8898     cudaPackages = cudaPackages_12;
8899   };
8901   asio_1_10 = callPackage ../development/libraries/asio/1.10.nix { };
8902   asio = callPackage ../development/libraries/asio { };
8904   aspell = callPackage ../development/libraries/aspell { };
8906   aspellDicts = recurseIntoAttrs (callPackages ../development/libraries/aspell/dictionaries.nix {});
8908   aspellWithDicts = callPackage ../development/libraries/aspell/aspell-with-dicts.nix {
8909     aspell = aspell.override { searchNixProfiles = false; };
8910   };
8912   attr = callPackage ../development/libraries/attr { };
8914   # Not moved to aliases while we decide if we should split the package again.
8915   at-spi2-atk = at-spi2-core;
8917   aqbanking = callPackage ../development/libraries/aqbanking { };
8919   audiofile = callPackage ../development/libraries/audiofile {
8920     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreServices;
8921   };
8923   aws-c-cal = callPackage ../development/libraries/aws-c-cal {
8924     inherit (darwin.apple_sdk.frameworks) Security;
8925   };
8927   aws-c-io = callPackage ../development/libraries/aws-c-io {
8928     inherit (darwin.apple_sdk.frameworks) Security;
8929   };
8931   aws-sdk-cpp = callPackage ../development/libraries/aws-sdk-cpp {
8932     inherit (darwin.apple_sdk.frameworks) CoreAudio AudioToolbox;
8933   };
8935   backlight-auto = callPackage ../by-name/ba/backlight-auto/package.nix {
8936     zig = buildPackages.zig_0_11;
8937   };
8939   inherit (callPackages ../development/libraries/bashup-events { }) bashup-events32 bashup-events44;
8941   bc-soci = callPackage ../development/libraries/soci/bc-soci.nix { };
8943   # TODO(@Ericson2314): Build bionic libc from source
8944   bionic = if stdenv.hostPlatform.useAndroidPrebuilt
8945     then pkgs."androidndkPkgs_${stdenv.hostPlatform.androidNdkVersion}".libraries
8946     else callPackage ../os-specific/linux/bionic-prebuilt { };
8948   inherit (callPackage ../development/libraries/boost { inherit (buildPackages) boost-build; })
8949     boost175
8950     boost177
8951     boost178
8952     boost179
8953     boost180
8954     boost181
8955     boost182
8956     boost183
8957     boost184
8958     boost185
8959     boost186
8960   ;
8962   boost = boost181;
8964   inherit (callPackages ../development/libraries/botan { })
8965     botan2
8966     botan3
8967     ;
8969   box2d = callPackage ../development/libraries/box2d {
8970     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa Kernel OpenGL;
8971   };
8973   c-ares = callPackage ../development/libraries/c-ares { };
8975   c-aresMinimal = callPackage ../development/libraries/c-ares {
8976     withCMake = false;
8977   };
8979   inherit (callPackages ../development/libraries/c-blosc { })
8980     c-blosc c-blosc2;
8982   cachix = lib.getBin haskellPackages.cachix;
8984   cubeb = callPackage ../development/libraries/audio/cubeb {
8985     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio CoreServices;
8986   };
8988   hercules-ci-agent = callPackage ../development/tools/continuous-integration/hercules-ci-agent { };
8990   hci = callPackage ../development/tools/continuous-integration/hci { };
8992   isa-l = callPackage ../development/libraries/isa-l { };
8994   niv = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.niv);
8996   ormolu = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.ormolu);
8998   catboost = callPackage ../by-name/ca/catboost/package.nix {
8999     # https://github.com/catboost/catboost/issues/2540
9000     cudaPackages = cudaPackages_11;
9001   };
9003   cctag = callPackage ../development/libraries/cctag {
9004     stdenv = clangStdenv;
9005     tbb = tbb_2021_11;
9006   };
9008   cctz = callPackage ../development/libraries/cctz {
9009     inherit (darwin.apple_sdk.frameworks) Foundation;
9010   };
9012   ceedling = callPackage ../development/tools/ceedling { };
9014   celt = callPackage ../development/libraries/celt { };
9015   celt_0_7 = callPackage ../development/libraries/celt/0.7.nix { };
9016   celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix { };
9018   certbot = python3.pkgs.toPythonApplication python3.pkgs.certbot;
9020   certbot-full = certbot.withPlugins (cp: with cp; [
9021     certbot-dns-cloudflare
9022     certbot-dns-google
9023     certbot-dns-ovh
9024     certbot-dns-rfc2136
9025     certbot-dns-route53
9026   ]);
9028   # CGAL 5 has API changes
9029   cgal_4 = callPackage ../development/libraries/CGAL/4.nix { };
9030   cgal_5 = callPackage ../development/libraries/CGAL { };
9031   cgal = cgal_5;
9033   check = callPackage ../development/libraries/check {
9034     inherit (darwin.apple_sdk.frameworks) CoreServices;
9035   };
9037   clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { };
9039   clucene_core = clucene_core_2;
9041   clutter-gst = callPackage ../development/libraries/clutter-gst {
9042   };
9044   codecserver = callPackage ../applications/audio/codecserver {
9045     protobuf = protobuf_21;
9046   };
9048   cogl = callPackage ../development/libraries/cogl {
9049     inherit (darwin.apple_sdk.frameworks) OpenGL;
9050   };
9052   coinlive = callPackage ../tools/misc/coinlive {
9053     inherit (darwin.apple_sdk.frameworks) Security;
9054   };
9056   inherit (cosmopolitan) cosmocc;
9058   ctranslate2 = callPackage ../development/libraries/ctranslate2 rec {
9059     stdenv = if withCUDA then gcc11Stdenv else pkgs.stdenv;
9060     withCUDA = pkgs.config.cudaSupport;
9061     withCuDNN = withCUDA && (cudaPackages ? cudnn);
9062     cudaPackages = pkgs.cudaPackages;
9063   };
9065   ustream-ssl = callPackage ../development/libraries/ustream-ssl { ssl_implementation = openssl; };
9067   ustream-ssl-wolfssl = callPackage ../development/libraries/ustream-ssl { ssl_implementation = wolfssl; additional_buildInputs = [ openssl ]; };
9069   ustream-ssl-mbedtls = callPackage ../development/libraries/ustream-ssl {
9070     ssl_implementation = mbedtls_2;
9071     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
9072   };
9074   cxxtest = python3Packages.callPackage ../development/libraries/cxxtest { };
9076   cypress = callPackage ../development/web/cypress { };
9078   # Make bdb5 the default as it is the last release under the custom
9079   # bsd-like license
9080   db = db5;
9081   db4 = db48;
9082   db48 = callPackage ../development/libraries/db/db-4.8.nix { };
9083   db5 = db53;
9084   db53 = callPackage ../development/libraries/db/db-5.3.nix { };
9085   db6 = db60;
9086   db60 = callPackage ../development/libraries/db/db-6.0.nix { };
9087   db62 = callPackage ../development/libraries/db/db-6.2.nix { };
9089   dbus = callPackage ../development/libraries/dbus { };
9090   dbus-sharp-1_0 = callPackage ../development/libraries/dbus-sharp/dbus-sharp-1.0.nix { };
9091   dbus-sharp-2_0 = callPackage ../development/libraries/dbus-sharp { };
9093   dbus-sharp-glib-1_0 = callPackage ../development/libraries/dbus-sharp-glib/dbus-sharp-glib-1.0.nix { };
9094   dbus-sharp-glib-2_0 = callPackage ../development/libraries/dbus-sharp-glib { };
9096   makeDBusConf = { suidHelper, serviceDirectories, apparmor ? "disabled" }:
9097     callPackage ../development/libraries/dbus/make-dbus-conf.nix {
9098       inherit suidHelper serviceDirectories apparmor;
9099     };
9101   dee = callPackage ../development/libraries/dee {
9102     autoreconfHook = buildPackages.autoreconfHook269;
9103   };
9105   discord-rpc = callPackage ../development/libraries/discord-rpc {
9106     inherit (darwin.apple_sdk.frameworks) AppKit;
9107   };
9109   draco = callPackage ../development/libraries/draco {
9110     tinygltf = callPackage ../development/libraries/draco/tinygltf.nix { };
9111   };
9113   # Multi-arch "drivers" which we want to build for i686.
9114   driversi686Linux = recurseIntoAttrs {
9115     inherit (pkgsi686Linux)
9116       amdvlk
9117       intel-media-driver
9118       intel-vaapi-driver
9119       mesa
9120       mesa-demos
9121       libva-vdpau-driver
9122       libvdpau-va-gl
9123       vdpauinfo;
9124   };
9126   duckdb = callPackage ../development/libraries/duckdb { };
9128   eccodes = callPackage ../development/libraries/eccodes {
9129     pythonPackages = python3Packages;
9130     stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
9131   };
9133   edencommon = darwin.apple_sdk_11_0.callPackage ../development/libraries/edencommon { };
9135   eigen = callPackage ../development/libraries/eigen { };
9137   eigen2 = callPackage ../development/libraries/eigen/2.0.nix { };
9139   vapoursynth = callPackage ../by-name/va/vapoursynth/package.nix {
9140     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
9141   };
9143   vapoursynth-editor = libsForQt5.callPackage ../by-name/va/vapoursynth/editor.nix { };
9145   vmmlib = callPackage ../development/libraries/vmmlib {
9146     inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
9147   };
9149   elastix = callPackage ../development/libraries/science/biology/elastix {
9150     inherit (darwin.apple_sdk.frameworks) Cocoa;
9151   };
9153   # TODO: Fix references and add justStaticExecutables https://github.com/NixOS/nixpkgs/issues/318013
9154   emanote = haskellPackages.emanote;
9156   enchant2 = callPackage ../development/libraries/enchant/2.x.nix {
9157     inherit (darwin.apple_sdk.frameworks) Cocoa;
9158   };
9159   enchant = enchant2;
9161   libepoxy = callPackage ../development/libraries/libepoxy {
9162     inherit (darwin.apple_sdk.frameworks) Carbon OpenGL;
9163   };
9165   factor-lang-scope = callPackage ../development/compilers/factor-lang/scope.nix { };
9166   factor-lang = factor-lang-scope.interpreter;
9168   far2l = callPackage ../applications/misc/far2l {
9169     inherit (darwin.apple_sdk.frameworks) IOKit Carbon Cocoa AudioToolbox OpenGL System;
9170   };
9172   farstream = callPackage ../development/libraries/farstream {
9173     inherit (gst_all_1)
9174       gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad
9175       gst-libav;
9176     autoreconfHook = buildPackages.autoreconfHook269;
9177   };
9179   fbthrift = darwin.apple_sdk_11_0.callPackage ../development/libraries/fbthrift { };
9181   fb303 = darwin.apple_sdk_11_0.callPackage ../development/libraries/fb303 { };
9183   inherit (callPackage ../development/libraries/ffmpeg { })
9184     ffmpeg_4
9185     ffmpeg_4-headless
9186     ffmpeg_4-full
9187     ffmpeg_6
9188     ffmpeg_6-headless
9189     ffmpeg_6-full
9190     ffmpeg_7
9191     ffmpeg_7-headless
9192     ffmpeg_7-full
9193     ffmpeg
9194     ffmpeg-headless
9195     ffmpeg-full;
9197   fftwSinglePrec = fftw.override { precision = "single"; };
9198   fftwFloat = fftwSinglePrec; # the configure option is just an alias
9199   fftwLongDouble = fftw.override { precision = "long-double"; };
9200   # Need gcc >= 4.6.0 to build with FFTW with quad precision, but Darwin defaults to Clang
9201   fftwQuad = fftw.override {
9202     precision = "quad-precision";
9203     stdenv = gccStdenv;
9204   };
9205   fftwMpi = fftw.override { enableMpi = true; };
9207   fizz = darwin.apple_sdk_11_0.callPackage ../development/libraries/fizz { };
9209   flint = callPackage ../development/libraries/flint { };
9211   flint3 = callPackage ../development/libraries/flint/3.nix { };
9213   fltk13 = callPackage ../development/libraries/fltk {
9214     inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL;
9215   };
9216   fltk14 = callPackage ../development/libraries/fltk/1.4.nix {
9217     inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL;
9218   };
9219   fltk13-minimal = fltk13.override {
9220     withGL = false;
9221     withCairo = false;
9222     withPango = false;
9223     withExamples = false;
9224     withDocs = false;
9225   };
9226   fltk14-minimal = fltk14.override {
9227     withGL = false;
9228     withCairo = false;
9229     withPango = false;
9230     withExamples = false;
9231     withDocs = false;
9232   };
9233   fltk = fltk13;
9234   fltk-minimal = fltk13-minimal;
9236   inherit (callPackages ../development/libraries/fmt { }) fmt_8 fmt_9 fmt_10 fmt_11;
9238   fmt = fmt_10;
9240   fplll = callPackage ../development/libraries/fplll { };
9241   fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix { };
9243   freeimage = callPackage ../development/libraries/freeimage {
9244     inherit (darwin) autoSignDarwinBinariesHook;
9245   };
9247   freeipa = callPackage ../os-specific/linux/freeipa {
9248     kerberos = krb5.override {
9249       withVerto = true;
9250     };
9251     sasl = cyrus_sasl;
9252     samba = samba4.override {
9253       enableLDAP = true;
9254     };
9255   };
9257   frog = res.languageMachines.frog;
9259   fontconfig = callPackage ../development/libraries/fontconfig {
9260     inherit (darwin.apple_sdk.frameworks) CoreFoundation;
9261   };
9263   folly = darwin.apple_sdk_11_0.callPackage ../development/libraries/folly { };
9265   makeFontsConf = callPackage ../development/libraries/fontconfig/make-fonts-conf.nix { };
9267   makeFontsCache = let fontconfig_ = fontconfig; in {fontconfig ? fontconfig_, fontDirectories}:
9268     callPackage ../development/libraries/fontconfig/make-fonts-cache.nix {
9269       inherit fontconfig fontDirectories;
9270     };
9272   freenect = callPackage ../development/libraries/freenect {
9273     inherit (darwin.apple_sdk.frameworks) Cocoa GLUT;
9274   };
9276   gamenetworkingsockets = callPackage ../development/libraries/gamenetworkingsockets {
9277     protobuf = protobuf_21;
9278   };
9280   gcovr = with python3Packages; toPythonApplication gcovr;
9282   gcr = callPackage ../development/libraries/gcr { };
9284   gcr_4 = callPackage ../development/libraries/gcr/4.nix { };
9286   gecode_3 = callPackage ../development/libraries/gecode/3.nix { };
9287   gecode_6 = qt5.callPackage ../development/libraries/gecode { };
9288   gecode = gecode_6;
9290   geph = recurseIntoAttrs (callPackages ../applications/networking/geph { pnpm = pnpm_8; });
9292   gegl = callPackage ../development/libraries/gegl {
9293     inherit (darwin.apple_sdk.frameworks) OpenCL;
9294   };
9296   gensio = darwin.apple_sdk_11_0.callPackage ../development/libraries/gensio { };
9298   geoclue2-with-demo-agent = geoclue2.override { withDemoAgent = true; };
9300   geocode-glib_2 = geocode-glib.override {
9301     libsoup = libsoup_3;
9302   };
9304   geoipWithDatabase = makeOverridable (callPackage ../development/libraries/geoip) {
9305     drvName = "geoip-tools";
9306     geoipDatabase = geolite-legacy;
9307   };
9309   geoip = callPackage ../development/libraries/geoip { };
9311   geos = callPackage ../development/libraries/geos { };
9313   geos_3_9 = callPackage ../development/libraries/geos/3.9.nix { };
9315   geos_3_11 = callPackage ../development/libraries/geos/3.11.nix { };
9317   inherit (callPackages ../development/libraries/getdns { })
9318     getdns stubby;
9320   gettext = callPackage ../development/libraries/gettext { };
9322   gd = callPackage ../development/libraries/gd {
9323     automake = automake115x;
9324   };
9326   gdal = callPackage ../development/libraries/gdal { };
9328   gdalMinimal = callPackage ../development/libraries/gdal {
9329     useMinimalFeatures = true;
9330   };
9332   gdcm = callPackage ../development/libraries/gdcm {
9333     inherit (darwin) DarwinTools;
9334     inherit (darwin.apple_sdk.frameworks) ApplicationServices Cocoa;
9335   };
9337   givaro = callPackage ../development/libraries/givaro { };
9338   givaro_3 = callPackage ../development/libraries/givaro/3.nix { };
9339   givaro_3_7 = callPackage ../development/libraries/givaro/3.7.nix { };
9341   ghp-import = with python3Packages; toPythonApplication ghp-import;
9343   ghcid = haskellPackages.ghcid.bin;
9345   gr-framework = callPackage ../by-name/gr/gr-framework/package.nix {
9346     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
9347   };
9349   graphia = qt6Packages.callPackage ../applications/science/misc/graphia { };
9351   libgit2 = callPackage ../development/libraries/libgit2 {
9352     inherit (darwin.apple_sdk.frameworks) Security;
9353   };
9355   glew = callPackage ../development/libraries/glew {
9356     inherit (darwin.apple_sdk.frameworks) OpenGL;
9357   };
9358   glew110 = callPackage ../development/libraries/glew/1.10.nix {
9359     inherit (darwin.apple_sdk.frameworks) AGL OpenGL;
9360   };
9361   glfw = glfw3;
9362   glfw2 = callPackage ../development/libraries/glfw/2.x.nix { };
9364   glfw3-minecraft = callPackage ../by-name/gl/glfw3/package.nix {
9365     withMinecraftPatch = true;
9366   };
9368   glibc = callPackage ../development/libraries/glibc {
9369     stdenv = gccStdenv; # doesn't compile without gcc
9370   };
9372   mtrace = callPackage ../development/libraries/glibc/mtrace.nix { };
9374   # Provided by libc on Operating Systems that use the Extensible Linker Format.
9375   elf-header = if stdenv.hostPlatform.isElf then null else elf-header-real;
9377   glibc_memusage = callPackage ../development/libraries/glibc {
9378     withGd = true;
9379   };
9381   # Being redundant to avoid cycles on boot. TODO: find a better way
9382   glibcCross = callPackage ../development/libraries/glibc {
9383     stdenv = gccCrossLibcStdenv; # doesn't compile without gcc
9384     libgcc = callPackage ../development/libraries/gcc/libgcc {
9385       gcc = gccCrossLibcStdenv.cc;
9386       glibc = glibcCross.override { libgcc = null; };
9387       stdenvNoLibs = gccCrossLibcStdenv;
9388     };
9389   };
9391   muslCross = musl.override {
9392     stdenv = stdenvNoLibc;
9393   };
9395   # These are used when buiding compiler-rt / libgcc, prior to building libc.
9396   preLibcCrossHeaders = let
9397     inherit (stdenv.targetPlatform) libc;
9398   in     if stdenv.targetPlatform.isMinGW then targetPackages.windows.mingw_w64_headers or windows.mingw_w64_headers
9399     else if libc == "nblibc" then targetPackages.netbsd.headers or netbsd.headers
9400     else null;
9402   # We can choose:
9403   libcCrossChooser = name:
9404     # libc is hackily often used from the previous stage. This `or`
9405     # hack fixes the hack, *sigh*.
9406     /**/ if name == null then null
9407     else if name == "glibc" then targetPackages.glibcCross or glibcCross
9408     else if name == "bionic" then targetPackages.bionic or bionic
9409     else if name == "uclibc" then targetPackages.uclibc or uclibc
9410     else if name == "avrlibc" then targetPackages.avrlibc or avrlibc
9411     else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430Newlib or msp430Newlib
9412     else if name == "newlib" && stdenv.targetPlatform.isVc4 then targetPackages.vc4-newlib or vc4-newlib
9413     else if name == "newlib" && stdenv.targetPlatform.isOr1k then targetPackages.or1k-newlib or or1k-newlib
9414     else if name == "newlib" then targetPackages.newlib or newlib
9415     else if name == "newlib-nano" then targetPackages.newlib-nano or newlib-nano
9416     else if name == "musl" then targetPackages.muslCross or muslCross
9417     else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
9418     else if name == "ucrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
9419     else if name == "libSystem" then
9420       if stdenv.targetPlatform.useiOSPrebuilt
9421       then targetPackages.darwin.iosSdkPkgs.libraries or darwin.iosSdkPkgs.libraries
9422       else targetPackages.darwin.libSystem or darwin.libSystem
9423     else if name == "fblibc" then targetPackages.freebsd.libc or freebsd.libc
9424     else if name == "oblibc" then targetPackages.openbsd.libc or openbsd.libc
9425     else if name == "nblibc" then targetPackages.netbsd.libc or netbsd.libc
9426     else if name == "wasilibc" then targetPackages.wasilibc or wasilibc
9427     else if name == "relibc" then targetPackages.relibc or relibc
9428     else throw "Unknown libc ${name}";
9430   libcCross =
9431     if stdenv.targetPlatform == stdenv.buildPlatform
9432     then null
9433     else libcCrossChooser stdenv.targetPlatform.libc;
9435   threadsCross =
9436     lib.optionalAttrs (stdenv.targetPlatform.isMinGW && !(stdenv.targetPlatform.useLLVM or false)) {
9437       # other possible values: win32 or posix
9438       model = "mcf";
9439       # For win32 or posix set this to null
9440       package = targetPackages.windows.mcfgthreads or windows.mcfgthreads;
9441     };
9443   wasilibc = callPackage ../development/libraries/wasilibc {
9444     stdenv = stdenvNoLibc;
9445   };
9447   # Only supported on Linux and only on glibc
9448   glibcLocales =
9449     if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu
9450     then callPackage ../development/libraries/glibc/locales.nix {
9451       stdenv = if (!stdenv.cc.isGNU) then
9452         gccStdenv
9453       else stdenv;
9454       withLinuxHeaders = !stdenv.cc.isGNU;
9455     } else null;
9456   glibcLocalesUtf8 =
9457     if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu
9458     then callPackage ../development/libraries/glibc/locales.nix {
9459       stdenv = if (!stdenv.cc.isGNU) then
9460         gccStdenv
9461       else stdenv;
9462       withLinuxHeaders = !stdenv.cc.isGNU;
9463       allLocales = false;
9464     } else null;
9466   glibcInfo = callPackage ../development/libraries/glibc/info.nix { };
9468   glibc_multi = callPackage ../development/libraries/glibc/multi.nix {
9469     # The buildPackages is required for cross-compilation. The pkgsi686Linux set
9470     # has target and host always set to the same value based on target platform
9471     # of the current set. We need host to be same as build to correctly get i686
9472     # variant of glibc.
9473     glibc32 = pkgsi686Linux.buildPackages.glibc;
9474   };
9476   glsurf = callPackage ../applications/science/math/glsurf {
9477     ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
9478   };
9480   gmime2 = callPackage ../development/libraries/gmime/2.nix { };
9481   gmime3 = callPackage ../development/libraries/gmime/3.nix { };
9482   gmime = gmime2;
9484   gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; # required by older GHC versions
9485   gmp6 = callPackage ../development/libraries/gmp/6.x.nix { };
9486   gmp = gmp6;
9487   gmpxx = gmp.override { cxx = true; };
9489   #GMP ex-satellite, so better keep it near gmp
9490   # A GMP fork
9491   gns3Packages = dontRecurseIntoAttrs (callPackage ../applications/networking/gns3 { });
9492   gns3-gui = gns3Packages.guiStable;
9493   gns3-server = gns3Packages.serverStable;
9495   gobject-introspection = callPackage ../development/libraries/gobject-introspection/wrapper.nix { };
9497   gobject-introspection-unwrapped = callPackage ../development/libraries/gobject-introspection {
9498     nixStoreDir = config.nix.storeDir or builtins.storeDir;
9499   };
9501   goocanvas = callPackage ../development/libraries/goocanvas { };
9502   goocanvas2 = callPackage ../development/libraries/goocanvas/2.x.nix { };
9503   goocanvas3 = callPackage ../development/libraries/goocanvas/3.x.nix { };
9504   grpc = darwin.apple_sdk_11_0.callPackage ../development/libraries/grpc {
9505     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64
9506       then overrideSDK darwin.apple_sdk_11_0.stdenv { darwinMinVersion = "10.13"; }
9507       else stdenv;
9508   };
9510   gsettings-qt = libsForQt5.callPackage ../development/libraries/gsettings-qt { };
9512   gst_all_1 = recurseIntoAttrs (callPackage ../development/libraries/gstreamer {
9513     callPackage = newScope gst_all_1;
9514     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "12.3" else stdenv;
9515     inherit (darwin.apple_sdk_12_3.frameworks) AudioToolbox AVFoundation Cocoa CoreFoundation CoreMedia CoreServices CoreVideo DiskArbitration Foundation IOKit MediaToolbox OpenGL Security SystemConfiguration VideoToolbox;
9516     inherit (darwin.apple_sdk_12_3.libs) xpc;
9517   });
9519   qxmpp = libsForQt5.callPackage ../development/libraries/qxmpp { };
9521   gnu-efi = if stdenv.hostPlatform.isEfi
9522               then callPackage ../development/libraries/gnu-efi { }
9523             else null;
9525   gnutls = callPackage ../development/libraries/gnutls {
9526     inherit (darwin.apple_sdk.frameworks) Security;
9527     util-linux = util-linuxMinimal; # break the cyclic dependency
9528     autoconf = buildPackages.autoconf269;
9529   };
9531   gpac = callPackage ../applications/video/gpac { };
9533   gpgme = callPackage ../development/libraries/gpgme { };
9535   grantlee = libsForQt5.callPackage ../development/libraries/grantlee { };
9537   glib = callPackage ../development/libraries/glib (let
9538     glib-untested = glib.overrideAttrs { doCheck = false; };
9539   in {
9540     # break dependency cycles
9541     # these things are only used for tests, they don't get into the closure
9542     shared-mime-info = shared-mime-info.override { glib = glib-untested; };
9543     desktop-file-utils = desktop-file-utils.override { glib = glib-untested; };
9544     dbus = dbus.override { enableSystemd = false; };
9545   });
9547   glibmm = callPackage ../development/libraries/glibmm { };
9549   glibmm_2_68 = callPackage ../development/libraries/glibmm/2.68.nix {
9550     inherit (darwin.apple_sdk.frameworks) Cocoa;
9551   };
9553   glirc = haskell.lib.compose.justStaticExecutables haskellPackages.glirc;
9555   # Not moved to aliases while we decide if we should split the package again.
9556   atk = at-spi2-core;
9558   atkmm = callPackage ../development/libraries/atkmm { };
9560   atkmm_2_36 = callPackage ../development/libraries/atkmm/2.36.nix { };
9562   cairomm = callPackage ../development/libraries/cairomm { };
9564   cairomm_1_16 = callPackage ../development/libraries/cairomm/1.16.nix {
9565     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
9566   };
9568   pango = callPackage ../development/libraries/pango {
9569     harfbuzz = harfbuzz.override { withCoreText = stdenv.hostPlatform.isDarwin; };
9570   };
9572   pangolin = callPackage ../development/libraries/pangolin {
9573     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
9574   };
9576   pangomm = callPackage ../development/libraries/pangomm {
9577     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
9578   };
9580   pangomm_2_48 = callPackage ../development/libraries/pangomm/2.48.nix {
9581     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
9582   };
9584   pangomm_2_42 = callPackage ../development/libraries/pangomm/2.42.nix {
9585     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
9586   };
9588   gdk-pixbuf = callPackage ../development/libraries/gdk-pixbuf { };
9590   gdk-pixbuf-xlib = callPackage ../development/libraries/gdk-pixbuf/xlib.nix { };
9592   gtk2 = callPackage ../development/libraries/gtk/2.x.nix {
9593     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
9594   };
9596   gtk2-x11 = gtk2.override {
9597     cairo = cairo.override { x11Support = true; };
9598     pango = pango.override { cairo = cairo.override { x11Support = true; }; x11Support = true; };
9599     gdktarget = "x11";
9600   };
9602   gtk3 = callPackage ../development/libraries/gtk/3.x.nix {
9603     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa QuartzCore;
9604   };
9606   gtk4 = callPackage ../development/libraries/gtk/4.x.nix { };
9609   # On darwin gtk uses cocoa by default instead of x11.
9610   gtk3-x11 = gtk3.override {
9611     cairo = cairo.override { x11Support = true; };
9612     pango = pango.override { cairo = cairo.override { x11Support = true; }; x11Support = true; };
9613     x11Support = true;
9614   };
9616   gtkmm2 = callPackage ../development/libraries/gtkmm/2.x.nix { };
9617   gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { };
9618   gtkmm4 = callPackage ../development/libraries/gtkmm/4.x.nix { };
9620   gtk-sharp-2_0 = callPackage ../development/libraries/gtk-sharp/2.0.nix { };
9622   gtk-sharp-3_0 = callPackage ../development/libraries/gtk-sharp/3.0.nix { };
9624   gtk-mac-integration = callPackage ../development/libraries/gtk-mac-integration {
9625     gtk = gtk3;
9626   };
9628   gtk-mac-integration-gtk2 = gtk-mac-integration.override {
9629     gtk = gtk2;
9630   };
9632   gtk-mac-integration-gtk3 = gtk-mac-integration;
9634   gtksourceview = gtksourceview3;
9636   gtksourceview3 = callPackage ../development/libraries/gtksourceview/3.x.nix { };
9638   gtksourceview4 = callPackage ../development/libraries/gtksourceview/4.x.nix { };
9640   gtksourceview5 = callPackage ../development/libraries/gtksourceview/5.x.nix { };
9642   gtksourceviewmm = callPackage ../development/libraries/gtksourceviewmm { };
9644   gtksourceviewmm4 = callPackage ../development/libraries/gtksourceviewmm/4.x.nix { };
9646   gtkspell2 = callPackage ../development/libraries/gtkspell { };
9648   gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { };
9650   gwenhywfar = callPackage ../development/libraries/aqbanking/gwenhywfar.nix { };
9652   hamlib = hamlib_3;
9653   hamlib_3 = callPackage ../development/libraries/hamlib { };
9654   hamlib_4 = callPackage ../development/libraries/hamlib/4.nix { };
9656   heimdal = callPackage ../development/libraries/kerberos/heimdal.nix {
9657     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
9658     autoreconfHook = buildPackages.autoreconfHook269;
9659   };
9661   harfbuzz = callPackage ../development/libraries/harfbuzz {
9662     inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreText;
9663   };
9665   harfbuzzFull = harfbuzz.override {
9666     withCoreText = stdenv.hostPlatform.isDarwin;
9667     withGraphite2 = true;
9668     withIcu = true;
9669   };
9671   herqq = libsForQt5.callPackage ../development/libraries/herqq { };
9673   hidapi = callPackage ../development/libraries/hidapi {
9674     inherit (darwin.apple_sdk.frameworks) Cocoa IOKit;
9675   };
9677   highfive-mpi = highfive.override { hdf5 = hdf5-mpi; };
9679   hivex = callPackage ../development/libraries/hivex {
9680     autoreconfHook = buildPackages.autoreconfHook269;
9681   };
9683   hpx = callPackage ../development/libraries/hpx {
9684     boost = boost179;
9685     asio = asio.override { boost = boost179; };
9686   };
9688   hspell = callPackage ../development/libraries/hspell { };
9690   hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { };
9692   hunspell = callPackage ../development/libraries/hunspell { };
9694   hunspellDicts = recurseIntoAttrs (callPackages ../development/libraries/hunspell/dictionaries.nix {});
9696   hunspellDictsChromium = recurseIntoAttrs (callPackages ../development/libraries/hunspell/dictionaries-chromium.nix {});
9698   hunspellWithDicts = dicts: callPackage ../development/libraries/hunspell/wrapper.nix { inherit dicts; };
9700   hydra = callPackage ../by-name/hy/hydra/package.nix { nix = nixVersions.nix_2_24; };
9702   hydra-check = with python3.pkgs; toPythonApplication hydra-check;
9704   icu-versions = callPackages ../development/libraries/icu { };
9705   inherit (icu-versions)
9706     icu60
9707     icu63
9708     icu64
9709     icu66
9710     icu67
9711     icu69
9712     icu70
9713     icu71
9714     icu72
9715     icu73
9716     icu74
9717     icu75
9718     icu76
9719   ;
9721   icu = icu74;
9723   idasen = with python3Packages; toPythonApplication idasen;
9725   imgui = callPackage ../development/libraries/imgui {
9726     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
9727   };
9729   imlib2Full = imlib2.override {
9730     # Compilation error on Darwin with librsvg. For more information see:
9731     # https://github.com/NixOS/nixpkgs/pull/166452#issuecomment-1090725613
9732     svgSupport = !stdenv.hostPlatform.isDarwin;
9733     heifSupport = !stdenv.hostPlatform.isDarwin;
9734     webpSupport = true;
9735     jxlSupport = true;
9736     psSupport = true;
9737   };
9738   imlib2-nox = imlib2.override {
9739     x11Support = false;
9740   };
9742   imlibsetroot = callPackage ../applications/graphics/imlibsetroot { libXinerama = xorg.libXinerama; } ;
9744   indicator-application-gtk2 = callPackage ../development/libraries/indicator-application/gtk2.nix { };
9745   indicator-application-gtk3 = callPackage ../development/libraries/indicator-application/gtk3.nix { };
9747   indilib = darwin.apple_sdk_11_0.callPackage ../development/libraries/science/astronomy/indilib { };
9748   indi-3rdparty = recurseIntoAttrs (callPackages ../development/libraries/science/astronomy/indilib/indi-3rdparty.nix { });
9750   ios-cross-compile = callPackage ../development/compilers/ios-cross-compile/9.2.nix { };
9752   irrlicht = if !stdenv.hostPlatform.isDarwin then
9753     callPackage ../development/libraries/irrlicht { }
9754   else callPackage ../development/libraries/irrlicht/mac.nix {
9755     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL IOKit;
9756   };
9758   iso-flags-png-320x240 = iso-flags.overrideAttrs (oldAttrs: {
9759     buildFlags = [ "png-country-320x240-fancy" ];
9760     installPhase = ''
9761       runHook preInstall
9762       mkdir -p $out/share && mv build/png-country-4x2-fancy/res-320x240 $out/share/iso-flags-png
9763       runHook postInstall
9764     '';
9765   });
9767   isoimagewriter = libsForQt5.callPackage ../tools/misc/isoimagewriter {};
9769   isort = with python3Packages; toPythonApplication isort;
9771   ispc = callPackage ../development/compilers/ispc {
9772     llvmPackages = llvmPackages_17;
9773   };
9775   isso = callPackage ../servers/isso {
9776     nodejs = nodejs_20;
9777   };
9779   itk_5_2 = callPackage ../development/libraries/itk/5.2.x.nix {
9780     inherit (darwin.apple_sdk.frameworks) Cocoa;
9781   };
9783   itk_5 = callPackage ../development/libraries/itk/5.x.nix {
9784     inherit (darwin.apple_sdk.frameworks) Cocoa;
9785   };
9787   itk = itk_5;
9789   jemalloc = callPackage ../development/libraries/jemalloc { };
9791   rust-jemalloc-sys = callPackage ../development/libraries/jemalloc/rust.nix { };
9792   rust-jemalloc-sys-unprefixed = rust-jemalloc-sys.override { unprefixed = true; };
9794   json2yaml = haskell.lib.compose.justStaticExecutables haskellPackages.json2yaml;
9796   libjodycode = callPackage ../development/libraries/libjodycode {
9797     # missing aligned_alloc()
9798     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
9799   };
9801   kddockwidgets = libsForQt5.callPackage ../development/libraries/kddockwidgets { };
9803   keybinder = callPackage ../development/libraries/keybinder {
9804     automake = automake111x;
9805     lua = lua5_1;
9806   };
9808   keybinder3 = callPackage ../development/libraries/keybinder3 {
9809     gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
9810     automake = automake111x;
9811   };
9813   krb5 = callPackage ../development/libraries/kerberos/krb5.nix {
9814     inherit (buildPackages.darwin) bootstrap_cmds;
9815   };
9816   libkrb5 = krb5; # TODO(de11n) Try to make krb5 reuse libkrb5 as a dependency
9818   ktextaddons = libsForQt5.callPackage ../development/libraries/ktextaddons {};
9820   l-smash = callPackage ../development/libraries/l-smash {
9821     stdenv = gccStdenv;
9822   };
9824   languageMachines = recurseIntoAttrs (import ../development/libraries/languagemachines/packages.nix {
9825     inherit pkgs;
9826   });
9828   laurel = callPackage ../servers/monitoring/laurel/default.nix { };
9830   lcms = lcms2;
9832   lib2geom = callPackage ../development/libraries/lib2geom {
9833     stdenv = if stdenv.cc.isClang then llvmPackages_13.stdenv else stdenv;
9834   };
9836   libacr38u = callPackage ../tools/security/libacr38u {
9837     inherit (darwin.apple_sdk.frameworks) IOKit;
9838   };
9840   libadwaita = callPackage ../development/libraries/libadwaita {
9841     inherit (pkgs.darwin.apple_sdk.frameworks) AppKit Foundation;
9842   };
9844   libagar = callPackage ../development/libraries/libagar { };
9845   libagar_test = callPackage ../development/libraries/libagar/libagar_test.nix { };
9847   libao = callPackage ../development/libraries/libao {
9848     usePulseAudio = config.pulseaudio or (lib.meta.availableOn stdenv.hostPlatform libpulseaudio);
9849     inherit (darwin.apple_sdk.frameworks) CoreAudio CoreServices AudioUnit;
9850   };
9852   libappindicator-gtk2 = libappindicator.override { gtkVersion = "2"; };
9853   libappindicator-gtk3 = libappindicator.override { gtkVersion = "3"; };
9854   libarchive-qt = libsForQt5.callPackage ../development/libraries/libarchive-qt { };
9856   libaribcaption = callPackage ../by-name/li/libaribcaption/package.nix {
9857     inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreFoundation CoreGraphics CoreText;
9858   };
9860   libasn1c = callPackage ../servers/osmocom/libasn1c/default.nix { };
9862   libbap = callPackage ../development/libraries/libbap {
9863     inherit (ocaml-ng.ocamlPackages_4_14) bap ocaml findlib ctypes ctypes-foreign;
9864   };
9866   libbass = (callPackage ../development/libraries/audio/libbass { }).bass;
9867   libbass_fx = (callPackage ../development/libraries/audio/libbass { }).bass_fx;
9868   libbassmidi = (callPackage ../development/libraries/audio/libbass { }).bassmidi;
9869   libbassmix = (callPackage ../development/libraries/audio/libbass { }).bassmix;
9871   libbluray = callPackage ../development/libraries/libbluray {
9872     inherit (darwin.apple_sdk.frameworks) DiskArbitration;
9873   };
9875   libcamera-qcam = callPackage ../by-name/li/libcamera/package.nix { withQcam = true; };
9877   libcanberra = callPackage ../development/libraries/libcanberra {
9878     inherit (darwin.apple_sdk.frameworks) Carbon CoreServices AppKit;
9879   };
9880   libcanberra-gtk2 = pkgs.libcanberra.override {
9881     gtkSupport = "gtk2";
9882   };
9883   libcanberra-gtk3 = pkgs.libcanberra.override {
9884     gtkSupport = "gtk3";
9885   };
9887   libcanberra_kde = if (config.kde_runtime.libcanberraWithoutGTK or true)
9888     then pkgs.libcanberra
9889     else pkgs.libcanberra-gtk2;
9891   libcec = callPackage ../development/libraries/libcec { };
9893   libcec_platform = callPackage ../development/libraries/libcec/platform.nix { };
9895   libcef = callPackage ../development/libraries/libcef { };
9897   libcdio = callPackage ../development/libraries/libcdio {
9898     inherit (darwin.apple_sdk.frameworks) Carbon IOKit;
9899   };
9901   libcdio-paranoia = callPackage ../development/libraries/libcdio-paranoia {
9902     inherit (darwin.apple_sdk.frameworks) DiskArbitration IOKit;
9903   };
9905   libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; };
9907   libchamplain_libsoup3 = libchamplain.override { withLibsoup3 = true; };
9909   libchipcard = callPackage ../development/libraries/aqbanking/libchipcard.nix { };
9911   libcomps = callPackage ../tools/package-management/libcomps { python = python3; };
9913   libcxxrt = callPackage ../development/libraries/libcxxrt {
9914     stdenv = if stdenv.hostPlatform.useLLVM or false
9915              then overrideCC stdenv buildPackages.llvmPackages.tools.clangNoLibcxx
9916              else stdenv;
9917   };
9919   libdbiDriversBase = libdbiDrivers.override {
9920     libmysqlclient = null;
9921     sqlite = null;
9922   };
9924   libdbusmenu-gtk2 = libdbusmenu.override { gtkVersion = "2"; };
9925   libdbusmenu-gtk3 = libdbusmenu.override { gtkVersion = "3"; };
9927   libdc1394 = callPackage ../development/libraries/libdc1394 {
9928     inherit (darwin.apple_sdk.frameworks) CoreServices;
9929   };
9931   libdeflate = darwin.apple_sdk_11_0.callPackage ../development/libraries/libdeflate { };
9933   libdevil = callPackage ../development/libraries/libdevil {
9934     inherit (darwin.apple_sdk.frameworks) OpenGL;
9935   };
9937   libdevil-nox = callPackage ../development/libraries/libdevil {
9938     inherit (darwin.apple_sdk.frameworks) OpenGL;
9939     withXorg = false;
9940   };
9942   libdnf = callPackage ../tools/package-management/libdnf { python = python3; };
9944   libdvdcss = callPackage ../development/libraries/libdvdcss {
9945     inherit (darwin) IOKit;
9946   };
9948   libdvdnav = callPackage ../development/libraries/libdvdnav { };
9949   libdvdnav_4_2_1 = callPackage ../development/libraries/libdvdnav/4.2.1.nix {
9950     libdvdread = libdvdread_4_9_9;
9951   };
9953   libdvdread = callPackage ../development/libraries/libdvdread { };
9954   libdvdread_4_9_9 = callPackage ../development/libraries/libdvdread/4.9.9.nix { };
9956   dwarfdump = libdwarf.bin;
9958   libfilezilla = darwin.apple_sdk_11_0.callPackage ../development/libraries/libfilezilla {
9959     inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices;
9960   };
9962   libfm-extra = libfm.override {
9963     extraOnly = true;
9964   };
9966   libgda = callPackage ../development/libraries/libgda { };
9968   libgda6 = callPackage ../development/libraries/libgda/6.x.nix { };
9970   libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { };
9971   libgnome-games-support_2_0 = callPackage ../development/libraries/libgnome-games-support/2.0.nix { };
9973   libgrss = callPackage ../development/libraries/libgrss {
9974     inherit (darwin.apple_sdk_11_0.frameworks) Foundation AppKit;
9975   };
9977   libiio = callPackage ../development/libraries/libiio {
9978     inherit (darwin.apple_sdk.frameworks) CFNetwork CoreServices;
9979     python = python3;
9980   };
9982   libsoundio = callPackage ../development/libraries/libsoundio {
9983     inherit (darwin.apple_sdk.frameworks) AudioUnit;
9984   };
9986   libextractor = callPackage ../development/libraries/libextractor {
9987     libmpeg2 = mpeg2dec;
9988   };
9990   libfive = libsForQt5.callPackage ../development/libraries/libfive {
9991     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
9992     python = python3;
9993   };
9995   libffi = callPackage ../development/libraries/libffi { };
9996   libffi_3_3 = callPackage ../development/libraries/libffi/3.3.nix { };
9997   libffiBoot = libffi.override {
9998     doCheck = false;
9999   };
10001   libfreefare = callPackage ../development/libraries/libfreefare {
10002     inherit (darwin.apple_sdk.frameworks) IOKit Security;
10003     inherit (darwin) libobjc;
10004   };
10006   libftdi = callPackage ../development/libraries/libftdi {
10007     inherit (darwin) libobjc;
10008     inherit (darwin.apple_sdk.frameworks) IOKit Security;
10009   };
10011   libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { };
10013   libgcrypt = callPackage ../development/libraries/libgcrypt { };
10015   libgcrypt_1_8 = callPackage ../development/libraries/libgcrypt/1.8.nix { };
10017   libgdiplus = callPackage ../development/libraries/libgdiplus {
10018       inherit (darwin.apple_sdk.frameworks) Carbon;
10019   };
10021   # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=README;h=fd6e1a83f55696c1f7a08f6dfca08b2d6b7617ec;hb=70058cd9f944d620764e57c838209afae8a58c78#l118
10022   libgpg-error-gen-posix-lock-obj = libgpg-error.override {
10023     genPosixLockObjOnly = true;
10024   };
10026   libgpod = callPackage ../development/libraries/libgpod {
10027     autoreconfHook = buildPackages.autoreconfHook269;
10028   };
10030   libimobiledevice = callPackage ../development/libraries/libimobiledevice {
10031     inherit (darwin.apple_sdk.frameworks) SystemConfiguration CoreFoundation;
10032   };
10034   libindicator-gtk2 = libindicator.override { gtkVersion = "2"; };
10035   libindicator-gtk3 = libindicator.override { gtkVersion = "3"; };
10036   libiodbc = callPackage ../development/libraries/libiodbc {
10037     inherit (darwin.apple_sdk.frameworks) Carbon;
10038   };
10040   inherit (callPackage ../development/libraries/libliftoff { }) libliftoff_0_4 libliftoff_0_5;
10041   libliftoff = libliftoff_0_5;
10043   liblqr1 = callPackage ../development/libraries/liblqr-1 {
10044     inherit (darwin.apple_sdk.frameworks) Carbon AppKit;
10045   };
10047   libqtdbusmock = libsForQt5.callPackage ../development/libraries/libqtdbusmock {
10048     inherit (lomiri) cmake-extras;
10049   };
10051   libqtdbustest = libsForQt5.callPackage ../development/libraries/libqtdbustest {
10052     inherit (lomiri) cmake-extras;
10053   };
10055   libre = callPackage ../development/libraries/libre {
10056     inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
10057   };
10059   libremines = qt6.callPackage ../games/libremines { };
10061   librepo = callPackage ../tools/package-management/librepo {
10062     python = python3;
10063   };
10065   librsb = callPackage ../development/libraries/librsb {
10066     # Taken from https://build.opensuse.org/package/view_file/science/librsb/librsb.spec
10067     memHierarchy = "L3:16/64/8192K,L2:16/64/2048K,L1:8/64/16K";
10068   };
10070   libsamplerate = callPackage ../development/libraries/libsamplerate {
10071     inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon CoreServices;
10072   };
10074   # GNU libc provides libiconv so systems with glibc don't need to
10075   # build libiconv separately. Additionally, Apple forked/repackaged
10076   # libiconv, so build and use the upstream one with a compatible ABI,
10077   # and BSDs include libiconv in libc.
10078   #
10079   # We also provide `libiconvReal`, which will always be a standalone libiconv,
10080   # just in case you want it regardless of platform.
10081   libiconv =
10082     if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" "nblibc" "wasilibc" "fblibc" ]
10083       then libcIconv (if stdenv.hostPlatform != stdenv.buildPlatform
10084         then libcCross
10085         else stdenv.cc.libc)
10086     else if stdenv.hostPlatform.isDarwin
10087       then darwin.libiconv
10088     else libiconvReal;
10090   libcIconv = libc: let
10091     inherit (libc) pname version;
10092     libcDev = lib.getDev libc;
10093   in runCommand "${pname}-iconv-${version}" { strictDeps = true; } ''
10094     mkdir -p $out/include
10095     ln -sv ${libcDev}/include/iconv.h $out/include
10096   '';
10098   libiconvReal = callPackage ../development/libraries/libiconv { };
10100   iconv =
10101     if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" ] then
10102       lib.getBin stdenv.cc.libc
10103     else if stdenv.hostPlatform.isDarwin then
10104       lib.getBin libiconv
10105     else if stdenv.hostPlatform.isFreeBSD then
10106       lib.getBin freebsd.iconv
10107     else
10108       lib.getBin libiconvReal;
10110   # On non-GNU systems we need GNU Gettext for libintl.
10111   libintl = if stdenv.hostPlatform.libc != "glibc" then gettext else null;
10113   libidn2 = callPackage ../development/libraries/libidn2 { };
10115   libinput = callPackage ../development/libraries/libinput {
10116     graphviz = graphviz-nox;
10117   };
10119   # also known as libturbojpeg
10120   libjpeg = libjpeg_turbo;
10121   libjpeg8 = libjpeg_turbo.override { enableJpeg8 = true; };
10123   malcontent = callPackage ../development/libraries/malcontent { };
10125   malcontent-ui = callPackage ../development/libraries/malcontent/ui.nix { };
10127   libmatthew_java = callPackage ../development/libraries/java/libmatthew-java {
10128     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
10129   };
10131   inherit
10132     ({
10133       libmicrohttpd_0_9_77 = callPackage ../development/libraries/libmicrohttpd/0.9.77.nix { };
10134       libmicrohttpd_1_0 = callPackage ../development/libraries/libmicrohttpd/1.0.nix { };
10135     })
10136     libmicrohttpd_0_9_77
10137     libmicrohttpd_1_0
10138     ;
10140   libmicrohttpd = libmicrohttpd_1_0;
10142   libmikmod = callPackage ../development/libraries/libmikmod {
10143     inherit (darwin.apple_sdk.frameworks) CoreAudio;
10144   };
10146   libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { };
10148   libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { };
10150   libmusicbrainz = libmusicbrainz3;
10152   libosmscout = libsForQt5.callPackage ../development/libraries/libosmscout { };
10154   libpeas = callPackage ../development/libraries/libpeas { };
10155   libpeas2 = callPackage ../development/libraries/libpeas/2.x.nix { };
10157   libphonenumber = callPackage ../development/libraries/libphonenumber {
10158     inherit (darwin.apple_sdk.frameworks) Foundation;
10159   };
10161   libpng = callPackage ../development/libraries/libpng {
10162     stdenv =
10163       # libpng is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
10164       # that does not propagate xcrun.
10165       if stdenv.hostPlatform.isDarwin then
10166         darwin.bootstrapStdenv
10167       else
10168         stdenv;
10169   };
10171   libpng12 = callPackage ../development/libraries/libpng/12.nix { };
10173   inherit (callPackages ../development/libraries/prometheus-client-c {
10174     stdenv = gccStdenv; # Required for darwin
10175   }) libprom libpromhttp;
10177   libproxy = callPackage ../development/libraries/libproxy { };
10179   libpulsar = callPackage ../development/libraries/libpulsar {
10180     protobuf = protobuf_21;
10181   };
10183   libpwquality = callPackage ../development/libraries/libpwquality {
10184     python = python3;
10185   };
10187   libqt5pas = libsForQt5.callPackage ../development/compilers/fpc/libqt5pas.nix { };
10189   librsvg = callPackage ../development/libraries/librsvg {
10190     inherit (darwin) libobjc;
10191     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
10192   };
10194   libsigcxx = callPackage ../development/libraries/libsigcxx { };
10196   libsigcxx30 = callPackage ../development/libraries/libsigcxx/3.0.nix { };
10198   libsndfile = callPackage ../development/libraries/libsndfile {
10199     inherit (darwin.apple_sdk.frameworks) Carbon AudioToolbox;
10200   };
10202   libsoup = callPackage ../development/libraries/libsoup { };
10204   libsoup_3 = callPackage ../development/libraries/libsoup/3.x.nix { };
10206   libstatgrab = callPackage ../development/libraries/libstatgrab {
10207     inherit (darwin.apple_sdk.frameworks) IOKit;
10208   };
10210   libticalcs2 = callPackage ../development/libraries/libticalcs2 {
10211     inherit (darwin) libobjc;
10212   };
10214   libtorrent-rasterbar = libtorrent-rasterbar-2_0_x;
10216   libubox-nossl = callPackage ../development/libraries/libubox { };
10218   libubox = callPackage ../development/libraries/libubox { with_ustream_ssl = true; };
10220   libubox-wolfssl = callPackage ../development/libraries/libubox { with_ustream_ssl = true; ustream-ssl = ustream-ssl-wolfssl; };
10222   libubox-mbedtls = callPackage ../development/libraries/libubox { with_ustream_ssl = true; ustream-ssl = ustream-ssl-mbedtls; };
10224   libui = callPackage ../development/libraries/libui {
10225     inherit (darwin.apple_sdk.frameworks) Cocoa;
10226   };
10228   libuiohook = callPackage ../development/libraries/libuiohook {
10229     inherit (darwin.apple_sdk.frameworks) AppKit ApplicationServices Carbon;
10230   };
10232   libunistring = callPackage ../development/libraries/libunistring { };
10234   libunique = callPackage ../development/libraries/libunique { };
10235   libunique3 = callPackage ../development/libraries/libunique/3.x.nix { };
10237   libusb-compat-0_1 = callPackage ../development/libraries/libusb-compat/0.1.nix { };
10239   libusb1 = callPackage ../development/libraries/libusb1 {
10240     inherit (darwin) libobjc;
10241     inherit (darwin.apple_sdk.frameworks) IOKit Security;
10242   };
10244   libunicode = callPackage ../development/libraries/libunicode {
10245     catch2 = catch2_3;
10246     fmt = fmt_9;
10247   };
10249   libunwind =
10250     # Use the system unwinder in the SDK but provide a compatibility package to:
10251     # 1. avoid evaluation errors with setting `unwind` to `null`; and
10252     # 2. provide a `.pc` for compatibility with packages that expect to find libunwind that way.
10253     if stdenv.hostPlatform.isDarwin then darwin.libunwind
10254     else if stdenv.hostPlatform.system == "riscv32-linux" then llvmPackages.libunwind
10255     else callPackage ../development/libraries/libunwind { };
10257   libuv = darwin.apple_sdk_11_0.callPackage ../development/libraries/libuv { };
10259   libv4l = lowPrio (v4l-utils.override {
10260     withUtils = false;
10261   });
10263   libva-minimal = callPackage ../development/libraries/libva { minimal = true; };
10264   libva = libva-minimal.override { minimal = false; };
10265   libva-utils = callPackage ../development/libraries/libva/utils.nix { };
10267   libva1 = callPackage ../development/libraries/libva/1.nix { };
10268   libva1-minimal = libva1.override { minimal = true; };
10270   libvgm = callPackage ../development/libraries/libvgm {
10271     inherit (darwin.apple_sdk.frameworks) CoreAudio AudioToolbox;
10272   };
10274   libvirt = callPackage ../development/libraries/libvirt {
10275     inherit (darwin.apple_sdk.frameworks) Carbon AppKit;
10276   };
10278   libvncserver = callPackage ../development/libraries/libvncserver {
10279     inherit (darwin.apple_sdk.frameworks) Carbon;
10280   };
10282   libwnck = callPackage ../development/libraries/libwnck { };
10283   libwnck2 = callPackage ../development/libraries/libwnck/2.nix { };
10285   libwpd = callPackage ../development/libraries/libwpd { };
10287   libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { };
10289   libxcrypt = callPackage ../development/libraries/libxcrypt {
10290     fetchurl = stdenv.fetchurlBoot;
10291     perl = buildPackages.perl.override {
10292       enableCrypt = false;
10293       fetchurl = stdenv.fetchurlBoot;
10294     };
10295   };
10296   libxcrypt-legacy = libxcrypt.override { enableHashes = "all"; };
10298   libxkbcommon = libxkbcommon_8;
10299   libxml2 = callPackage ../development/libraries/libxml2 {
10300     python = python3;
10301     stdenv =
10302       # libxml2 is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
10303       # that does not propagate xcrun.
10304       if stdenv.hostPlatform.isDarwin then
10305         darwin.bootstrapStdenv
10306       else
10307         stdenv;
10308   };
10310   libxml2Python = let
10311     inherit (python3.pkgs) libxml2;
10312   in pkgs.buildEnv { # slightly hacky
10313     name = "libxml2+py-${res.libxml2.version}";
10314     paths = with libxml2; [ dev bin py ];
10315     # Avoid update.nix/tests conflicts with libxml2.
10316     passthru = builtins.removeAttrs libxml2.passthru [ "updateScript" "tests" ];
10317     # the hook to find catalogs is hidden by buildEnv
10318     postBuild = ''
10319       mkdir "$out/nix-support"
10320       cp '${libxml2.dev}/nix-support/propagated-build-inputs' "$out/nix-support/"
10321     '';
10322   };
10324   libxmlxx = callPackage ../development/libraries/libxmlxx { };
10325   libxmlxx3 = callPackage ../development/libraries/libxmlxx/v3.nix { };
10327   libxslt = callPackage ../development/libraries/libxslt {
10328     python = python3;
10329   };
10331   libwpe = callPackage ../development/libraries/libwpe { };
10333   libwpe-fdo = callPackage ../development/libraries/libwpe/fdo.nix { };
10335   yaml-cpp = callPackage ../development/libraries/yaml-cpp { };
10337   yaml-cpp_0_3 = callPackage ../development/libraries/yaml-cpp/0.3.0.nix { };
10339   liquid-dsp = callPackage ../development/libraries/liquid-dsp {
10340     inherit (darwin) autoSignDarwinBinariesHook;
10341   };
10343   luabind = callPackage ../development/libraries/luabind { lua = lua5_1; };
10345   luabind_luajit = luabind.override { lua = luajit; };
10347   luksmeta = callPackage ../development/libraries/luksmeta {
10348     asciidoc = asciidoc-full;
10349   };
10351   mapnik = callPackage ../development/libraries/mapnik {
10352     harfbuzz = harfbuzz.override {
10353       withIcu = true;
10354     };
10355   };
10357   matterhorn =
10358     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
10359     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
10360       haskellPackages.matterhorn;
10362   mbedtls_2 = callPackage ../development/libraries/mbedtls/2.nix { };
10363   mbedtls = callPackage ../development/libraries/mbedtls/3.nix { };
10365   mediastreamer = libsForQt5.callPackage ../development/libraries/mediastreamer { };
10367   mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
10369   memorymapping = callPackage ../development/libraries/memorymapping { };
10370   memorymappingHook = makeSetupHook {
10371     name = "memorymapping-hook";
10372     propagatedBuildInputs = [ memorymapping ];
10373   } ../development/libraries/memorymapping/setup-hook.sh;
10375   memstream = callPackage ../development/libraries/memstream { };
10376   memstreamHook = makeSetupHook {
10377     name = "memstream-hook";
10378     propagatedBuildInputs = [ memstream ];
10379   } ../development/libraries/memstream/setup-hook.sh;
10381   mergerfs = callPackage ../tools/filesystems/mergerfs { };
10383   mergerfs-tools = callPackage ../tools/filesystems/mergerfs/tools.nix { };
10385   simple-dftd3 = callPackage ../development/libraries/science/chemistry/simple-dftd3 { };
10387   tblite = callPackage ../development/libraries/science/chemistry/tblite { };
10389   ## libGL/libGLU/Mesa stuff
10391   # Default libGL implementation.
10392   #
10393   # Android NDK provides an OpenGL implementation, we can just use that.
10394   #
10395   # On macOS, we use the OpenGL framework. Packages that still need GLX
10396   # specifically can pull in libGLX instead. If you have a package that
10397   # should work without X11 but it can’t find the library, it may help
10398   # to add the path to `NIX_CFLAGS_COMPILE`:
10399   #
10400   #     -L${libGL}/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries
10401   #
10402   # If you still can’t get it working, please don’t hesitate to ping
10403   # @NixOS/darwin-maintainers to ask an expert to take a look.
10404   libGL =
10405     if stdenv.hostPlatform.useAndroidPrebuilt then
10406       stdenv
10407     else if stdenv.hostPlatform.isDarwin then
10408       darwin.apple_sdk.frameworks.OpenGL
10409     else
10410       libglvnd;
10412   # On macOS, we use the OpenGL framework. Packages that use libGLX on
10413   # macOS may need to depend on mesa_glu directly if this doesn’t work.
10414   libGLU =
10415     if stdenv.hostPlatform.isDarwin then
10416       darwin.apple_sdk.frameworks.OpenGL
10417     else
10418       mesa_glu;
10420   # libglvnd does not work (yet?) on macOS.
10421   libGLX =
10422     if stdenv.hostPlatform.isDarwin then
10423       mesa
10424     else
10425       libglvnd;
10427   # On macOS, we use the GLUT framework. Packages that use libGLX on
10428   # macOS may need to depend on freeglut directly if this doesn’t work.
10429   libglut =
10430     if stdenv.hostPlatform.isDarwin then
10431       darwin.apple_sdk.frameworks.GLUT
10432     else
10433       freeglut;
10435   mesa = if stdenv.hostPlatform.isDarwin
10436     then darwin.apple_sdk_11_0.callPackage ../development/libraries/mesa/darwin.nix {
10437       inherit (darwin.apple_sdk_11_0.libs) Xplugin;
10438     }
10439     else callPackage ../development/libraries/mesa {};
10441   mesa_i686 = pkgsi686Linux.mesa; # make it build on Hydra
10443   ## End libGL/libGLU/Mesa stuff
10445   midivisualizer = darwin.apple_sdk_11_0.callPackage ../applications/audio/midivisualizer {
10446     inherit (darwin.apple_sdk_11_0.frameworks) AppKit Cocoa Carbon CoreAudio CoreMIDI CoreServices Kernel;
10447   };
10449   mkvtoolnix = qt6Packages.callPackage ../applications/video/mkvtoolnix { };
10451   mkvtoolnix-cli = mkvtoolnix.override {
10452     withGUI = false;
10453   };
10455   mlt = darwin.apple_sdk_11_0.callPackage ../development/libraries/mlt { };
10457   mlv-app = libsForQt5.callPackage ../applications/video/mlv-app { };
10459   mpeg2dec = libmpeg2;
10461   msoffcrypto-tool = with python3.pkgs; toPythonApplication msoffcrypto-tool;
10463   mpich = callPackage ../development/libraries/mpich {
10464     ch4backend = libfabric;
10465   };
10467   mpich-pmix = mpich.override { pmixSupport = true; withPm = [ ]; };
10469   mvfst = darwin.apple_sdk_11_0.callPackage ../development/libraries/mvfst { };
10471   mygpoclient = with python3.pkgs; toPythonApplication mygpoclient;
10473   mygui = callPackage ../development/libraries/mygui {
10474     inherit (darwin.apple_sdk.frameworks) Cocoa;
10475   };
10477   nanovna-saver = libsForQt5.callPackage ../applications/science/electronics/nanovna-saver { };
10479   nemo-qml-plugin-dbus = libsForQt5.callPackage ../development/libraries/nemo-qml-plugin-dbus { };
10481   ncurses5 = ncurses.override {
10482     abiVersion = "5";
10483   };
10484   ncurses6 = ncurses.override {
10485     abiVersion = "6";
10486   };
10487   ncurses =
10488     if stdenv.hostPlatform.useiOSPrebuilt
10489     then null
10490     else callPackage ../development/libraries/ncurses {
10491       # ncurses is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
10492       stdenv =
10493         if stdenv.hostPlatform.isDarwin then
10494           darwin.bootstrapStdenv
10495         else
10496           stdenv;
10497     };
10499   ndi = callPackage ../development/libraries/ndi { };
10501   nettle = import ../development/libraries/nettle { inherit callPackage fetchurl; };
10503   newt = callPackage ../development/libraries/newt { python = python3; };
10505   libnghttp2 = nghttp2.lib;
10507   nghttp3 = callPackage ../development/libraries/nghttp3 { inherit (darwin.apple_sdk.frameworks) CoreServices; };
10509   ngtcp2 = callPackage ../development/libraries/ngtcp2 { };
10510   ngtcp2-gnutls = callPackage ../development/libraries/ngtcp2/gnutls.nix { };
10512   non = callPackage ../applications/audio/non {
10513     wafHook = (waf.override { extraTools = [ "gccdeps" ]; }).hook;
10514   };
10516   nspr = callPackage ../development/libraries/nspr {
10517     inherit (darwin.apple_sdk.frameworks) CoreServices;
10518   };
10520   nss_latest = callPackage ../development/libraries/nss/latest.nix { };
10521   nss_esr = callPackage ../development/libraries/nss/esr.nix { };
10522   nss = nss_esr;
10523   nssTools = nss.tools;
10525   nuspell = callPackage ../development/libraries/nuspell { };
10526   nuspellWithDicts = dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; };
10528   nv-codec-headers-9 = nv-codec-headers.override { majorVersion = "9"; };
10529   nv-codec-headers-10 = nv-codec-headers.override { majorVersion = "10"; };
10530   nv-codec-headers-11 = nv-codec-headers.override { majorVersion = "11"; };
10531   nv-codec-headers-12 = nv-codec-headers.override { majorVersion = "12"; };
10533   nvidiaCtkPackages =
10534     callPackage ../by-name/nv/nvidia-container-toolkit/packages.nix
10535       { };
10536   inherit (nvidiaCtkPackages)
10537     nvidia-docker
10538     ;
10540   nvidia-vaapi-driver = lib.hiPrio (callPackage ../development/libraries/nvidia-vaapi-driver { });
10542   nvidia-system-monitor-qt = libsForQt5.callPackage ../tools/system/nvidia-system-monitor-qt { };
10544   nvtopPackages = recurseIntoAttrs (import ../tools/system/nvtop { inherit callPackage; });
10546   inherit (callPackages ../development/libraries/ogre { })
10547     ogre_13 ogre_14;
10549   ogre = ogre_14;
10551   one_gadget = callPackage ../development/tools/misc/one_gadget { };
10553   oneDNN = callPackage ../development/libraries/oneDNN { };
10555   oneDNN_2 = callPackage ../development/libraries/oneDNN/2.nix { };
10557   openalSoft = callPackage ../development/libraries/openal-soft {
10558     inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox;
10559   };
10560   openal = openalSoft;
10562   openbabel = openbabel3;
10564   openbabel2 = callPackage ../development/libraries/openbabel/2.nix { };
10566   openbabel3 = callPackage ../development/libraries/openbabel {
10567     python = python3;
10568   };
10570   opencascade-occt_7_6 = opencascade-occt.overrideAttrs rec {
10571     pname = "opencascade-occt";
10572     version = "7.6.2";
10573     commit = "V${builtins.replaceStrings ["."] ["_"] version}";
10574     src = fetchurl {
10575       name = "occt-${commit}.tar.gz";
10576       url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
10577       hash = "sha256-n3KFrN/mN1SVXfuhEUAQ1fJzrCvhiclxfEIouyj9Z18=";
10578     };
10579     patches = [
10580       # Backport GCC 14 build fix
10581       (fetchpatch {
10582         url = "https://github.com/Open-Cascade-SAS/OCCT/commit/7236e83dcc1e7284e66dc61e612154617ef715d6.patch";
10583         hash = "sha256-NoC2mE3DG78Y0c9UWonx1vmXoU4g5XxFUT3eVXqLU60=";
10584       })
10585     ];
10586   };
10588   opencsg = callPackage ../development/libraries/opencsg {
10589     inherit (qt5) qmake;
10590     inherit (darwin.apple_sdk.frameworks) GLUT;
10591   };
10593   opencv4 = callPackage ../development/libraries/opencv/4.x.nix {
10594     inherit (darwin.apple_sdk.frameworks)
10595       AVFoundation Cocoa VideoDecodeAcceleration CoreMedia MediaToolbox Accelerate;
10596     pythonPackages = python3Packages;
10597     # TODO(@connorbaker): OpenCV 4.9 only supports up to CUDA 12.3.
10598     cudaPackages = cudaPackages_12_3;
10599     # TODO: LTO does not work.
10600     # https://github.com/NixOS/nixpkgs/issues/343123
10601     enableLto = false;
10602   };
10604   opencv4WithoutCuda = opencv4.override {
10605     enableCuda = false;
10606   };
10608   opencv = opencv4;
10610   openexr = openexr_2;
10611   openexr_2 = callPackage ../development/libraries/openexr { };
10612   openexr_3 = callPackage ../development/libraries/openexr/3.nix { };
10614   opencolorio = darwin.apple_sdk_11_0.callPackage ../development/libraries/opencolorio {
10615     inherit (darwin.apple_sdk_11_0.frameworks) Carbon GLUT Cocoa;
10616   };
10617   opencolorio_1 = callPackage ../development/libraries/opencolorio/1.x.nix { };
10619   ois = callPackage ../development/libraries/ois {
10620     inherit (darwin.apple_sdk.frameworks) Cocoa IOKit Kernel;
10621   };
10623   openscenegraph = callPackage ../development/libraries/openscenegraph {
10624     inherit (darwin.apple_sdk.frameworks) AGL Accelerate Carbon Cocoa Foundation;
10625   };
10627   openstackclient = with python311Packages; toPythonApplication python-openstackclient;
10628   openstackclient-full = openstackclient.overridePythonAttrs (oldAttrs: {
10629     dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.cli-plugins;
10630   });
10631   barbicanclient = with python311Packages; toPythonApplication python-barbicanclient;
10632   glanceclient = with python311Packages; toPythonApplication python-glanceclient;
10633   heatclient = with python311Packages; toPythonApplication python-heatclient;
10634   ironicclient = with python311Packages; toPythonApplication python-ironicclient;
10635   magnumclient = with python311Packages; toPythonApplication python-magnumclient;
10636   manilaclient = with python311Packages; toPythonApplication python-manilaclient;
10637   mistralclient = with python311Packages; toPythonApplication python-mistralclient;
10638   swiftclient = with python311Packages; toPythonApplication python-swiftclient;
10639   troveclient = with python311Packages; toPythonApplication python-troveclient;
10640   watcherclient = with python311Packages; toPythonApplication python-watcherclient;
10641   zunclient = with python311Packages; toPythonApplication python-zunclient;
10643   openvdb = callPackage ../development/libraries/openvdb { };
10644   openvdb_11 = callPackage ../development/libraries/openvdb/11.nix { };
10646   openvr = callPackage ../by-name/op/openvr/package.nix {
10647     inherit (darwin.apple_sdk.frameworks) Foundation AppKit;
10648   };
10650   inherit (callPackages ../development/libraries/libressl { })
10651     libressl_3_6
10652     libressl_3_7
10653     libressl_3_8
10654     libressl_3_9
10655     libressl_4_0;
10657   libressl = libressl_4_0;
10659   wolfssl = darwin.apple_sdk_11_0.callPackage ../development/libraries/wolfssl {
10660     inherit (darwin.apple_sdk_11_0.frameworks) Security;
10661   };
10663   openssl = openssl_3_3;
10665   openssl_legacy = openssl.override {
10666     conf = ../development/libraries/openssl/3.0/legacy.cnf;
10667   };
10669   inherit (callPackages ../development/libraries/openssl { })
10670     openssl_1_1
10671     openssl_3
10672     openssl_3_3;
10674   openwebrx = callPackage ../applications/radio/openwebrx {
10675     inherit (python3Packages)
10676     buildPythonPackage buildPythonApplication setuptools pycsdr pydigiham;
10677   };
10679   pcl = libsForQt5.callPackage ../development/libraries/pcl {
10680     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
10681     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa AGL OpenGL;
10682   };
10684   pcre = callPackage ../development/libraries/pcre { };
10685   pcre16 = res.pcre.override { variant = "pcre16"; };
10686   # pcre32 seems unused
10687   pcre-cpp = res.pcre.override { variant = "cpp"; };
10689   pcre2 = callPackage ../development/libraries/pcre2 { };
10691   pdfhummus = libsForQt5.callPackage ../development/libraries/pdfhummus { };
10693   phetch = callPackage ../applications/networking/gopher/phetch {
10694     inherit (darwin.apple_sdk.frameworks) Security;
10695   };
10697   inherit (callPackage ../development/libraries/physfs {
10698     inherit (darwin.apple_sdk.frameworks) Foundation;
10699   })
10700     physfs_2
10701     physfs;
10703   pingvin-share =  callPackage ../servers/pingvin-share { };
10705   pipelight = callPackage ../tools/misc/pipelight {
10706     stdenv = stdenv_32bit;
10707     wine-staging = pkgsi686Linux.wine-staging;
10708   };
10710   place-cursor-at = haskell.lib.compose.justStaticExecutables haskellPackages.place-cursor-at;
10712   podofo = callPackage ../development/libraries/podofo { };
10714   podofo010 = callPackage ../development/libraries/podofo/0.10.x.nix { };
10716   poppler = callPackage ../development/libraries/poppler { lcms = lcms2; };
10718   poppler_gi = lowPrio (poppler.override {
10719     introspectionSupport = true;
10720   });
10722   poppler_min = poppler.override { # TODO: maybe reduce even more
10723     minimal = true;
10724     suffix = "min";
10725   };
10727   poppler_utils = poppler.override {
10728     suffix = "utils";
10729     utils = true;
10730   };
10732   portaudio = callPackage ../development/libraries/portaudio { };
10734   portmidi = callPackage ../development/libraries/portmidi {
10735     inherit (darwin.apple_sdk.frameworks) Carbon CoreAudio CoreFoundation CoreMIDI CoreServices;
10736   };
10738   proj = callPackage ../development/libraries/proj { };
10740   proj_7 = callPackage ../development/libraries/proj/7.nix { };
10742   proselint = callPackage ../tools/text/proselint {
10743     inherit (python3Packages)
10744     buildPythonApplication click future six;
10745   };
10747   prospector = callPackage ../development/tools/prospector { };
10749   protobuf = protobuf_28;
10751   inherit
10752     ({
10753       protobuf_28 = callPackage ../development/libraries/protobuf/28.nix { };
10754       protobuf_27 = callPackage ../development/libraries/protobuf/27.nix { };
10755       protobuf_26 = callPackage ../development/libraries/protobuf/26.nix { };
10756       protobuf_25 = callPackage ../development/libraries/protobuf/25.nix { };
10757       protobuf_24 = callPackage ../development/libraries/protobuf/24.nix { };
10758       protobuf_23 = callPackage ../development/libraries/protobuf/23.nix {
10759         abseil-cpp = abseil-cpp_202301;
10760       };
10761       protobuf_21 = callPackage ../development/libraries/protobuf/21.nix {
10762         abseil-cpp = abseil-cpp_202103;
10763       };
10764     })
10765     protobuf_28
10766     protobuf_27
10767     protobuf_26
10768     protobuf_25
10769     protobuf_24
10770     protobuf_23
10771     protobuf_21
10772     ;
10774   flatbuffers = callPackage ../development/libraries/flatbuffers { };
10775   flatbuffers_23 = callPackage ../development/libraries/flatbuffers/23.nix { };
10777   nanopbMalloc = callPackage ../by-name/na/nanopb/package.nix { enableMalloc = true; };
10779   pth = if stdenv.hostPlatform.isMusl then npth else gnupth;
10781   python-qt = libsForQt5.callPackage ../development/libraries/python-qt { };
10783   pyotherside = libsForQt5.callPackage ../development/libraries/pyotherside { };
10785   qbs = libsForQt5.callPackage ../development/tools/build-managers/qbs { };
10787   qdjango = libsForQt5.callPackage ../development/libraries/qdjango { };
10789   qmenumodel = libsForQt5.callPackage ../development/libraries/qmenumodel {
10790     inherit (lomiri) cmake-extras;
10791   };
10793   qolibri = libsForQt5.callPackage ../applications/misc/qolibri { };
10795   quarto = callPackage ../development/libraries/quarto { };
10797   quartoMinimal = callPackage ../development/libraries/quarto { rWrapper = null; python3 = null; };
10799   qt5 = recurseIntoAttrs (makeOverridable
10800     (import ../development/libraries/qt-5/5.15) {
10801       inherit (__splicedPackages)
10802         makeScopeWithSplicing' generateSplicesForMkScope lib fetchurl fetchpatch fetchgit fetchFromGitHub makeSetupHook makeWrapper
10803         bison cups dconf harfbuzz libGL perl gtk3 python3
10804         llvmPackages_15 overrideSDK overrideLibcxx
10805         darwin;
10806       inherit (__splicedPackages.gst_all_1) gstreamer gst-plugins-base;
10807       inherit config;
10808       stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
10809     });
10811   libsForQt5 = (recurseIntoAttrs (import ./qt5-packages.nix {
10812     inherit lib __splicedPackages makeScopeWithSplicing' generateSplicesForMkScope pkgsHostTarget;
10813   })) // { __recurseIntoDerivationForReleaseJobs = true; };
10815   # plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop
10816   plasma5Packages = libsForQt5;
10818   qtEnv = qt5.env;
10819   qt5Full = qt5.full;
10821   qt6 = recurseIntoAttrs (callPackage ../development/libraries/qt-6 { });
10823   qt6Packages = recurseIntoAttrs (import ./qt6-packages.nix {
10824     inherit lib __splicedPackages makeScopeWithSplicing' generateSplicesForMkScope pkgsHostTarget kdePackages;
10825     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
10826   });
10828   quill = callPackage ../tools/security/quill {
10829     inherit (darwin.apple_sdk.frameworks) Security;
10830   };
10832   qv2ray = libsForQt5.callPackage ../applications/networking/qv2ray { };
10834   rabbitmq-java-client = callPackage ../development/libraries/rabbitmq-java-client {
10835     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
10836     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
10837   };
10839   readline = readline82;
10841   readline70 = callPackage ../development/libraries/readline/7.0.nix { };
10843   readline82 = callPackage ../development/libraries/readline/8.2.nix { };
10845   readmdict = with python3Packages; toPythonApplication readmdict;
10847   kissfftFloat = kissfft.override {
10848     datatype = "float";
10849   };
10851   lambdabot = callPackage ../development/tools/haskell/lambdabot {
10852     haskellLib = haskell.lib.compose;
10853   };
10855   librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { };
10857   librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { };
10859   librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { };
10861   librdf_redland = callPackage ../development/libraries/librdf/redland.nix { };
10862   redland = librdf_redland; # added 2018-04-25
10864   qradiolink = callPackage ../applications/radio/qradiolink {
10865     protobuf = protobuf_21;
10866   };
10868   qadwaitadecorations-qt6 = callPackage ../by-name/qa/qadwaitadecorations/package.nix {
10869     useQt6 = true;
10870   };
10872   qgnomeplatform = libsForQt5.callPackage ../development/libraries/qgnomeplatform { };
10874   qgnomeplatform-qt6 = qt6Packages.callPackage ../development/libraries/qgnomeplatform {
10875     useQt6 = true;
10876   };
10878   randomx = darwin.apple_sdk_11_0.callPackage ../development/libraries/randomx { };
10880   remodel = callPackage ../development/tools/remodel {
10881     inherit (darwin.apple_sdk.frameworks) Security;
10882   };
10884   rhino = callPackage ../development/libraries/java/rhino {
10885     javac = jdk8;
10886     jvm = jre8;
10887   };
10889   rocksdb_8_11 = rocksdb.overrideAttrs rec {
10890     pname = "rocksdb";
10891     version = "8.11.4";
10892     src = fetchFromGitHub {
10893       owner = "facebook";
10894       repo = pname;
10895       rev = "v${version}";
10896       hash = "sha256-ZrU7G3xeimF3H2LRGBDHOq936u5pH/3nGecM4XEoWc8=";
10897     };
10898   };
10900   rocksdb_8_3 = rocksdb.overrideAttrs rec {
10901     pname = "rocksdb";
10902     version = "8.3.2";
10903     src = fetchFromGitHub {
10904       owner = "facebook";
10905       repo = pname;
10906       rev = "v${version}";
10907       hash = "sha256-mfIRQ8nkUbZ3Bugy3NAvOhcfzFY84J2kBUIUBcQ2/Qg=";
10908     };
10909   };
10911   rocksdb_7_10 = rocksdb.overrideAttrs rec {
10912     pname = "rocksdb";
10913     version = "7.10.2";
10914     src = fetchFromGitHub {
10915       owner = "facebook";
10916       repo = pname;
10917       rev = "v${version}";
10918       hash = "sha256-U2ReSrJwjAXUdRmwixC0DQXht/h/6rV8SOf5e2NozIs=";
10919     };
10920   };
10922   rocksdb_6_23 = rocksdb.overrideAttrs rec {
10923     pname = "rocksdb";
10924     version = "6.23.3";
10925     src = fetchFromGitHub {
10926       owner = "facebook";
10927       repo = pname;
10928       rev = "v${version}";
10929      hash = "sha256-SsDqhjdCdtIGNlsMj5kfiuS3zSGwcxi4KV71d95h7yk=";
10930    };
10931   };
10933   rover = callPackage ../development/tools/rover { };
10935   rshell = python3.pkgs.callPackage ../development/embedded/rshell { };
10937   rure = callPackage ../development/libraries/rure { };
10939   schroedinger = callPackage ../development/libraries/schroedinger {
10940     autoreconfHook = buildPackages.autoreconfHook269;
10941   };
10943   SDL = SDL1;
10945   SDL2 = callPackage ../development/libraries/SDL2 {
10946     inherit (darwin.apple_sdk.frameworks) AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL;
10947   };
10949   sdr-j-fm = libsForQt5.callPackage ../applications/radio/sdr-j-fm { };
10951   sdrpp = callPackage ../applications/radio/sdrpp {
10952     inherit (darwin.apple_sdk.frameworks) AppKit;
10953   };
10955   sigdigger = libsForQt5.callPackage ../applications/radio/sigdigger { };
10957   sev-snp-measure = with python3Packages; toPythonApplication sev-snp-measure;
10959   graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix { };
10961   simavr = callPackage ../development/tools/simavr {
10962     avrgcc = pkgsCross.avr.buildPackages.gcc;
10963     avrlibc = pkgsCross.avr.libcCross;
10964     inherit (darwin.apple_sdk.frameworks) GLUT;
10965   };
10967   simpleitk = callPackage ../development/libraries/simpleitk { lua = lua5_4; };
10969   sfml = callPackage ../development/libraries/sfml {
10970     inherit (darwin.apple_sdk.frameworks) IOKit Foundation AppKit OpenAL;
10971   };
10972   skawarePackages = recurseIntoAttrs (callPackage ../development/skaware-packages { });
10974   inherit (skawarePackages)
10975     execline
10976     execline-man-pages
10977     mdevd
10978     nsss
10979     s6
10980     s6-dns
10981     s6-linux-init
10982     s6-linux-utils
10983     s6-man-pages
10984     s6-networking
10985     s6-networking-man-pages
10986     s6-portable-utils
10987     s6-portable-utils-man-pages
10988     s6-rc
10989     s6-rc-man-pages
10990     sdnotify-wrapper
10991     skalibs
10992     skalibs_2_10
10993     tipidee
10994     utmps;
10996   kgt = callPackage ../development/tools/kgt {
10997     inherit (skawarePackages) cleanPackaging;
10998   };
11000   nettee = callPackage ../tools/networking/nettee {
11001     inherit (skawarePackages) cleanPackaging;
11002   };
11004   slibGuile = callPackage ../development/libraries/slib {
11005     scheme = guile;
11006   };
11008   snac2 = darwin.apple_sdk_11_0.callPackage ../servers/snac2 { };
11010   soapyairspy = callPackage ../applications/radio/soapyairspy {
11011     inherit (darwin) libobjc;
11012     inherit (darwin.apple_sdk.frameworks) IOKit Security;
11013   };
11015   soapyaudio = callPackage ../applications/radio/soapyaudio {
11016     inherit (darwin.apple_sdk.frameworks) Accelerate CoreAudio;
11017   };
11019   soapybladerf = callPackage ../applications/radio/soapybladerf {
11020     inherit (darwin) libobjc;
11021     inherit (darwin.apple_sdk.frameworks) IOKit Security;
11022   };
11024   soapyhackrf = callPackage ../applications/radio/soapyhackrf {
11025     inherit (darwin) libobjc;
11026     inherit (darwin.apple_sdk.frameworks) IOKit Security;
11027   };
11029   soapysdr = callPackage ../applications/radio/soapysdr { };
11031   soapysdr-with-plugins = callPackage ../applications/radio/soapysdr {
11032     extraPackages = [
11033       limesuite
11034       soapyairspy
11035       soapyaudio
11036       soapybladerf
11037       soapyhackrf
11038       soapyremote
11039       soapyrtlsdr
11040       soapyuhd
11041     ];
11042   };
11044   soapyrtlsdr = callPackage ../applications/radio/soapyrtlsdr {
11045     inherit (darwin) libobjc;
11046     inherit (darwin.apple_sdk.frameworks) IOKit Security;
11047   };
11049   soapyuhd = callPackage ../applications/radio/soapyuhd {
11050     inherit (darwin) libobjc;
11051     inherit (darwin.apple_sdk.frameworks) IOKit Security;
11052   };
11054   sofia_sip = callPackage ../development/libraries/sofia-sip {
11055     inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
11056   };
11058   soil = callPackage ../development/libraries/soil {
11059     inherit (darwin.apple_sdk.frameworks) Carbon;
11060   };
11062   spandsp = callPackage ../development/libraries/spandsp { };
11063   spandsp3 = callPackage ../development/libraries/spandsp/3.nix { };
11065   speechd-minimal = speechd.override {
11066     withLibao = false;
11067     withPulse = false;
11068     withAlsa = false;
11069     withOss = false;
11070     withFlite = false;
11071     withEspeak = false;
11072     withPico = false;
11073     libsOnly = true;
11074   };
11076   speech-tools = callPackage ../development/libraries/speech-tools {
11077     inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa;
11078   };
11080   speex = callPackage ../development/libraries/speex {
11081     fftw = fftwFloat;
11082   };
11084   speexdsp = callPackage ../development/libraries/speexdsp {
11085     fftw = fftwFloat;
11086   };
11088   sphinx = with python3Packages; toPythonApplication sphinx;
11090   sphinx-autobuild = with python3Packages; toPythonApplication sphinx-autobuild;
11092   sphinx-serve = with python3Packages; toPythonApplication sphinx-serve;
11094   inherit (python3Packages) sphinxHook;
11096   suwidgets = libsForQt5.callPackage ../applications/radio/suwidgets { };
11098   sqlite = lowPrio (callPackage ../development/libraries/sqlite { });
11100   unqlite = lowPrio (callPackage ../development/libraries/unqlite { });
11102   inherit (callPackage ../development/libraries/sqlite/tools.nix {
11103     inherit (darwin.apple_sdk.frameworks) Foundation;
11104   }) sqlite-analyzer sqldiff;
11106   sqlar = callPackage ../development/libraries/sqlite/sqlar.nix { };
11108   sqlite-interactive = (sqlite.override { interactive = true; }).bin;
11110   standardnotes = callPackage ../applications/editors/standardnotes { };
11112   stlink = callPackage ../development/tools/misc/stlink { };
11113   stlink-gui = callPackage ../development/tools/misc/stlink { withGUI = true; };
11115   streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix { };
11117   structuresynth = libsForQt5.callPackage ../development/libraries/structuresynth { };
11119   suil = darwin.apple_sdk_11_0.callPackage ../development/libraries/audio/suil { };
11121   sundials = callPackage ../development/libraries/sundials {
11122     python = python3;
11123   };
11125   svxlink = libsForQt5.callPackage ../applications/radio/svxlink { };
11127   tachyon = callPackage ../development/libraries/tachyon {
11128     inherit (darwin.apple_sdk.frameworks) Carbon;
11129   };
11131   tageditor = libsForQt5.callPackage ../applications/audio/tageditor { };
11133   tclap = tclap_1_2;
11135   tclap_1_2 = callPackage ../development/libraries/tclap/1.2.nix { };
11137   tclap_1_4 = callPackage ../development/libraries/tclap/1.4.nix { };
11139   tectonic = callPackage ../tools/typesetting/tectonic/wrapper.nix { };
11141   tectonic-unwrapped = callPackage ../tools/typesetting/tectonic {
11142     harfbuzz = harfbuzzFull;
11143   };
11145   termbench-pro = callPackage ../development/libraries/termbench-pro { fmt = fmt_8; };
11147   texpresso = callPackage ../tools/typesetting/tex/texpresso {
11148     texpresso-tectonic = callPackage ../tools/typesetting/tex/texpresso/tectonic.nix { };
11149   };
11151   tinyxml = tinyxml2;
11153   tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { };
11155   tk = tk-8_6;
11157   tk-9_0 = callPackage ../development/libraries/tk/9.0.nix { tcl = tcl-9_0; };
11158   tk-8_6 = callPackage ../development/libraries/tk/8.6.nix { };
11159   tk-8_5 = callPackage ../development/libraries/tk/8.5.nix { tcl = tcl-8_5; };
11161   tpm2-tss = callPackage ../development/libraries/tpm2-tss {
11162     autoreconfHook = buildPackages.autoreconfHook269;
11163   };
11165   unixODBCDrivers = recurseIntoAttrs (callPackages ../development/libraries/unixODBCDrivers { });
11167   v8 = callPackage ../development/libraries/v8 {
11168     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
11169   };
11171   valeStyles = recurseIntoAttrs (callPackages ../by-name/va/vale/styles.nix { });
11173   valhalla = callPackage ../development/libraries/valhalla {
11174     boost = boost.override { enablePython = true; python = python3; };
11175     protobuf = protobuf_21.override {
11176       abseil-cpp = abseil-cpp_202103.override {
11177         cxxStandard = "17";
11178       };
11179     };
11180   };
11182   vc = callPackage ../development/libraries/vc { };
11184   vc_0_7 = callPackage ../development/libraries/vc/0.7.nix { };
11186   vencord-web-extension = callPackage ../by-name/ve/vencord/package.nix { buildWebExtension = true; };
11188   vid-stab = callPackage ../development/libraries/vid-stab {
11189     inherit (llvmPackages) openmp;
11190   };
11192   vigra = callPackage ../development/libraries/vigra {
11193     hdf5 = hdf5.override { usev110Api = true; };
11194   };
11196   vte-gtk4 = vte.override {
11197     gtkVersion = "4";
11198   };
11200   vtk_9 = libsForQt5.callPackage ../development/libraries/vtk/9.x.nix {
11201     inherit (darwin) libobjc;
11202     inherit (darwin.apple_sdk.libs) xpc;
11203     inherit (darwin.apple_sdk.frameworks) AGL Cocoa CoreServices DiskArbitration
11204                                           IOKit CFNetwork Security ApplicationServices
11205                                           CoreText IOSurface ImageIO OpenGL GLUT;
11206   };
11208   vtk_9_withQt5 = vtk_9.override { enableQt = true; };
11210   vtk = vtk_9;
11212   vtk_9_egl = vtk_9.override { enableEgl = true; };
11214   vtkWithQt5 = vtk_9_withQt5;
11216   vulkan-caps-viewer = libsForQt5.callPackage ../tools/graphics/vulkan-caps-viewer { };
11218   vulkan-cts = callPackage ../tools/graphics/vulkan-cts { };
11220   vulkan-headers = callPackage ../development/libraries/vulkan-headers { };
11221   vulkan-tools = callPackage ../tools/graphics/vulkan-tools {
11222     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
11223   };
11224   wangle = darwin.apple_sdk_11_0.callPackage ../development/libraries/wangle { };
11226   wayland = darwin.apple_sdk_11_0.callPackage ../development/libraries/wayland { };
11227   wayland-scanner = callPackage ../development/libraries/wayland/scanner.nix { };
11229   wayland-protocols = callPackage ../development/libraries/wayland/protocols.nix { };
11231   waylandpp = callPackage ../development/libraries/waylandpp {
11232     graphviz = graphviz-nox;
11233   };
11235   webkitgtk_4_0 = callPackage ../development/libraries/webkitgtk {
11236     harfbuzz = harfbuzzFull;
11237     inherit (gst_all_1) gst-plugins-base gst-plugins-bad;
11238     inherit (darwin) apple_sdk;
11239   };
11241   webkitgtk_4_1 = webkitgtk_4_0.override {
11242     libsoup = libsoup_3;
11243   };
11245   webkitgtk_6_0 = webkitgtk_4_0.override {
11246     libsoup = libsoup_3;
11247     gtk3 = gtk4;
11248   };
11250   webrtc-audio-processing_1 = callPackage ../development/libraries/webrtc-audio-processing { };
11251   webrtc-audio-processing_0_3 = callPackage ../development/libraries/webrtc-audio-processing/0.3.nix { };
11252   # bump when majoring of packages have updated
11253   webrtc-audio-processing = webrtc-audio-processing_0_3;
11255   wildmidi = callPackage ../development/libraries/wildmidi {
11256     inherit (darwin.apple_sdk.frameworks) OpenAL CoreAudioKit;
11257   };
11259   wlr-protocols = callPackage ../development/libraries/wlroots/protocols.nix { };
11261   wt = wt4;
11262   inherit (libsForQt5.callPackage ../development/libraries/wt { })
11263     wt4;
11265   wxGTK31 = callPackage ../development/libraries/wxwidgets/wxGTK31.nix {
11266     inherit (darwin.stubs) setfile;
11267     inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit;
11268   };
11270   wxGTK32 = callPackage ../development/libraries/wxwidgets/wxGTK32.nix {
11271     inherit (darwin.stubs) setfile;
11272     inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit;
11273   };
11275   wxSVG = callPackage ../development/libraries/wxSVG {
11276     wxGTK = wxGTK32;
11277   };
11279   inherit (callPackages ../development/libraries/xapian { })
11280     xapian_1_4;
11281   xapian = xapian_1_4;
11283   xapian-omega = callPackage ../development/libraries/xapian/tools/omega {
11284     libmagic = file;
11285   };
11287   xcb-util-cursor = xorg.xcbutilcursor;
11288   xcb-util-cursor-HEAD = callPackage ../development/libraries/xcb-util-cursor/HEAD.nix { };
11290   xcbutilxrm = callPackage ../servers/x11/xorg/xcb-util-xrm.nix { };
11292   xgboostWithCuda = xgboost.override { cudaSupport = true; };
11294   yubico-pam = callPackage ../development/libraries/yubico-pam {
11295     inherit (darwin.apple_sdk.frameworks) CoreServices SystemConfiguration;
11296   };
11298   yubikey-manager-qt = libsForQt5.callPackage ../tools/misc/yubikey-manager-qt { };
11300   yubikey-personalization-gui = libsForQt5.callPackage ../tools/misc/yubikey-personalization-gui { };
11302   zlib = callPackage ../development/libraries/zlib {
11303     stdenv =
11304       # zlib is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
11305       # that does not propagate xcrun.
11306       if stdenv.hostPlatform.isDarwin then
11307         darwin.bootstrapStdenv
11308       else
11309         stdenv;
11310   };
11312   zeromq4 = callPackage ../development/libraries/zeromq/4.x.nix { };
11313   zeromq = zeromq4;
11315   # requires a newer Apple SDK
11316   zig_0_9 = darwin.apple_sdk_11_0.callPackage ../development/compilers/zig/0.9 {
11317     llvmPackages = llvmPackages_13;
11318   };
11319   # requires a newer Apple SDK
11320   zig_0_10 = darwin.apple_sdk_11_0.callPackage ../development/compilers/zig/0.10 {
11321     llvmPackages = llvmPackages_15;
11322   };
11323   # requires a newer Apple SDK
11324   zig_0_11 = darwin.apple_sdk_11_0.callPackage ../development/compilers/zig/0.11 {
11325     llvmPackages = llvmPackages_16;
11326   };
11327   # requires a newer Apple SDK
11328   zig_0_12 = darwin.apple_sdk_11_0.callPackage ../development/compilers/zig/0.12 {
11329     llvmPackages = llvmPackages_17;
11330   };
11331   # requires a newer Apple SDK
11332   zig_0_13 = darwin.apple_sdk_11_0.callPackage ../development/compilers/zig/0.13 {
11333     llvmPackages = llvmPackages_18;
11334   };
11335   zig = zig_0_13;
11337   zigStdenv = if stdenv.cc.isZig then stdenv else lowPrio zig.passthru.stdenv;
11339   aroccPackages = recurseIntoAttrs (callPackage ../development/compilers/arocc {});
11340   arocc = aroccPackages.latest;
11342   aroccStdenv = if stdenv.cc.isArocc then stdenv else lowPrio arocc.cc.passthru.stdenv;
11344   gsignond = callPackage ../development/libraries/gsignond {
11345     plugins = [];
11346   };
11348   gsignondPlugins = recurseIntoAttrs {
11349     sasl = callPackage ../development/libraries/gsignond/plugins/sasl.nix { };
11350     oauth = callPackage ../development/libraries/gsignond/plugins/oauth.nix { };
11351     lastfm = callPackage ../development/libraries/gsignond/plugins/lastfm.nix { };
11352     mail = callPackage ../development/libraries/gsignond/plugins/mail.nix { };
11353   };
11355   ### DEVELOPMENT / LIBRARIES / DARWIN SDKS
11357   apple-sdk_10_12 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "10.12"; };
11358   apple-sdk_10_13 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "10.13"; };
11359   apple-sdk_10_14 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "10.14"; };
11360   apple-sdk_10_15 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "10.15"; };
11361   apple-sdk_11 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "11"; };
11362   apple-sdk_12 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "12"; };
11363   apple-sdk_13 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "13"; };
11364   apple-sdk_14 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "14"; };
11365   apple-sdk_15 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "15"; };
11367   darwinMinVersionHook =
11368     deploymentTarget:
11369     makeSetupHook {
11370       name = "darwin-deployment-target-hook-${deploymentTarget}";
11371       substitutions = {
11372         darwinMinVersionVariable = lib.escapeShellArg stdenv.hostPlatform.darwinMinVersionVariable;
11373         deploymentTarget = lib.escapeShellArg deploymentTarget;
11374       };
11375     } ../os-specific/darwin/darwin-min-version-hook/setup-hook.sh;
11377   ### DEVELOPMENT / TESTING TOOLS
11379   atf = callPackage ../by-name/at/atf/package.nix {
11380     stdenv =
11381       # atf is a dependency of libiconv. Avoid an infinite recursion with `pkgsStatic` by using a bootstrap stdenv.
11382       if stdenv.hostPlatform.isDarwin then
11383         darwin.bootstrapStdenv
11384       else
11385         stdenv;
11386   };
11388   ### DEVELOPMENT / LIBRARIES / AGDA
11390   agdaPackages = callPackage ./agda-packages.nix {
11391     inherit (haskellPackages) Agda;
11392   };
11393   agda = agdaPackages.agda;
11395   ### DEVELOPMENT / LIBRARIES / BASH
11397   ### DEVELOPMENT / LIBRARIES / JAVA
11399   javaCup = callPackage ../development/libraries/java/cup {
11400     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
11401   };
11403   saxonb = saxonb_8_8;
11404   saxon-he = saxon_12-he;
11406   inherit (callPackages ../development/libraries/java/saxon {
11407     jre = jre_headless;
11408     jre8 = jre8_headless;
11409   })
11410     saxon
11411     saxonb_8_8
11412     saxonb_9_1
11413     saxon_9-he
11414     saxon_11-he
11415     saxon_12-he;
11417   swt_jdk8 = callPackage ../by-name/sw/swt/package.nix {
11418     jdk = jdk8;
11419   };
11422   ### DEVELOPMENT / LIBRARIES / JAVASCRIPT
11424   ### DEVELOPMENT / BOWER MODULES (JAVASCRIPT)
11426   buildBowerComponents = callPackage ../development/bower-modules/generic { };
11428   ### DEVELOPMENT / GO
11430   # the unversioned attributes should always point to the same go version
11431   go = go_1_23;
11432   buildGoModule = buildGo123Module;
11433   buildGoPackage = buildGo123Package;
11435   go_1_22 = callPackage ../development/compilers/go/1.22.nix { };
11436   buildGo122Module = callPackage ../build-support/go/module.nix {
11437     go = buildPackages.go_1_22;
11438   };
11439   buildGo122Package = callPackage ../build-support/go/package.nix {
11440     go = buildPackages.go_1_22;
11441   };
11443   go_1_23 = callPackage ../development/compilers/go/1.23.nix { };
11444   buildGo123Module = callPackage ../build-support/go/module.nix {
11445     go = buildPackages.go_1_23;
11446   };
11447   buildGo123Package = callPackage ../build-support/go/package.nix {
11448     go = buildPackages.go_1_23;
11449   };
11451   ### DEVELOPMENT / HARE
11453   hareHook = callPackage ../by-name/ha/hare/hook.nix { };
11455   ### DEVELOPMENT / JAVA MODULES
11457   javaPackages = recurseIntoAttrs (callPackage ./java-packages.nix { });
11459   ### DEVELOPMENT / LISP MODULES
11461   asdf = callPackage ../development/lisp-modules/asdf {
11462     texLive = null;
11463   };
11465   # QuickLisp minimal version
11466   asdf_2_26 = callPackage ../development/lisp-modules/asdf/2.26.nix {
11467     texLive = null;
11468   };
11469   # Currently most popular
11470   asdf_3_1 = callPackage ../development/lisp-modules/asdf/3.1.nix {
11471     texLive = null;
11472   };
11473   # Latest
11474   asdf_3_3 = callPackage ../development/lisp-modules/asdf/3.3.nix {
11475     texLive = null;
11476   };
11478   wrapLisp = callPackage ../development/lisp-modules/nix-cl.nix {};
11480   # Armed Bear Common Lisp
11481   abcl = wrapLisp {
11482     pkg = callPackage ../development/compilers/abcl {
11483       # https://armedbear.common-lisp.dev/ lists OpenJDK 17 as the highest
11484       # supported JDK.
11485       jdk = openjdk17;
11486     };
11487     faslExt = "abcl";
11488   };
11490   # Clozure Common Lisp
11491   ccl = wrapLisp {
11492     pkg = callPackage ../development/compilers/ccl {
11493       inherit (buildPackages.darwin) bootstrap_cmds;
11494     };
11495     faslExt = "lx64fsl";
11496   };
11498   # Clasp Common Lisp
11499   clasp-common-lisp = wrapLisp {
11500     pkg = callPackage ../development/compilers/clasp { };
11501     faslExt = "fasl";
11502   };
11504   # CLISP
11505   clisp = wrapLisp {
11506     pkg = callPackage ../development/interpreters/clisp { };
11507     faslExt = "fas";
11508     flags = ["-E" "UTF-8"];
11509   };
11511   wrapLispi686Linux = pkgsi686Linux.callPackage ../development/lisp-modules/nix-cl.nix {};
11513   # CMU Common Lisp
11514   cmucl_binary = wrapLispi686Linux {
11515     pkg = pkgsi686Linux.callPackage ../development/compilers/cmucl/binary.nix { };
11516     faslExt = "sse2f";
11517     program = "lisp";
11518   };
11520   # Embeddable Common Lisp
11521   ecl = wrapLisp {
11522     pkg = callPackage ../development/compilers/ecl { };
11523     faslExt = "fas";
11524   };
11525   ecl_16_1_2 = wrapLisp {
11526     pkg = callPackage ../development/compilers/ecl/16.1.2.nix { };
11527     faslExt = "fas";
11528   };
11530   # GNU Common Lisp
11531   gcl = wrapLisp {
11532     pkg = callPackage ../development/compilers/gcl { };
11533     faslExt = "o";
11534   };
11536   # ManKai Common Lisp
11537   mkcl = wrapLisp {
11538     pkg = callPackage ../development/compilers/mkcl {};
11539     faslExt = "fas";
11540   };
11542   # Steel Bank Common Lisp
11543   sbcl_2_4_6 = wrapLisp {
11544     pkg = callPackage ../development/compilers/sbcl { version = "2.4.6"; };
11545     faslExt = "fasl";
11546     flags = [ "--dynamic-space-size" "3000" ];
11547   };
11548   sbcl_2_4_9 = wrapLisp {
11549     pkg = callPackage ../development/compilers/sbcl { version = "2.4.9"; };
11550     faslExt = "fasl";
11551     flags = [ "--dynamic-space-size" "3000" ];
11552   };
11553   sbcl_2_4_10 = wrapLisp {
11554     pkg = callPackage ../development/compilers/sbcl { version = "2.4.10"; };
11555     faslExt = "fasl";
11556     flags = [ "--dynamic-space-size" "3000" ];
11557   };
11558   sbcl = sbcl_2_4_10;
11560   sbclPackages = recurseIntoAttrs sbcl.pkgs;
11562   ### DEVELOPMENT / PERL MODULES
11564   perlInterpreters = import ../development/interpreters/perl { inherit callPackage; };
11565   inherit (perlInterpreters) perl538 perl540;
11567   perl538Packages = recurseIntoAttrs perl538.pkgs;
11568   perl540Packages = recurseIntoAttrs perl540.pkgs;
11570   perl = perl540;
11571   perlPackages = perl540Packages;
11573   ack = perlPackages.ack;
11575   perlcritic = perlPackages.PerlCritic;
11577   sqitchMysql = (callPackage ../development/tools/misc/sqitch {
11578     mysqlSupport = true;
11579   }).overrideAttrs { pname = "sqitch-mysql"; };
11581   sqitchPg = (callPackage ../development/tools/misc/sqitch {
11582     postgresqlSupport = true;
11583   }).overrideAttrs { pname = "sqitch-pg"; };
11585   ### DEVELOPMENT / R MODULES
11587   R = darwin.apple_sdk_11_0.callPackage ../applications/science/math/R {
11588     # TODO: split docs into a separate output
11589     withRecommendedPackages = false;
11590     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa Foundation;
11591     inherit (darwin) libobjc;
11592   };
11594   rWrapper = callPackage ../development/r-modules/wrapper.nix {
11595     recommendedPackages = with rPackages; [
11596       boot class cluster codetools foreign KernSmooth lattice MASS
11597       Matrix mgcv nlme nnet rpart spatial survival
11598     ];
11599     # Override this attribute to register additional libraries.
11600     packages = [];
11601   };
11603   radianWrapper = callPackage ../development/r-modules/wrapper-radian.nix {
11604     recommendedPackages = with rPackages; [
11605       boot class cluster codetools foreign KernSmooth lattice MASS
11606       Matrix mgcv nlme nnet rpart spatial survival
11607     ];
11608     radian = python3Packages.radian;
11609     # Override this attribute to register additional libraries.
11610     packages = [];
11611     # Override this attribute if you want to expose R with the same set of
11612     # packages as specified in radian
11613     wrapR = false;
11614   };
11616   rstudioWrapper = libsForQt5.callPackage ../development/r-modules/wrapper-rstudio.nix {
11617     recommendedPackages = with rPackages; [
11618       boot class cluster codetools foreign KernSmooth lattice MASS
11619       Matrix mgcv nlme nnet rpart spatial survival
11620     ];
11621     # Override this attribute to register additional libraries.
11622     packages = [];
11623   };
11625   rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; };
11627   rPackages = (dontRecurseIntoAttrs (callPackage ../development/r-modules {
11628     overrides = (config.rPackageOverrides or (_: {})) pkgs;
11629   })) // { __attrsFailEvaluation = true; };
11631   ### SERVERS
11633   adguardhome = callPackage ../servers/adguardhome { };
11635   alerta = callPackage ../servers/monitoring/alerta/client.nix { };
11637   alerta-server = callPackage ../servers/monitoring/alerta { };
11639   apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix {
11640     inherit (darwin.apple_sdk.frameworks) Foundation;
11641   };
11642   apacheHttpd = apacheHttpd_2_4;
11644   apacheHttpdPackagesFor = apacheHttpd: self: let callPackage = newScope self; in {
11645     inherit apacheHttpd;
11646     mod_auth_mellon = callPackage ../servers/http/apache-modules/mod_auth_mellon { };
11647     mod_ca = callPackage ../servers/http/apache-modules/mod_ca { };
11648     mod_crl = callPackage ../servers/http/apache-modules/mod_crl { };
11649     mod_cspnonce = callPackage ../servers/http/apache-modules/mod_cspnonce { };
11650     mod_csr = callPackage ../servers/http/apache-modules/mod_csr { };
11651     mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { };
11652     mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { };
11653     mod_itk = callPackage ../servers/http/apache-modules/mod_itk { };
11654     mod_jk = callPackage ../servers/http/apache-modules/mod_jk { };
11655     mod_mbtiles = callPackage ../servers/http/apache-modules/mod_mbtiles { };
11656     mod_ocsp = callPackage ../servers/http/apache-modules/mod_ocsp { };
11657     mod_perl = callPackage ../servers/http/apache-modules/mod_perl { };
11658     mod_pkcs12 = callPackage ../servers/http/apache-modules/mod_pkcs12 { };
11659     mod_python = callPackage ../servers/http/apache-modules/mod_python { };
11660     mod_scep = callPackage ../servers/http/apache-modules/mod_scep { };
11661     mod_spkac = callPackage ../servers/http/apache-modules/mod_spkac { };
11662     mod_tile = callPackage ../servers/http/apache-modules/mod_tile { };
11663     mod_timestamp = callPackage ../servers/http/apache-modules/mod_timestamp { };
11664     mod_wsgi3 = callPackage ../servers/http/apache-modules/mod_wsgi { };
11665     php = pkgs.php.override { inherit apacheHttpd; };
11666     subversion = pkgs.subversion.override { httpServer = true; inherit apacheHttpd; };
11667   } // lib.optionalAttrs config.allowAliases {
11668     mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4";
11669     mod_wsgi  = self.mod_wsgi2;
11670     mod_wsgi2 = throw "mod_wsgi2 has been removed since Python 2 is EOL. Use mod_wsgi3 instead";
11671   };
11673   apacheHttpdPackages_2_4 = recurseIntoAttrs (apacheHttpdPackagesFor apacheHttpd_2_4 apacheHttpdPackages_2_4);
11674   apacheHttpdPackages = apacheHttpdPackages_2_4;
11676   appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { };
11678   cassandra_3_0 = callPackage ../servers/nosql/cassandra/3.0.nix {
11679     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
11680     python = python2;
11681   };
11682   cassandra_3_11 = callPackage ../servers/nosql/cassandra/3.11.nix {
11683     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
11684     python = python2;
11685   };
11686   cassandra_4 = callPackage ../servers/nosql/cassandra/4.nix {
11687     # Effective Cassandra 4.0.2 there is full Java 11 support
11688     #  -- https://cassandra.apache.org/doc/latest/cassandra/new/java11.html
11689     jre = pkgs.jdk11_headless;
11690     python = python3;
11691   };
11692   cassandra = cassandra_4;
11694   cassandra-cpp-driver = callPackage ../development/libraries/cassandra-cpp-driver/default.nix { };
11696   apache-jena = callPackage ../servers/nosql/apache-jena/binary.nix {
11697     java = jre;
11698   };
11700   apache-jena-fuseki = callPackage ../servers/nosql/apache-jena/fuseki-binary.nix {
11701     java = jre;
11702   };
11704   inherit (callPackages ../servers/asterisk { })
11705     asterisk asterisk-stable asterisk-lts
11706     asterisk_18 asterisk_20;
11708   asterisk-ldap = lowPrio (asterisk.override { ldapSupport = true; });
11710   dnsutils = bind.dnsutils;
11711   dig = lib.addMetaAttrs { mainProgram = "dig"; } bind.dnsutils;
11713   charybdis = callPackage ../servers/irc/charybdis {
11714     autoreconfHook = buildPackages.autoreconfHook269;
11715   };
11717   clickhouse = callPackage ../servers/clickhouse {
11718     llvmPackages = llvmPackages_16;
11719   };
11721   clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
11723   couchdb3 = callPackage ../servers/http/couchdb/3.nix { };
11725   dcnnt = python3Packages.callPackage ../servers/dcnnt { };
11727   deconz = qt5.callPackage ../servers/deconz { };
11729   doh-proxy-rust = callPackage ../servers/dns/doh-proxy-rust {
11730     inherit (darwin.apple_sdk.frameworks) Security;
11731   };
11733   dict = callPackage ../servers/dict {
11734     libmaa = callPackage ../servers/dict/libmaa.nix { };
11735   };
11737   dictdDBs = recurseIntoAttrs (callPackages ../servers/dict/dictd-db.nix {});
11739   dictDBCollector = callPackage ../servers/dict/dictd-db-collector.nix { };
11741   diod = callPackage ../servers/diod { lua = lua5_1; };
11743   directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler {
11744     # https://github.com/NixOS/nixpkgs/issues/216294
11745     stdenv = if stdenv.cc.isGNU && stdenv.hostPlatform.isi686 then gcc11Stdenv else stdenv;
11746   };
11748   dodgy = with python3Packages; toPythonApplication dodgy;
11750   dovecot = callPackage ../servers/mail/dovecot { };
11751   envoy = callPackage ../by-name/en/envoy/package.nix {
11752     jdk = openjdk11_headless;
11753   };
11755   etcd = etcd_3_5;
11756   etcd_3_4 = callPackage ../servers/etcd/3.4.nix { };
11757   etcd_3_5 = callPackage ../servers/etcd/3.5 { };
11759   prosody = callPackage ../servers/xmpp/prosody {
11760     withExtraLibs = [];
11761     withExtraLuaPackages = _: [];
11762   };
11764   elasticmq-server-bin = callPackage ../servers/elasticmq-server-bin {
11765     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
11766     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
11767   };
11769   eventstore = callPackage ../servers/nosql/eventstore { };
11771   fedigroups = callPackage ../servers/fedigroups {
11772     inherit (darwin.apple_sdk.frameworks) Security;
11773   };
11775   felix = callPackage ../servers/felix { };
11777   felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { };
11779   inherit (callPackages ../servers/firebird { }) firebird_4 firebird_3 firebird_2_5 firebird;
11781   freshrss = callPackage ../servers/web-apps/freshrss { };
11782   freshrss-extensions = recurseIntoAttrs (callPackage ../servers/web-apps/freshrss/extensions { });
11784   freeswitch = callPackage ../servers/sip/freeswitch {
11785     inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
11786   };
11788   glabels-qt = libsForQt5.callPackage ../applications/graphics/glabels-qt { };
11790   grafana = callPackage ../servers/monitoring/grafana { };
11791   grafanaPlugins = callPackages ../servers/monitoring/grafana/plugins { };
11793   grafana-loki = callPackage ../servers/monitoring/loki { };
11794   promtail = callPackage ../servers/monitoring/loki/promtail.nix { };
11796   hasura-graphql-engine = haskell.lib.compose.justStaticExecutables haskell.packages.ghc810.graphql-engine;
11798   hasura-cli = callPackage ../servers/hasura/cli.nix { };
11800   inherit (callPackage ../servers/hbase {}) hbase_2_4 hbase_2_5 hbase_2_6 hbase_3_0;
11801   hbase2 = hbase_2_6;
11802   hbase3 = hbase_3_0;
11803   hbase = hbase2; # when updating, point to the latest stable release
11805   home-assistant = callPackage ../servers/home-assistant { };
11807   buildHomeAssistantComponent = callPackage ../servers/home-assistant/build-custom-component { };
11808   home-assistant-custom-components = lib.recurseIntoAttrs (lib.packagesFromDirectoryRecursive {
11809     inherit (home-assistant.python.pkgs) callPackage;
11810     directory = ../servers/home-assistant/custom-components;
11811   });
11812   home-assistant-custom-lovelace-modules = lib.recurseIntoAttrs
11813     (callPackage ../servers/home-assistant/custom-lovelace-modules {});
11815   home-assistant-cli = callPackage ../servers/home-assistant/cli.nix { };
11817   home-assistant-component-tests = recurseIntoAttrs home-assistant.tests.components;
11819   icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { };
11820   icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { };
11821   icingaweb2 = callPackage ../servers/icingaweb2 { };
11822   icingaweb2Modules = {
11823     theme-april = callPackage ../servers/icingaweb2/theme-april { };
11824     theme-lsd = callPackage ../servers/icingaweb2/theme-lsd { };
11825     theme-particles = callPackage ../servers/icingaweb2/theme-particles { };
11826     theme-snow = callPackage ../servers/icingaweb2/theme-snow { };
11827     theme-spring = callPackage ../servers/icingaweb2/theme-spring { };
11828   };
11830   inspircdMinimal = inspircd.override { extraModules = []; };
11832   jboss = callPackage ../servers/http/jboss { };
11834   jetty = jetty_12;
11835   jetty_12 = callPackage ../servers/http/jetty/12.x.nix { };
11836   jetty_11 = callPackage ../servers/http/jetty/11.x.nix { };
11838   jibri = callPackage ../servers/jibri { };
11840   jicofo = callPackage ../servers/jicofo { };
11842   jitsi-meet = callPackage ../servers/web-apps/jitsi-meet { };
11844   jitsi-meet-prosody = callPackage ../misc/jitsi-meet-prosody { };
11846   jitsi-videobridge = callPackage ../servers/jitsi-videobridge { };
11848   knot-resolver = callPackage ../servers/dns/knot-resolver {
11849     systemd = systemdMinimal; # in closure already anyway
11850   };
11852   leafnode = callPackage ../servers/news/leafnode { };
11854   leafnode1 = callPackage ../servers/news/leafnode/1.nix { };
11856   lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix {
11857     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
11858   };
11860   lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix {
11861     nodejs = nodejs_18;
11862   };
11864   mailmanPackages = callPackage ../servers/mail/mailman {
11865     # Hyperkitty test fails with 3.12:
11866     # https://gitlab.com/mailman/hyperkitty/-/issues/514
11867     python3 = python311;
11868   };
11869   inherit (mailmanPackages) mailman mailman-hyperkitty;
11870   mailman-web = mailmanPackages.web;
11872   mastodon = callPackage ../servers/mastodon {
11873     nodejs-slim = nodejs-slim_22;
11874     python3 = python311;
11875     ruby = ruby_3_3;
11876     yarn-berry = yarn-berry.override { nodejs = nodejs-slim_22; };
11877   };
11879   materialize = callPackage ../servers/sql/materialize {
11880     inherit (buildPackages.darwin) bootstrap_cmds;
11881     inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation;
11882   };
11884   micro-full = micro.wrapper.override {
11885     extraPackages = [
11886       wl-clipboard
11887       xclip
11888     ];
11889   };
11891   micro-with-wl-clipboard = micro.wrapper.override {
11892     extraPackages = [
11893       wl-clipboard
11894     ];
11895   };
11897   micro-with-xclip = micro.wrapper.override {
11898     extraPackages = [
11899       xclip
11900     ];
11901   };
11903   minio = callPackage ../servers/minio { };
11904   # Keep around to allow people to migrate their data from the old legacy fs format
11905   # https://github.com/minio/minio/releases/tag/RELEASE.2022-10-29T06-21-33Z
11906   minio_legacy_fs = callPackage ../servers/minio/legacy_fs.nix { };
11908   mkchromecast = libsForQt5.callPackage ../applications/networking/mkchromecast { };
11910   inherit (callPackages ../servers/mpd {
11911     inherit (darwin.apple_sdk.frameworks) AudioToolbox AudioUnit;
11912   }) mpd mpd-small mpdWithFeatures;
11914   mtprotoproxy = python3.pkgs.callPackage ../servers/mtprotoproxy { };
11916   moodle = callPackage ../servers/web-apps/moodle { };
11918   moodle-utils = callPackage ../servers/web-apps/moodle/moodle-utils.nix { };
11920   inherit (callPackage ../applications/networking/mullvad { })
11921     mullvad;
11923   mullvad-vpn = callPackage ../applications/networking/mullvad-vpn { };
11925   mullvad-closest = with python3Packages; toPythonApplication mullvad-closest;
11927   napalm = with python3Packages; toPythonApplication (
11928     napalm.overridePythonAttrs (attrs: {
11929       # add community frontends that depend on the napalm python package
11930       propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
11931         napalm-hp-procurve
11932       ];
11933     })
11934   );
11936   nginx = nginxStable;
11938   nginxQuic = callPackage ../servers/http/nginx/quic.nix {
11939     zlib = zlib-ng.override { withZlibCompat = true; };
11940     withPerl = false;
11941     # We don't use `with` statement here on purpose!
11942     # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
11943     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ];
11944     # Use latest boringssl to allow http3 support
11945     openssl = quictls;
11946   };
11948   nginxStable = callPackage ../servers/http/nginx/stable.nix {
11949     zlib = zlib-ng.override { withZlibCompat = true; };
11950     withPerl = false;
11951     # We don't use `with` statement here on purpose!
11952     # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
11953     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ];
11954   };
11956   nginxMainline = callPackage ../servers/http/nginx/mainline.nix {
11957     zlib = zlib-ng.override { withZlibCompat = true; };
11958     withKTLS = true;
11959     withPerl = false;
11960     # We don't use `with` statement here on purpose!
11961     # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
11962     modules = [ nginxModules.dav nginxModules.moreheaders ];
11963   };
11965   nginxModules = recurseIntoAttrs (callPackage ../servers/http/nginx/modules.nix { });
11967   # We should move to dynmaic modules and create a nginxFull package with all modules
11968   nginxShibboleth = nginxStable.override {
11969     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders nginxModules.shibboleth ];
11970   };
11972   libmodsecurity = callPackage ../tools/security/libmodsecurity {
11973     autoreconfHook = buildPackages.autoreconfHook269;
11974   };
11976   nsd = callPackage ../servers/dns/nsd (config.nsd or {});
11978   outline = callPackage ../servers/web-apps/outline (lib.fix (super: {
11979     yarn = yarn.override { inherit (super) nodejs; };
11980     nodejs = nodejs_20;
11981   }));
11983   openafs = callPackage ../servers/openafs/1.8 { };
11985   openresty = callPackage ../servers/http/openresty {
11986     withPerl = false;
11987     modules = [];
11988   };
11990   opensmtpd = callPackage ../servers/mail/opensmtpd { };
11991   opensmtpd-extras = callPackage ../servers/mail/opensmtpd/extras.nix { };
11992   opensmtpd-filter-rspamd = callPackage ../servers/mail/opensmtpd/filter-rspamd.nix { };
11993   osrm-backend = callPackage ../servers/osrm-backend {
11994     tbb = tbb_2021_11;
11995     # https://github.com/Project-OSRM/osrm-backend/issues/6503
11996     boost = boost179;
11997   };
11999   postfix = callPackage ../servers/mail/postfix { };
12001   pfixtools = callPackage ../servers/mail/postfix/pfixtools.nix { };
12003   pflogsumm = callPackage ../servers/mail/postfix/pflogsumm.nix { };
12005   system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { });
12007   # PulseAudio daemons
12009   hsphfpd = callPackage ../servers/pulseaudio/hsphfpd.nix { };
12011   pulseaudio = callPackage ../servers/pulseaudio {
12012     inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa CoreAudio;
12013   };
12015   qpaeq = libsForQt5.callPackage ../servers/pulseaudio/qpaeq.nix { };
12017   pulseaudioFull = pulseaudio.override {
12018     x11Support = true;
12019     jackaudioSupport = true;
12020     airtunesSupport = true;
12021     bluetoothSupport = true;
12022     advancedBluetoothCodecs = true;
12023     remoteControlSupport = true;
12024     zeroconfSupport = true;
12025   };
12027   libpulseaudio = pulseaudio.override {
12028     libOnly = true;
12029   };
12031   apulse = callPackage ../misc/apulse { };
12033   libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { };
12035   tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { };
12037   libmysqlclient = libmysqlclient_3_3;
12038   libmysqlclient_3_1 = mariadb-connector-c_3_1;
12039   libmysqlclient_3_2 = mariadb-connector-c_3_2;
12040   libmysqlclient_3_3 = mariadb-connector-c_3_3;
12041   mariadb-connector-c = mariadb-connector-c_3_3;
12042   mariadb-connector-c_3_1 = callPackage ../servers/sql/mariadb/connector-c/3_1.nix { };
12043   mariadb-connector-c_3_2 = callPackage ../servers/sql/mariadb/connector-c/3_2.nix { };
12044   mariadb-connector-c_3_3 = callPackage ../servers/sql/mariadb/connector-c/3_3.nix { };
12046   inherit (import ../servers/sql/mariadb pkgs)
12047     mariadb_105
12048     mariadb_106
12049     mariadb_1011
12050     mariadb_114
12051   ;
12052   mariadb = mariadb_1011;
12053   mariadb-embedded = mariadb.override { withEmbedded = true; };
12055   mongodb = hiPrio mongodb-7_0;
12057   mongodb-6_0 = darwin.apple_sdk_11_0.callPackage ../servers/nosql/mongodb/6.0.nix {
12058     sasl = cyrus_sasl;
12059     boost = boost178.override { enableShared = false; };
12060     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
12061     stdenv = if stdenv.hostPlatform.isDarwin then
12062       darwin.apple_sdk_11_0.stdenv.override (old: {
12063         hostPlatform = old.hostPlatform // { darwinMinVersion = "10.14"; };
12064         buildPlatform = old.buildPlatform // { darwinMinVersion = "10.14"; };
12065         targetPlatform = old.targetPlatform // { darwinMinVersion = "10.14"; };
12066       }) else
12067       if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
12068   };
12070   mongodb-7_0 = darwin.apple_sdk_11_0.callPackage ../servers/nosql/mongodb/7.0.nix {
12071     sasl = cyrus_sasl;
12072     boost = boost179.override { enableShared = false; };
12073     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
12074     stdenv = if stdenv.hostPlatform.isDarwin then
12075       darwin.apple_sdk_11_0.stdenv.override (old: {
12076         hostPlatform = old.hostPlatform // { darwinMinVersion = "10.14"; };
12077         buildPlatform = old.buildPlatform // { darwinMinVersion = "10.14"; };
12078         targetPlatform = old.targetPlatform // { darwinMinVersion = "10.14"; };
12079       }) else
12080       if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
12081   };
12083   influxdb = callPackage ../servers/nosql/influxdb { };
12084   influxdb2-server = callPackage ../servers/nosql/influxdb2 { };
12085   influxdb2-cli = callPackage ../servers/nosql/influxdb2/cli.nix { };
12086   influxdb2-token-manipulator = callPackage ../servers/nosql/influxdb2/token-manipulator.nix { };
12087   influxdb2-provision = callPackage ../servers/nosql/influxdb2/provision.nix { };
12088   # For backwards compatibility with older versions of influxdb2,
12089   # which bundled the server and CLI into the same derivation. Will be
12090   # removed in a few releases.
12091   influxdb2 = callPackage ../servers/nosql/influxdb2/combined.nix { };
12093   mysql80 = callPackage ../servers/sql/mysql/8.0.x.nix {
12094     inherit (darwin) developer_cmds DarwinTools;
12095     inherit (darwin.apple_sdk.frameworks) CoreServices;
12096     boost = boost177; # Configure checks for specific version.
12097     icu = icu69;
12098     protobuf = protobuf_21;
12099   };
12101   mssql_jdbc = callPackage ../servers/sql/mssql/jdbc { };
12102   jtds_jdbc = callPackage ../servers/sql/mssql/jdbc/jtds.nix { };
12104   miniflux = callPackage ../by-name/mi/miniflux/package.nix {
12105     buildGoModule = buildGo123Module;
12106   };
12108   inherit (callPackage ../servers/mir { })
12109     mir
12110     mir_2_15;
12112   icinga2 = callPackage ../servers/monitoring/icinga2 { };
12114   icinga2-agent = callPackage ../servers/monitoring/icinga2 {
12115     nameSuffix = "-agent";
12116     withMysql = false;
12117     withNotification = false;
12118     withIcingadb = false;
12119   };
12121   nagiosPlugins = recurseIntoAttrs (callPackages ../servers/monitoring/nagios-plugins { });
12123   riemann-dash = callPackage ../servers/monitoring/riemann-dash { };
12125   qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { };
12127   rust-hypervisor-firmware = callPackage ../applications/virtualization/rust-hypervisor-firmware { };
12129   OVMF = callPackage ../applications/virtualization/OVMF {
12130     inherit (python3Packages) pexpect;
12131   };
12132   OVMFFull = callPackage ../applications/virtualization/OVMF {
12133     inherit (python3Packages) pexpect;
12134     secureBoot = true;
12135     httpSupport = true;
12136     tpmSupport = true;
12137     tlsSupport = true;
12138     msVarsTemplate = stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isAarch64;
12139   };
12141   tang = callPackage ../servers/tang {
12142     asciidoc = asciidoc-full;
12143   };
12145   postgresqlVersions = import ../servers/sql/postgresql pkgs;
12146   inherit (postgresqlVersions)
12147     postgresql_13
12148     postgresql_14
12149     postgresql_15
12150     postgresql_16
12151     postgresql_17
12153     postgresql_13_jit
12154     postgresql_14_jit
12155     postgresql_15_jit
12156     postgresql_16_jit
12157     postgresql_17_jit
12158   ;
12159   postgresql = postgresql_16;
12160   postgresql_jit = postgresql_16_jit;
12161   postgresqlPackages = recurseIntoAttrs postgresql.pkgs;
12162   postgresqlJitPackages = recurseIntoAttrs postgresql_jit.pkgs;
12163   postgresql13Packages = recurseIntoAttrs postgresql_13.pkgs;
12164   postgresql14Packages = recurseIntoAttrs postgresql_14.pkgs;
12165   postgresql15Packages = recurseIntoAttrs postgresql_15.pkgs;
12166   postgresql16Packages = recurseIntoAttrs postgresql_16.pkgs;
12167   postgresql17Packages = recurseIntoAttrs postgresql_17.pkgs;
12168   postgresql13JitPackages = recurseIntoAttrs postgresql_13_jit.pkgs;
12169   postgresql14JitPackages = recurseIntoAttrs postgresql_14_jit.pkgs;
12170   postgresql15JitPackages = recurseIntoAttrs postgresql_15_jit.pkgs;
12171   postgresql16JitPackages = recurseIntoAttrs postgresql_16_jit.pkgs;
12172   postgresql17JitPackages = recurseIntoAttrs postgresql_17_jit.pkgs;
12174   postgrest = haskellPackages.postgrest.bin;
12176   prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { };
12177   prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { };
12178   prometheus-apcupsd-exporter = callPackage ../servers/monitoring/prometheus/apcupsd-exporter.nix { };
12179   prometheus-artifactory-exporter = callPackage ../servers/monitoring/prometheus/artifactory-exporter.nix { };
12180   prometheus-atlas-exporter = callPackage ../servers/monitoring/prometheus/atlas-exporter.nix { };
12181   prometheus-aws-s3-exporter = callPackage ../servers/monitoring/prometheus/aws-s3-exporter.nix { };
12182   prometheus-bind-exporter = callPackage ../servers/monitoring/prometheus/bind-exporter.nix { };
12183   prometheus-bird-exporter = callPackage ../servers/monitoring/prometheus/bird-exporter.nix { };
12184   prometheus-bitcoin-exporter = callPackage ../servers/monitoring/prometheus/bitcoin-exporter.nix { };
12185   prometheus-blackbox-exporter = callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix { };
12186   prometheus-cloudflare-exporter = callPackage ../servers/monitoring/prometheus/cloudflare-exporter.nix { };
12187   prometheus-collectd-exporter = callPackage ../servers/monitoring/prometheus/collectd-exporter.nix { };
12188   prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { };
12189   prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { };
12190   prometheus-domain-exporter = callPackage ../servers/monitoring/prometheus/domain-exporter.nix { };
12191   prometheus-fastly-exporter = callPackage ../servers/monitoring/prometheus/fastly-exporter.nix { };
12192   prometheus-flow-exporter = callPackage ../servers/monitoring/prometheus/flow-exporter.nix { };
12193   prometheus-fritzbox-exporter = callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix { };
12194   prometheus-gitlab-ci-pipelines-exporter = callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix { };
12195   prometheus-graphite-exporter = callPackage ../servers/monitoring/prometheus/graphite-exporter.nix { };
12196   prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { };
12197   prometheus-idrac-exporter = callPackage ../servers/monitoring/prometheus/idrac-exporter.nix { };
12198   prometheus-imap-mailstat-exporter = callPackage ../servers/monitoring/prometheus/imap-mailstat-exporter.nix { };
12199   prometheus-influxdb-exporter = callPackage ../servers/monitoring/prometheus/influxdb-exporter.nix { };
12200   prometheus-ipmi-exporter = callPackage ../servers/monitoring/prometheus/ipmi-exporter.nix { };
12201   prometheus-jitsi-exporter = callPackage ../servers/monitoring/prometheus/jitsi-exporter.nix { };
12202   prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix {  };
12203   prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { };
12204   prometheus-junos-czerwonk-exporter = callPackage ../servers/monitoring/prometheus/junos-czerwonk-exporter.nix { };
12205   prometheus-kea-exporter = callPackage ../servers/monitoring/prometheus/kea-exporter.nix { };
12206   prometheus-keylight-exporter = callPackage ../servers/monitoring/prometheus/keylight-exporter.nix { };
12207   prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { };
12208   prometheus-lnd-exporter = callPackage ../servers/monitoring/prometheus/lnd-exporter.nix { };
12209   prometheus-mail-exporter = callPackage ../servers/monitoring/prometheus/mail-exporter.nix { };
12210   prometheus-mikrotik-exporter = callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix { };
12211   prometheus-modemmanager-exporter = callPackage ../servers/monitoring/prometheus/modemmanager-exporter.nix { };
12212   prometheus-mongodb-exporter = callPackage ../servers/monitoring/prometheus/mongodb-exporter.nix { };
12213   prometheus-mysqld-exporter = callPackage ../servers/monitoring/prometheus/mysqld-exporter.nix { };
12214   prometheus-nats-exporter = callPackage ../servers/monitoring/prometheus/nats-exporter.nix { };
12215   prometheus-nextcloud-exporter = callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix { };
12216   prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { };
12217   prometheus-nginxlog-exporter = callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix { };
12218   prometheus-nut-exporter = callPackage ../servers/monitoring/prometheus/nut-exporter.nix { };
12219   prometheus-pgbouncer-exporter = callPackage ../servers/monitoring/prometheus/pgbouncer-exporter.nix { };
12220   prometheus-php-fpm-exporter = callPackage ../servers/monitoring/prometheus/php-fpm-exporter.nix { };
12221   prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix {  };
12222   prometheus-ping-exporter = callPackage ../servers/monitoring/prometheus/ping-exporter.nix {  };
12223   prometheus-postfix-exporter = callPackage ../servers/monitoring/prometheus/postfix-exporter.nix { };
12224   prometheus-postgres-exporter = callPackage ../servers/monitoring/prometheus/postgres-exporter.nix { };
12225   prometheus-process-exporter = callPackage ../servers/monitoring/prometheus/process-exporter.nix { };
12226   prometheus-pve-exporter = callPackage ../servers/monitoring/prometheus/pve-exporter.nix { };
12227   prometheus-redis-exporter = callPackage ../servers/monitoring/prometheus/redis-exporter.nix { };
12228   prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { };
12229   prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { };
12230   prometheus-sabnzbd-exporter = callPackage ../servers/monitoring/prometheus/sabnzbd-exporter.nix { };
12231   prometheus-sachet = callPackage ../servers/monitoring/prometheus/sachet.nix { };
12232   prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { };
12233   prometheus-shelly-exporter = callPackage ../servers/monitoring/prometheus/shelly-exporter.nix { };
12234   prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { };
12235   prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
12236   prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { };
12237   prometheus-sql-exporter = callPackage ../servers/monitoring/prometheus/sql-exporter.nix { };
12238   prometheus-systemd-exporter = callPackage ../servers/monitoring/prometheus/systemd-exporter.nix { };
12239   prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { };
12240   prometheus-v2ray-exporter = callPackage ../servers/monitoring/prometheus/v2ray-exporter.nix { };
12241   prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { };
12242   prometheus-wireguard-exporter = callPackage ../servers/monitoring/prometheus/wireguard-exporter.nix {
12243     inherit (darwin.apple_sdk.frameworks) Security;
12244   };
12245   prometheus-zfs-exporter = callPackage ../servers/monitoring/prometheus/zfs-exporter.nix { };
12246   prometheus-xmpp-alerts = callPackage ../servers/monitoring/prometheus/xmpp-alerts.nix { };
12248   public-inbox = perlPackages.callPackage ../servers/mail/public-inbox { };
12250   spf-engine = python3.pkgs.callPackage ../servers/mail/spf-engine { };
12252   pypiserver = with python3Packages; toPythonApplication pypiserver;
12254   qremotecontrol-server = libsForQt5.callPackage ../servers/misc/qremotecontrol-server { };
12256   rabbitmq-server = callPackage ../servers/amqp/rabbitmq-server {
12257     inherit (darwin.apple_sdk.frameworks) AppKit Carbon Cocoa;
12258     erlang = erlang_26;
12259   };
12261   radicale2 = callPackage ../servers/radicale/2.x.nix { };
12262   radicale3 = radicale;
12264   qcal = callPackage ../tools/networking/qcal/default.nix { };
12266   rake = callPackage ../development/tools/build-managers/rake { };
12268   restic = callPackage ../tools/backup/restic { };
12270   restic-rest-server = callPackage ../tools/backup/restic/rest-server.nix { };
12272   rethinkdb = callPackage ../servers/nosql/rethinkdb {
12273     stdenv = clangStdenv;
12274     libtool = cctools;
12275     protobuf = protobuf_21;
12276   };
12278   rippled = callPackage ../servers/rippled {
12279     boost = boost177;
12280   };
12282   rippled-validator-keys-tool = callPackage ../servers/rippled/validator-keys-tool.nix { };
12284   rustic = callPackage ../by-name/ru/rustic/package.nix {
12285     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
12286   };
12288   samba4 = darwin.apple_sdk_11_0.callPackage ../servers/samba/4.x.nix { };
12290   samba = samba4;
12292   samba4Full = lowPrio (samba4.override {
12293     enableLDAP = true;
12294     enablePrinting = true;
12295     enableMDNS = true;
12296     enableDomainController = true;
12297     enableRegedit = true;
12298     enableCephFS = !stdenv.hostPlatform.isAarch64;
12299   });
12301   sambaFull = samba4Full;
12303   scalene = with python3Packages; toPythonApplication scalene;
12305   shairplay = callPackage ../servers/shairplay { avahi = avahi-compat; };
12307   shairport-sync-airplay2 = shairport-sync.override {
12308     enableAirplay2 = true;
12309   };
12311   showoff = callPackage ../servers/http/showoff { };
12313   ruby-zoom = callPackage ../tools/text/ruby-zoom { };
12315   inherit (callPackages ../servers/monitoring/sensu-go { })
12316     sensu-go-agent
12317     sensu-go-backend
12318     sensu-go-cli;
12320   shishi = callPackage ../servers/shishi {
12321       pam = if stdenv.hostPlatform.isLinux then pam else null;
12322       # see also openssl, which has/had this same trick
12323   };
12325   sickgear = callPackage ../servers/sickbeard/sickgear.nix { };
12327   snipe-it = callPackage ../by-name/sn/snipe-it/package.nix {
12328     php = php81;
12329   };
12331   spacecookie =
12332     haskell.lib.compose.justStaticExecutables haskellPackages.spacecookie;
12334   inherit (callPackages ../servers/http/tomcat { })
12335     tomcat9
12336     tomcat10
12337     tomcat11;
12339   tomcat = tomcat11;
12341   torque = callPackage ../servers/computing/torque {
12342     autoreconfHook = buildPackages.autoreconfHook269;
12343   };
12345   tt-rss = callPackage ../servers/tt-rss { };
12346   inherit (callPackages ../servers/web-apps/matomo {})
12347     matomo
12348     matomo_5
12349     matomo-beta;
12351   unpackerr = callPackage ../servers/unpackerr {
12352     inherit (darwin.apple_sdk.frameworks) Cocoa WebKit;
12353   };
12355   unstructured-api = callPackage ../servers/unstructured-api { };
12357   virtualenv = with python3Packages; toPythonApplication virtualenv;
12359   virtualenv-clone = with python3Packages; toPythonApplication virtualenv-clone;
12361   quartz-wm = callPackage ../servers/x11/quartz-wm {
12362     stdenv = clangStdenv;
12363     inherit (darwin.apple_sdk.frameworks) AppKit Foundation;
12364     inherit (darwin.apple_sdk.libs) Xplugin;
12365   };
12367   xorg = let
12368     # Use `lib.callPackageWith __splicedPackages` rather than plain `callPackage`
12369     # so as not to have the newly bound xorg items already in scope,  which would
12370     # have created a cycle.
12371     overrides = lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix {
12372       inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa;
12373       inherit (darwin.apple_sdk.libs) Xplugin;
12374       inherit (buildPackages.darwin) bootstrap_cmds;
12375       udev = if stdenv.hostPlatform.isLinux then udev else null;
12376       libdrm = if stdenv.hostPlatform.isLinux then libdrm else null;
12377     };
12379     generatedPackages = lib.callPackageWith __splicedPackages ../servers/x11/xorg/default.nix { };
12381     xorgPackages = makeScopeWithSplicing' {
12382       otherSplices = generateSplicesForMkScope "xorg";
12383       f = lib.extends overrides generatedPackages;
12384     };
12386   in recurseIntoAttrs xorgPackages;
12388   xwayland = callPackage ../servers/x11/xorg/xwayland.nix { };
12390   zabbixFor = version: rec {
12391     agent = (callPackages ../servers/monitoring/zabbix/agent.nix {}).${version};
12392     proxy-mysql = (callPackages ../servers/monitoring/zabbix/proxy.nix { mysqlSupport = true; }).${version};
12393     proxy-pgsql = (callPackages ../servers/monitoring/zabbix/proxy.nix { postgresqlSupport = true; }).${version};
12394     proxy-sqlite = (callPackages ../servers/monitoring/zabbix/proxy.nix { sqliteSupport = true; }).${version};
12395     server-mysql = (callPackages ../servers/monitoring/zabbix/server.nix { mysqlSupport = true; }).${version};
12396     server-pgsql = (callPackages ../servers/monitoring/zabbix/server.nix { postgresqlSupport = true; }).${version};
12397     web = (callPackages ../servers/monitoring/zabbix/web.nix {}).${version};
12398     agent2 = (callPackages ../servers/monitoring/zabbix/agent2.nix {}).${version};
12400     # backwards compatibility
12401     server = server-pgsql;
12402   };
12404   zabbix70 = recurseIntoAttrs (zabbixFor "v70");
12405   zabbix60 = recurseIntoAttrs (zabbixFor "v60");
12406   zabbix64 = recurseIntoAttrs (zabbixFor "v64");
12407   zabbix50 = recurseIntoAttrs (zabbixFor "v50");
12409   zabbix = zabbix60;
12411   ### SERVERS / GEOSPATIAL
12413   martin = callPackage ../servers/geospatial/martin {
12414     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
12415   };
12417   ### OS-SPECIFIC
12419   alfred = callPackage ../os-specific/linux/batman-adv/alfred.nix { };
12421   alsa-utils = callPackage ../by-name/al/alsa-utils/package.nix {
12422     fftw = fftwFloat;
12423   };
12425   arm-trusted-firmware = callPackage ../misc/arm-trusted-firmware { };
12426   inherit (arm-trusted-firmware)
12427     buildArmTrustedFirmware
12428     armTrustedFirmwareTools
12429     armTrustedFirmwareAllwinner
12430     armTrustedFirmwareAllwinnerH616
12431     armTrustedFirmwareAllwinnerH6
12432     armTrustedFirmwareQemu
12433     armTrustedFirmwareRK3328
12434     armTrustedFirmwareRK3399
12435     armTrustedFirmwareRK3588
12436     armTrustedFirmwareS905
12437     ;
12439   inherit (callPackages ../os-specific/linux/apparmor { })
12440     libapparmor apparmor-utils apparmor-bin-utils apparmor-parser apparmor-pam
12441     apparmor-profiles apparmor-kernel-patches apparmorRulesFromClosure;
12443   ath9k-htc-blobless-firmware = callPackage ../os-specific/linux/firmware/ath9k { };
12444   ath9k-htc-blobless-firmware-unstable =
12445     callPackage ../os-specific/linux/firmware/ath9k { enableUnstable = true; };
12447   b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { };
12449   b43Firmware_6_30_163_46 = callPackage ../os-specific/linux/firmware/b43-firmware/6.30.163.46.nix { };
12451   batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { };
12453   bluez5 = bluez;
12454   bluez5-experimental = bluez-experimental;
12456   bluez-experimental = bluez.override {
12457     enableExperimental = true;
12458   };
12460   busybox = callPackage ../os-specific/linux/busybox {
12461     # Fixes libunwind from being dynamically linked to a static binary.
12462     stdenv = if (stdenv.targetPlatform.useLLVM or false) then
12463       overrideCC stdenv buildPackages.llvmPackages.clangNoLibcxx
12464     else stdenv;
12465   };
12466   busybox-sandbox-shell = callPackage ../os-specific/linux/busybox/sandbox-shell.nix {
12467     # musl roadmap has RISC-V support projected for 1.1.20
12468     busybox = if !stdenv.hostPlatform.isRiscV && !stdenv.hostPlatform.isLoongArch64 && stdenv.hostPlatform.libc != "bionic"
12469               then pkgsStatic.busybox
12470               else busybox;
12471   };
12473   cm-rgb = python3Packages.callPackage ../tools/system/cm-rgb { };
12475   conky = callPackage ../os-specific/linux/conky ({
12476     lua = lua5_4;
12477     inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl;
12478   } // config.conky or {});
12480   cpupower-gui = python3Packages.callPackage ../os-specific/linux/cpupower-gui {
12481     inherit (pkgs) meson;
12482   };
12484   cryptomator = callPackage ../tools/security/cryptomator {
12485     jdk = jdk23.override { enableJavaFX = true; };
12486   };
12488   # Darwin package set
12489   #
12490   # Even though this is a set of packages not single package, use `callPackage`
12491   # not `callPackages` so the per-package callPackages don't have their
12492   # `.override` clobbered. C.F. `llvmPackages` which does the same.
12493   darwin = recurseIntoAttrs (callPackage ./darwin-packages.nix { });
12495   defaultbrowser = callPackage ../os-specific/darwin/defaultbrowser {
12496     inherit (darwin.apple_sdk.frameworks) Foundation;
12497   };
12499   displaylink = callPackage ../os-specific/linux/displaylink {
12500     inherit (linuxPackages) evdi;
12501   };
12503   dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; };
12505   drbd = callPackage ../os-specific/linux/drbd/utils.nix { };
12507   # unstable until the first 1.x release
12508   fwts = callPackage ../os-specific/linux/fwts { };
12510   libuuid = if stdenv.hostPlatform.isLinux
12511     then util-linuxMinimal
12512     else null;
12514   elegant-sddm = libsForQt5.callPackage ../data/themes/elegant-sddm { };
12516   error-inject = callPackages ../os-specific/linux/error-inject { };
12518   ffado = callPackage ../os-specific/linux/ffado { };
12519   ffado-mixer = callPackage ../os-specific/linux/ffado { withMixer = true; };
12520   libffado = ffado;
12522   freefall = callPackage ../os-specific/linux/freefall {
12523     inherit (linuxPackages) kernel;
12524   };
12526   fusePackages = dontRecurseIntoAttrs (callPackage ../os-specific/linux/fuse {
12527     util-linux = util-linuxMinimal;
12528   });
12529   fuse = fuse2;
12530   fuse2 = lowPrio (if stdenv.hostPlatform.isDarwin then macfuse-stubs else fusePackages.fuse_2);
12531   fuse3 = fusePackages.fuse_3;
12533   gpm = callPackage ../servers/gpm {
12534     withNcurses = false; # Keep curses disabled for lack of value
12536     # latest 6.8 mysteriously fails to parse '@headings single':
12537     #   https://lists.gnu.org/archive/html/bug-texinfo/2021-09/msg00011.html
12538     texinfo = buildPackages.texinfo6_7;
12539   };
12541   gpm-ncurses = gpm.override { withNcurses = true; };
12543   htop = callPackage ../tools/system/htop {
12544     inherit (darwin) IOKit;
12545   };
12547   htop-vim = callPackage ../tools/system/htop/htop-vim.nix { };
12549   humility = callPackage ../development/tools/rust/humility {
12550     inherit (darwin.apple_sdk.frameworks) AppKit;
12551   };
12553   btop = darwin.apple_sdk_11_0.callPackage ../tools/system/btop { };
12554   btop-rocm = btop.override { rocmSupport = true; };
12556   i7z = qt5.callPackage ../os-specific/linux/i7z { };
12558   ipu6-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {};
12560   ipu6ep-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
12561     ipuVersion = "ipu6ep";
12562   };
12564   ipu6epmtl-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
12565     ipuVersion = "ipu6epmtl";
12566   };
12568   iputils = hiPrio (callPackage ../os-specific/linux/iputils { });
12569   # hiPrio for collisions with inetutils (ping)
12571   iptables = callPackage ../os-specific/linux/iptables { };
12572   iptables-legacy = callPackage ../os-specific/linux/iptables { nftablesCompat = false; };
12573   iptables-nftables-compat = iptables;
12575   jool-cli = callPackage ../os-specific/linux/jool/cli.nix { };
12577   libkrun-sev = libkrun.override { sevVariant = true; };
12579   linthesia = callPackage ../games/linthesia/default.nix { };
12581   osx-cpu-temp = callPackage ../os-specific/darwin/osx-cpu-temp {
12582     inherit (darwin.apple_sdk.frameworks) IOKit;
12583   };
12585   macfuse-stubs = callPackage ../os-specific/darwin/macfuse {
12586     inherit (darwin.apple_sdk.frameworks) DiskArbitration;
12587   };
12589   projecteur = libsForQt5.callPackage ../os-specific/linux/projecteur { };
12591   lkl = callPackage ../applications/virtualization/lkl { };
12592   lklWithFirewall = callPackage ../applications/virtualization/lkl { firewallSupport = true; };
12594   inherit (callPackages ../os-specific/linux/kernel-headers { inherit (pkgsBuildBuild) elf-header; })
12595     linuxHeaders makeLinuxHeaders;
12597   klibc = callPackage ../os-specific/linux/klibc { };
12599   klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { });
12601   linuxKernel = recurseIntoAttrs (callPackage ./linux-kernels.nix { });
12603   inherit (linuxKernel) buildLinux linuxConfig kernelPatches;
12605   linuxPackagesFor = linuxKernel.packagesFor;
12607   hardenedLinuxPackagesFor = linuxKernel.hardenedPackagesFor;
12609   linuxManualConfig = linuxKernel.manualConfig;
12611   linuxPackages_custom = linuxKernel.customPackage;
12613   # This serves as a test for linuxPackages_custom
12614   linuxPackages_custom_tinyconfig_kernel = let
12615     base = linuxPackages.kernel;
12616     tinyLinuxPackages = linuxKernel.customPackage {
12617       inherit (base) version modDirVersion src;
12618       allowImportFromDerivation = false;
12619       configfile = linuxConfig {
12620         makeTarget = "tinyconfig";
12621         src = base.src;
12622       };
12623     };
12624     in tinyLinuxPackages.kernel;
12626   # The current default kernel / kernel modules.
12627   linuxPackages = linuxKernel.packageAliases.linux_default;
12628   linux = linuxPackages.kernel;
12630   linuxPackages_latest = linuxKernel.packageAliases.linux_latest;
12631   linux_latest = linuxPackages_latest.kernel;
12633   # Testing (rc) kernel
12634   linuxPackages_testing = linuxKernel.packages.linux_testing;
12635   linux_testing = linuxKernel.kernels.linux_testing;
12637   # Realtime kernel
12638   linuxPackages-rt = linuxKernel.packageAliases.linux_rt_default;
12639   linuxPackages-rt_latest = linuxKernel.packageAliases.linux_rt_latest;
12640   linux-rt = linuxPackages-rt.kernel;
12641   linux-rt_latest = linuxPackages-rt_latest.kernel;
12643   # hardened kernels
12644   linuxPackages_hardened = linuxKernel.packages.linux_hardened;
12645   linux_hardened = linuxPackages_hardened.kernel;
12646   linuxPackages_5_4_hardened = linuxKernel.packages.linux_5_4_hardened;
12647   linux_5_4_hardened = linuxKernel.kernels.linux_5_4_hardened;
12648   linuxPackages_5_10_hardened = linuxKernel.packages.linux_5_10_hardened;
12649   linux_5_10_hardened = linuxKernel.kernels.linux_5_10_hardened;
12650   linuxPackages_5_15_hardened = linuxKernel.packages.linux_5_15_hardened;
12651   linux_5_15_hardened = linuxKernel.kernels.linux_5_15_hardened;
12652   linuxPackages_6_1_hardened = linuxKernel.packages.linux_6_1_hardened;
12653   linux_6_1_hardened = linuxKernel.kernels.linux_6_1_hardened;
12654   linuxPackages_6_6_hardened = linuxKernel.packages.linux_6_6_hardened;
12655   linux_6_6_hardened = linuxKernel.kernels.linux_6_6_hardened;
12656   linuxPackages_6_11_hardened = linuxKernel.packages.linux_6_11_hardened;
12657   linux_6_11_hardened = linuxKernel.kernels.linux_6_11_hardened;
12659   # GNU Linux-libre kernels
12660   linuxPackages-libre = linuxKernel.packages.linux_libre;
12661   linux-libre = linuxPackages-libre.kernel;
12662   linuxPackages_latest-libre = linuxKernel.packages.linux_latest_libre;
12663   linux_latest-libre = linuxPackages_latest-libre.kernel;
12665   # zen-kernel
12666   linuxPackages_zen = linuxKernel.packages.linux_zen;
12667   linux_zen = linuxPackages_zen.kernel;
12668   linuxPackages_lqx = linuxKernel.packages.linux_lqx;
12669   linux_lqx = linuxPackages_lqx.kernel;
12671   # XanMod kernel
12672   linuxPackages_xanmod = linuxKernel.packages.linux_xanmod;
12673   linux_xanmod = linuxKernel.kernels.linux_xanmod;
12674   linuxPackages_xanmod_stable = linuxKernel.packages.linux_xanmod_stable;
12675   linux_xanmod_stable = linuxKernel.kernels.linux_xanmod_stable;
12676   linuxPackages_xanmod_latest = linuxKernel.packages.linux_xanmod_latest;
12677   linux_xanmod_latest = linuxKernel.kernels.linux_xanmod_latest;
12679   linux-doc = callPackage ../os-specific/linux/kernel/htmldocs.nix { };
12681   cryptodev = linuxPackages.cryptodev;
12683   libsemanage = callPackage ../os-specific/linux/libsemanage {
12684     python = python3;
12685   };
12687   librasterlite2 = callPackage ../development/libraries/librasterlite2 {
12688     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
12689   };
12691   librealsense = darwin.apple_sdk_11_0.callPackage ../development/libraries/librealsense { };
12693   librealsenseWithCuda = callPackage ../development/libraries/librealsense {
12694     cudaSupport = true;
12695     # librealsenseWithCuda doesn't build on gcc11. CUDA 11.3 is the last version
12696     # to use pre-gcc11, in particular gcc9.
12697     stdenv = gcc9Stdenv;
12698   };
12700   librealsenseWithoutCuda = callPackage ../development/libraries/librealsense {
12701     cudaSupport = false;
12702   };
12704   librealsense-gui = callPackage ../development/libraries/librealsense {
12705     enableGUI = true;
12706   };
12708   kmod = callPackage ../os-specific/linux/kmod { };
12710   lvm2 = callPackage ../os-specific/linux/lvm2/2_03.nix {
12711     # break the cyclic dependency:
12712     # util-linux (non-minimal) depends (optionally, but on by default) on systemd,
12713     # systemd (optionally, but on by default) on cryptsetup and cryptsetup depends on lvm2
12714     util-linux = util-linuxMinimal;
12715   };
12717   lvm2_dmeventd = lvm2.override {
12718     enableDmeventd = true;
12719     enableCmdlib = true;
12720   };
12721   lvm2_vdo = lvm2_dmeventd.override {
12722     enableVDO = true;
12723   };
12725   mdadm = mdadm4;
12726   minimal-bootstrap = recurseIntoAttrs (import ../os-specific/linux/minimal-bootstrap {
12727     inherit (stdenv) buildPlatform hostPlatform;
12728     inherit lib config;
12729     fetchurl = import ../build-support/fetchurl/boot.nix {
12730       inherit (stdenv.buildPlatform) system;
12731     };
12732     checkMeta = callPackage ../stdenv/generic/check-meta.nix { inherit (stdenv) hostPlatform; };
12733   });
12734   minimal-bootstrap-sources = callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix {
12735     inherit (stdenv) hostPlatform;
12736   };
12737   make-minimal-bootstrap-sources = callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/make-bootstrap-sources.nix {
12738     inherit (stdenv) hostPlatform;
12739   };
12741   aggregateModules = modules:
12742     callPackage ../os-specific/linux/kmod/aggregator.nix {
12743       inherit (buildPackages) kmod;
12744       inherit modules;
12745     };
12747   nushell = darwin.apple_sdk_11_0.callPackage ../shells/nushell {
12748     inherit (darwin.apple_sdk_11_0) Libsystem;
12749     inherit (darwin.apple_sdk_11_0.frameworks) AppKit Security;
12750   };
12752   nushellPlugins = recurseIntoAttrs (callPackage ../shells/nushell/plugins {
12753     inherit (darwin.apple_sdk.frameworks) Security;
12754     inherit (darwin.apple_sdk_11_0.frameworks) IOKit CoreFoundation Foundation;
12755   });
12757   nettools = if stdenv.hostPlatform.isLinux
12758     then callPackage ../os-specific/linux/net-tools { }
12759     else unixtools.nettools;
12761   nftables = callPackage ../os-specific/linux/nftables { };
12763   noah = callPackage ../os-specific/darwin/noah {
12764     inherit (darwin.apple_sdk.frameworks) Hypervisor;
12765   };
12767   open-vm-tools-headless = open-vm-tools.override { withX = false; };
12769   gdlv = callPackage ../by-name/gd/gdlv/package.nix {
12770     inherit (darwin.apple_sdk_11_0.frameworks) AppKit CoreGraphics Foundation Metal;
12771   };
12773   gotop = callPackage ../tools/system/gotop {
12774     inherit (darwin.apple_sdk.frameworks) IOKit;
12775   };
12777   odin = callPackage ../by-name/od/odin/package.nix {
12778     inherit (pkgs.darwin.apple_sdk_11_0) MacOSX-SDK;
12779     inherit (pkgs.darwin.apple_sdk_11_0.frameworks) Security;
12780     llvmPackages = llvmPackages_18;
12781   };
12783   okapi = callPackage ../development/libraries/okapi {
12784     inherit (darwin.apple_sdk.frameworks) Security;
12785   };
12787   pam = if stdenv.hostPlatform.isLinux then linux-pam else openpam;
12789   # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader )
12791   procps = if stdenv.hostPlatform.isLinux
12792     then callPackage ../os-specific/linux/procps-ng { }
12793     else unixtools.procps;
12795   qemu_kvm = lowPrio (qemu.override { hostCpuOnly = true; });
12796   qemu_full = lowPrio (qemu.override {
12797     smbdSupport = lib.meta.availableOn stdenv.hostPlatform samba;
12798     cephSupport = lib.meta.availableOn stdenv.hostPlatform ceph;
12799     glusterfsSupport = lib.meta.availableOn stdenv.hostPlatform glusterfs && lib.meta.availableOn stdenv.hostPlatform libuuid;
12800   });
12802   qemu_test = lowPrio (qemu.override { hostCpuOnly = true; nixosTestRunner = true; });
12804   linux-firmware = callPackage ../os-specific/linux/firmware/linux-firmware { };
12806   raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi { };
12807   raspberrypi-armstubs = callPackage ../os-specific/linux/firmware/raspberrypi/armstubs.nix { };
12809   rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { };
12811   sass = callPackage ../development/tools/sass { };
12813   sddm-astronaut = qt6Packages.callPackage ../data/themes/sddm-astronaut { };
12815   sddm-chili-theme = libsForQt5.callPackage ../data/themes/chili-sddm { };
12817   sddm-sugar-dark = libsForQt5.callPackage ../data/themes/sddm-sugar-dark { };
12819   sdrangel = qt6Packages.callPackage ../applications/radio/sdrangel {
12820     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "12.3" else stdenv;
12821   };
12823   sgx-sdk = callPackage ../os-specific/linux/sgx/sdk { };
12825   sgx-psw = callPackage ../os-specific/linux/sgx/psw {
12826     protobuf = protobuf_21;
12827   };
12829   sinit = callPackage ../os-specific/linux/sinit {
12830     rcinit = "/etc/rc.d/rc.init";
12831     rcshutdown = "/etc/rc.d/rc.shutdown";
12832   };
12834   sysdig = callPackage ../os-specific/linux/sysdig {
12835     kernel = null;
12836   }; # sysdig is a client, for a driver look at linuxPackagesFor
12838   sysprof = callPackage ../development/tools/profiling/sysprof { };
12840   libsysprof-capture = callPackage ../development/tools/profiling/sysprof/capture.nix { };
12842   systemd = callPackage ../os-specific/linux/systemd {
12843     # break some cyclic dependencies
12844     util-linux = util-linuxMinimal;
12845     # provide a super minimal gnupg used for systemd-machined
12846     gnupg = gnupg.override {
12847       enableMinimal = true;
12848       guiSupport = false;
12849     };
12850   };
12851   systemdMinimal = systemd.override {
12852     pname = "systemd-minimal";
12853     withAcl = false;
12854     withAnalyze = false;
12855     withApparmor = false;
12856     withAudit = false;
12857     withCompression = false;
12858     withCoredump = false;
12859     withCryptsetup = false;
12860     withRepart = false;
12861     withDocumentation = false;
12862     withEfi = false;
12863     withFido2 = false;
12864     withHostnamed = false;
12865     withHomed = false;
12866     withHwdb = false;
12867     withImportd = false;
12868     withIptables = false;
12869     withLibBPF = false;
12870     withLibidn2 = false;
12871     withLocaled = false;
12872     withLogind = false;
12873     withMachined = false;
12874     withNetworkd = false;
12875     withNss = false;
12876     withOomd = false;
12877     withPCRE2 = false;
12878     withPam = false;
12879     withPolkit = false;
12880     withPortabled = false;
12881     withRemote = false;
12882     withResolved = false;
12883     withShellCompletions = false;
12884     withSysupdate = false;
12885     withSysusers = false;
12886     withTimedated = false;
12887     withTimesyncd = false;
12888     withTpm2Tss = false;
12889     withUserDb = false;
12890     withUkify = false;
12891     withBootloader = false;
12892     withPasswordQuality = false;
12893     withVmspawn = false;
12894     withQrencode = false;
12895     withLibarchive = false;
12896   };
12897   systemdLibs = systemdMinimal.override {
12898     pname = "systemd-minimal-libs";
12899     buildLibsOnly = true;
12900   };
12901   # We do not want to include ukify in the normal systemd attribute as it
12902   # relies on Python at runtime.
12903   systemdUkify = systemd.override {
12904     withUkify = true;
12905   };
12907   udev =
12908     if (with stdenv.hostPlatform; isLinux && isStatic) then libudev-zero
12909     else systemdLibs;
12911   sysvtools = sysvinit.override {
12912     withoutInitTools = true;
12913   };
12915   # FIXME: `tcp-wrapper' is actually not OS-specific.
12916   trickster = callPackage ../servers/trickster/trickster.nix { };
12918   trinsic-cli = callPackage ../tools/admin/trinsic-cli {
12919     inherit (darwin.apple_sdk.frameworks) Security;
12920   };
12922   # Upstream U-Boots:
12923   inherit (callPackage ../misc/uboot {})
12924     buildUBoot
12925     ubootTools
12926     ubootA20OlinuxinoLime
12927     ubootA20OlinuxinoLime2EMMC
12928     ubootBananaPi
12929     ubootBananaPim3
12930     ubootBananaPim64
12931     ubootAmx335xEVM
12932     ubootClearfog
12933     ubootCM3588NAS
12934     ubootCubieboard2
12935     ubootGuruplug
12936     ubootJetsonTK1
12937     ubootLibreTechCC
12938     ubootNanoPCT4
12939     ubootNanoPCT6
12940     ubootNovena
12941     ubootOdroidC2
12942     ubootOdroidXU3
12943     ubootOlimexA64Olinuxino
12944     ubootOlimexA64Teres1
12945     ubootOrangePi3
12946     ubootOrangePi3B
12947     ubootOrangePi5
12948     ubootOrangePi5Plus
12949     ubootOrangePiPc
12950     ubootOrangePiZeroPlus2H5
12951     ubootOrangePiZero
12952     ubootOrangePiZero2
12953     ubootOrangePiZero3
12954     ubootPcduino3Nano
12955     ubootPine64
12956     ubootPine64LTS
12957     ubootPinebook
12958     ubootPinebookPro
12959     ubootQemuAarch64
12960     ubootQemuArm
12961     ubootQemuRiscv64Smode
12962     ubootQemuX86
12963     ubootRaspberryPi
12964     ubootRaspberryPi2
12965     ubootRaspberryPi3_32bit
12966     ubootRaspberryPi3_64bit
12967     ubootRaspberryPi4_32bit
12968     ubootRaspberryPi4_64bit
12969     ubootRaspberryPiZero
12970     ubootRock4CPlus
12971     ubootRock5ModelB
12972     ubootRock64
12973     ubootRock64v2
12974     ubootRockPi4
12975     ubootRockPro64
12976     ubootROCPCRK3399
12977     ubootSheevaplug
12978     ubootSopine
12979     ubootTuringRK1
12980     ubootUtilite
12981     ubootWandboard
12982     ;
12984   # Upstream Barebox:
12985   inherit (callPackage ../misc/barebox {})
12986     buildBarebox
12987     bareboxTools;
12989   eudev = callPackage ../by-name/eu/eudev/package.nix {
12990     util-linux = util-linuxMinimal;
12991   };
12993   udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { };
12994   udisks = udisks2;
12996   usbrelay = callPackage ../os-specific/linux/usbrelay { };
12997   usbrelayd = callPackage ../os-specific/linux/usbrelay/daemon.nix { };
12999   util-linuxMinimal = util-linux.override {
13000     nlsSupport = false;
13001     ncursesSupport = false;
13002     systemdSupport = false;
13003     translateManpages = false;
13004   };
13006   v4l-utils = qt5.callPackage ../os-specific/linux/v4l-utils { };
13008   windows = callPackages ../os-specific/windows {};
13010   wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { };
13012   wpa_supplicant_gui = libsForQt5.callPackage ../os-specific/linux/wpa_supplicant/gui.nix { };
13014   inherit
13015     ({
13016       zfs_2_1 = callPackage ../os-specific/linux/zfs/2_1.nix {
13017         configFile = "user";
13018       };
13019       zfs_2_2 = callPackage ../os-specific/linux/zfs/2_2.nix {
13020         configFile = "user";
13021       };
13022       zfs_unstable = callPackage ../os-specific/linux/zfs/unstable.nix {
13023         configFile = "user";
13024       };
13025     })
13026     zfs_2_1
13027     zfs_2_2
13028     zfs_unstable;
13029   zfs = zfs_2_2;
13031   ### DATA
13033   adwaita-qt = libsForQt5.callPackage ../data/themes/adwaita-qt { };
13035   adwaita-qt6 = qt6Packages.callPackage ../data/themes/adwaita-qt {
13036     useQt6 = true;
13037   };
13039   androguard = with python3.pkgs; toPythonApplication androguard;
13041   andromeda-gtk-theme = libsForQt5.callPackage ../data/themes/andromeda-gtk-theme { };
13043   ankacoder = callPackage ../data/fonts/ankacoder { };
13044   ankacoder-condensed = callPackage ../data/fonts/ankacoder/condensed.nix { };
13046   ant-theme = callPackage ../data/themes/ant-theme/ant.nix { };
13048   ant-bloody-theme = callPackage ../data/themes/ant-theme/ant-bloody.nix { };
13050   ant-nebula-theme = callPackage ../data/themes/ant-theme/ant-nebula.nix { };
13052   bibata-cursors-translucent = callPackage ../data/icons/bibata-cursors/translucent.nix { };
13054   breath-theme = libsForQt5.callPackage ../data/themes/breath-theme { };
13056   cacert = callPackage ../data/misc/cacert { };
13058   cnspec = callPackage ../tools/security/cnspec {
13059     buildGoModule = buildGo123Module;
13060   };
13062   colloid-kde = libsForQt5.callPackage ../data/themes/colloid-kde { };
13064   dejavu_fonts = lowPrio (callPackage ../data/fonts/dejavu-fonts {});
13066   # solve collision for nix-env before https://github.com/NixOS/nix/pull/815
13067   dejavu_fontsEnv = buildEnv {
13068     name = dejavu_fonts.name;
13069     paths = [ dejavu_fonts.out ];
13070   };
13072   docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { };
13074   docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { };
13076   docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { };
13078   docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { };
13080   docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { };
13082   docbook_xml_dtd_44 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix { };
13084   docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { };
13086   inherit (callPackages ../data/sgml+xml/stylesheets/xslt/docbook-xsl { })
13087     docbook-xsl-nons
13088     docbook-xsl-ns;
13090   # TODO: move this to aliases
13091   docbook_xsl = docbook-xsl-nons;
13092   docbook_xsl_ns = docbook-xsl-ns;
13094   documentation-highlighter = callPackage ../misc/documentation-highlighter { };
13096   epapirus-icon-theme = papirus-icon-theme.override { withElementary = true; };
13098   moeli = eduli;
13100   emojione = callPackage ../data/fonts/emojione {
13101     inherit (nodePackages) svgo;
13102   };
13104   fira-code = callPackage ../data/fonts/fira-code { };
13105   fira-code-symbols = callPackage ../data/fonts/fira-code/symbols.nix { };
13106   fira-code-nerdfont = nerdfonts.override {
13107     fonts = [ "FiraCode" ];
13108   };
13110   flat-remix-icon-theme = callPackage ../data/icons/flat-remix-icon-theme {
13111     inherit (plasma5Packages) breeze-icons;
13112   };
13113   font-awesome_4 = (callPackage ../data/fonts/font-awesome { }).v4;
13114   font-awesome_5 = (callPackage ../data/fonts/font-awesome { }).v5;
13115   font-awesome_6 = (callPackage ../data/fonts/font-awesome { }).v6;
13116   font-awesome = font-awesome_6;
13118   graphite-kde-theme = libsForQt5.callPackage ../data/themes/graphite-kde-theme { };
13120   palenight-theme = callPackage ../data/themes/gtk-theme-framework { theme = "palenight"; };
13122   amarena-theme = callPackage ../data/themes/gtk-theme-framework { theme = "amarena"; };
13124   gruvterial-theme = callPackage ../data/themes/gtk-theme-framework { theme = "gruvterial"; };
13126   oceanic-theme = callPackage ../data/themes/gtk-theme-framework { theme = "oceanic"; };
13128   spacx-gtk-theme = callPackage ../data/themes/gtk-theme-framework { theme = "spacx"; };
13130   inherit
13131     ({
13132       gruppled-black-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_black"; };
13133       gruppled-black-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
13134         theme = "gruppled_black_lite";
13135       };
13136       gruppled-white-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_white"; };
13137       gruppled-white-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
13138         theme = "gruppled_white_lite";
13139       };
13140     })
13141     gruppled-black-cursors
13142     gruppled-black-lite-cursors
13143     gruppled-white-cursors
13144     gruppled-white-lite-cursors
13145     ;
13147   gruvbox-dark-icons-gtk = callPackage ../data/icons/gruvbox-dark-icons-gtk {
13148     inherit (plasma5Packages) breeze-icons;
13149   };
13151   hackgen-font = callPackage ../data/fonts/hackgen { };
13153   hackgen-nf-font = callPackage ../data/fonts/hackgen/nerdfont.nix { };
13155   inconsolata = callPackage ../data/fonts/inconsolata { };
13157   inconsolata-lgc = callPackage ../data/fonts/inconsolata/lgc.nix { };
13159   inconsolata-nerdfont = nerdfonts.override {
13160     fonts = [ "Inconsolata" ];
13161   };
13163   input-fonts = callPackage ../data/fonts/input-fonts { };
13165   iosevka = callPackage ../data/fonts/iosevka { };
13166   iosevka-bin = callPackage ../data/fonts/iosevka/bin.nix { };
13167   iosevka-comfy = recurseIntoAttrs (callPackages ../data/fonts/iosevka/comfy.nix {});
13169   joypixels = callPackage ../data/fonts/joypixels { };
13171   kde-rounded-corners = kdePackages.callPackage ../data/themes/kwin-decorations/kde-rounded-corners { };
13173   kora-icon-theme = callPackage ../data/icons/kora-icon-theme {
13174     inherit (libsForQt5.kdeFrameworks) breeze-icons;
13175   };
13177   la-capitaine-icon-theme = callPackage ../data/icons/la-capitaine-icon-theme {
13178     inherit (plasma5Packages) breeze-icons;
13179     inherit (pantheon) elementary-icon-theme;
13180   };
13182   layan-kde = libsForQt5.callPackage ../data/themes/layan-kde { };
13184   inherit (callPackages ../data/fonts/liberation-fonts { })
13185     liberation_ttf_v1
13186     liberation_ttf_v2
13187     ;
13188   liberation_ttf = liberation_ttf_v2;
13190   lightly-qt = libsForQt5.callPackage ../data/themes/lightly-qt { };
13192   lightly-boehs = libsForQt5.callPackage ../data/themes/lightly-boehs { };
13194   # ltunifi and solaar both provide udev rules but solaar's rules are more
13195   # up-to-date so we simply use that instead of having to maintain our own rules
13196   logitech-udev-rules = solaar.udev;
13198   # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
13199   # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia
13200   # lohit-fonts.tamil-classical lohit-fonts.tamil lohit-fonts.telugu
13201   # lohit-fonts.kashmiri lohit-fonts.konkani lohit-fonts.maithili lohit-fonts.sindhi
13202   lohit-fonts = recurseIntoAttrs ( callPackages ../data/fonts/lohit-fonts { } );
13204   maia-icon-theme = libsForQt5.callPackage ../data/icons/maia-icon-theme { };
13206   marwaita-icons = callPackage ../by-name/ma/marwaita-icons/package.nix {
13207     inherit (kdePackages) breeze-icons;
13208   };
13210   material-kwin-decoration = libsForQt5.callPackage ../data/themes/material-kwin-decoration { };
13212   mplus-outline-fonts = recurseIntoAttrs (callPackage ../data/fonts/mplus-outline-fonts { });
13214   nordic = libsForQt5.callPackage ../data/themes/nordic { };
13216   noto-fonts-lgc-plus = callPackage ../by-name/no/noto-fonts/package.nix {
13217     suffix = "-lgc-plus";
13218     variants = [
13219       "Noto Sans"
13220       "Noto Serif"
13221       "Noto Sans Mono"
13222       "Noto Music"
13223       "Noto Sans Symbols"
13224       "Noto Sans Symbols 2"
13225       "Noto Sans Math"
13226     ];
13227     longDescription = ''
13228       This package provides the Noto Fonts, but only for latin, greek
13229       and cyrillic scripts, as well as some extra fonts.
13230     '';
13231   };
13233   nullmailer = callPackage ../servers/mail/nullmailer {
13234     stdenv = gccStdenv;
13235   };
13237   numix-icon-theme = callPackage ../data/icons/numix-icon-theme {
13238     inherit (plasma5Packages) breeze-icons;
13239   };
13241   openmoji-color = callPackage ../data/fonts/openmoji { fontFormats = ["glyf_colr_0"]; };
13243   openmoji-black = callPackage ../data/fonts/openmoji { fontFormats = ["glyf"]; };
13245   papirus-icon-theme = callPackage ../data/icons/papirus-icon-theme {
13246     inherit (pantheon) elementary-icon-theme;
13247     inherit (plasma5Packages) breeze-icons;
13248   };
13250   papirus-maia-icon-theme = callPackage ../data/icons/papirus-maia-icon-theme {
13251     inherit (plasma5Packages) breeze-icons;
13252   };
13254   papis = with python3Packages; toPythonApplication papis;
13256   paratype-pt-mono = callPackage ../data/fonts/paratype-pt/mono.nix { };
13257   paratype-pt-sans = callPackage ../data/fonts/paratype-pt/sans.nix { };
13258   paratype-pt-serif = callPackage ../data/fonts/paratype-pt/serif.nix { };
13260   plata-theme = callPackage ../data/themes/plata {
13261     inherit (mate) marco;
13262   };
13264   polychromatic = qt6Packages.callPackage ../applications/misc/polychromatic { };
13266   powerline-rs = callPackage ../tools/misc/powerline-rs {
13267     inherit (darwin.apple_sdk.frameworks) Security;
13268   };
13270   profont = callPackage ../data/fonts/profont { };
13272   qogir-kde = libsForQt5.callPackage ../data/themes/qogir-kde { };
13274   ricochet-refresh = callPackage ../by-name/ri/ricochet-refresh/package.nix {
13275     protobuf = protobuf_21; # https://github.com/blueprint-freespeech/ricochet-refresh/issues/178
13276   };
13278   roapi-http = callPackage ../servers/roapi/http.nix { };
13280   shaderc = callPackage ../development/compilers/shaderc {
13281     inherit (darwin) autoSignDarwinBinariesHook;
13282   };
13284   sierra-breeze-enhanced = libsForQt5.callPackage ../data/themes/kwin-decorations/sierra-breeze-enhanced { useQt5 = true; };
13286   scheherazade = callPackage ../data/fonts/scheherazade { version = "2.100"; };
13288   scheherazade-new = callPackage ../data/fonts/scheherazade { };
13290   starship = callPackage ../tools/misc/starship {
13291     inherit (darwin.apple_sdk.frameworks) Security Foundation Cocoa;
13292   };
13294   inherit (callPackages ../data/fonts/gdouros { })
13295     aegan aegyptus akkadian assyrian eemusic maya symbola textfonts unidings;
13297   inherit (callPackages ../data/fonts/pretendard { })
13298     pretendard
13299     pretendard-gov
13300     pretendard-jp
13301     pretendard-std;
13303   sourceHanPackages = dontRecurseIntoAttrs (callPackage ../data/fonts/source-han { });
13304   source-han-sans = sourceHanPackages.sans;
13305   source-han-serif = sourceHanPackages.serif;
13306   source-han-mono = sourceHanPackages.mono;
13307   source-han-sans-vf-otf = sourceHanPackages.sans-vf-otf;
13308   source-han-sans-vf-ttf = sourceHanPackages.sans-vf-ttf;
13309   source-han-serif-vf-otf = sourceHanPackages.serif-vf-otf;
13310   source-han-serif-vf-ttf = sourceHanPackages.serif-vf-ttf;
13312   inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom;
13314   tango-icon-theme = callPackage ../data/icons/tango-icon-theme {
13315     gtk = res.gtk2;
13316   };
13318   themes = name: callPackage (../data/misc/themes + ("/" + name + ".nix")) { };
13320   tela-circle-icon-theme = callPackage ../data/icons/tela-circle-icon-theme {
13321     inherit (libsForQt5) breeze-icons;
13322   };
13324   terminus-nerdfont = nerdfonts.override {
13325     fonts = [ "Terminus" ];
13326   };
13328   tex-gyre = callPackages ../data/fonts/tex-gyre { };
13330   tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { };
13332   utterly-nord-plasma = kdePackages.callPackage ../data/themes/utterly-nord-plasma {
13333     # renamed in KF6
13334     plasma-framework = kdePackages.libplasma;
13335   };
13337   whitesur-kde = kdePackages.callPackage ../data/themes/whitesur-kde { };
13339   xkeyboard_config = xorg.xkeyboardconfig;
13341   xlsx2csv = with python3Packages; toPythonApplication xlsx2csv;
13343   zafiro-icons = callPackage ../data/icons/zafiro-icons {
13344     inherit (plasma5Packages) breeze-icons;
13345   };
13347   zeal-qt5 = libsForQt5.callPackage ../data/documentation/zeal { };
13348   zeal = zeal-qt5;
13349   zeal-qt6 = qt6Packages.callPackage ../data/documentation/zeal {
13350     qtx11extras = null; # Because it does not exist in qt6
13351   };
13353   ### APPLICATIONS / GIS
13355   grass = callPackage ../applications/gis/grass {
13356     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
13357   };
13359   qgis-ltr = callPackage ../applications/gis/qgis/ltr.nix { };
13361   qgis = callPackage ../applications/gis/qgis { };
13363   qmapshack = libsForQt5.callPackage ../applications/gis/qmapshack { };
13365   spatialite_gui = callPackage ../applications/gis/spatialite-gui {
13366     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa IOKit;
13367     wxGTK = wxGTK32;
13368   };
13370   whitebox-tools = callPackage ../applications/gis/whitebox-tools {
13371     inherit (darwin.apple_sdk.frameworks) Security;
13372   };
13374   zombietrackergps = libsForQt5.callPackage ../applications/gis/zombietrackergps { };
13376   ### APPLICATIONS
13378   _2bwm = callPackage ../applications/window-managers/2bwm {
13379     patches = config."2bwm".patches or [];
13380   };
13382   abcde = callPackage ../applications/audio/abcde {
13383     inherit (python3Packages) eyed3;
13384   };
13386   acd-cli = callPackage ../applications/networking/sync/acd_cli {
13387     inherit (python3Packages)
13388       buildPythonApplication appdirs colorama python-dateutil
13389       requests requests-toolbelt setuptools sqlalchemy fusepy;
13390   };
13392   inherit (qt6Packages.callPackage ../applications/office/activitywatch { })
13393     aw-qt
13394     aw-notify
13395     aw-server-rust
13396     aw-watcher-afk
13397     aw-watcher-window;
13399   activitywatch = callPackage ../applications/office/activitywatch/wrapper.nix { };
13401   adobe-reader = pkgsi686Linux.callPackage ../applications/misc/adobe-reader { };
13403   anilibria-winmaclinux = libsForQt5.callPackage ../applications/video/anilibria-winmaclinux { };
13405   masterpdfeditor4 = libsForQt5.callPackage ../applications/misc/masterpdfeditor4 { };
13407   master_me = callPackage ../applications/audio/master_me {
13408     inherit (darwin.apple_sdk.frameworks) Cocoa;
13409   };
13411   inherit
13412     ({
13413        pdfstudio2021 = callPackage ../applications/misc/pdfstudio { year = "2021"; };
13414        pdfstudio2022 = callPackage ../applications/misc/pdfstudio { year = "2022"; };
13415        pdfstudio2023 = callPackage ../applications/misc/pdfstudio { year = "2023"; };
13416        pdfstudio2024 = callPackage ../applications/misc/pdfstudio { year = "2024"; };
13417        pdfstudioviewer = callPackage ../applications/misc/pdfstudio { program = "pdfstudioviewer"; };
13418     })
13419     pdfstudio2021
13420     pdfstudio2022
13421     pdfstudio2023
13422     pdfstudio2024
13423     pdfstudioviewer
13424     ;
13426   acpic = callPackage ../applications/misc/acpic/default.nix { };
13428   aeolus = callPackage ../applications/audio/aeolus { };
13429   aeolus-stops = callPackage ../applications/audio/aeolus/stops.nix { };
13431   airwave = libsForQt5.callPackage ../applications/audio/airwave { };
13433   alembic = callPackage ../development/libraries/alembic {
13434     openexr = openexr_3;
13435   };
13437   amarok = libsForQt5.callPackage ../applications/audio/amarok { };
13438   amarok-kf5 = amarok; # for compatibility
13440   androidStudioPackages = recurseIntoAttrs
13441     (callPackage ../applications/editors/android-studio { });
13442   android-studio = androidStudioPackages.stable;
13443   android-studio-full = android-studio.full;
13445   androidStudioForPlatformPackages = recurseIntoAttrs
13446     (callPackage ../applications/editors/android-studio-for-platform { });
13447   android-studio-for-platform = androidStudioForPlatformPackages.stable;
13449   antimony = libsForQt5.callPackage ../applications/graphics/antimony { };
13451   anup = callPackage ../applications/misc/anup {
13452     inherit (darwin.apple_sdk.frameworks) Security;
13453   };
13455   apkeep = callPackage ../tools/misc/apkeep {
13456     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
13457   };
13459   apngasm = callPackage ../applications/graphics/apngasm { };
13460   apngasm_2 = callPackage ../applications/graphics/apngasm/2.nix { };
13462   ardour = callPackage ../applications/audio/ardour { };
13463   ardour_7 = callPackage ../applications/audio/ardour/7.nix { };
13465   arelle = with python3Packages; toPythonApplication arelle;
13467   asuka = callPackage ../applications/networking/browsers/asuka {
13468     inherit (darwin.apple_sdk.frameworks) Security;
13469   };
13471   astroid = callPackage ../applications/networking/mailreaders/astroid {
13472     vim = vim-full.override { features = "normal"; };
13473     protobuf = protobuf_21;
13474   };
13476   audacious = qt6Packages.callPackage ../applications/audio/audacious { };
13477   audacious-plugins = qt6Packages.callPackage ../applications/audio/audacious/plugins.nix {
13478     # Avoid circular dependency
13479     audacious = audacious.override { audacious-plugins = null; };
13480   };
13482   av-98 = callPackage ../applications/networking/browsers/av-98 { };
13484   bambootracker = libsForQt5.callPackage ../applications/audio/bambootracker {
13485     stdenv = if stdenv.hostPlatform.isDarwin then
13486       darwin.apple_sdk_11_0.stdenv
13487     else
13488       stdenv;
13489   };
13490   bambootracker-qt6 = qt6Packages.callPackage ../applications/audio/bambootracker {
13491     stdenv = if stdenv.hostPlatform.isDarwin then
13492       darwin.apple_sdk_11_0.stdenv
13493     else
13494       stdenv;
13495   };
13497   milkytracker = callPackage ../applications/audio/milkytracker {
13498     inherit (darwin.apple_sdk.frameworks) Cocoa CoreAudio Foundation;
13499   };
13501   ptcollab = callPackage ../by-name/pt/ptcollab/package.nix {
13502     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
13503   };
13505   schismtracker = callPackage ../applications/audio/schismtracker {
13506     inherit (darwin.apple_sdk.frameworks) Cocoa;
13507   };
13509   libbitcoin = callPackage ../tools/misc/libbitcoin/libbitcoin.nix {
13510     boost = boost175; # fatal error: 'boost/interprocess/detail/posix_time_types_wrk.hpp' file not found
13511   };
13512   libbitcoin-protocol = callPackage ../tools/misc/libbitcoin/libbitcoin-protocol.nix {
13513     boost = boost175;
13514   };
13515   libbitcoin-client   = callPackage ../tools/misc/libbitcoin/libbitcoin-client.nix {
13516     boost = boost175;
13517   };
13518   libbitcoin-network  = callPackage ../tools/misc/libbitcoin/libbitcoin-network.nix {
13519     boost = boost175;
13520   };
13521   libbitcoin-explorer = callPackage ../tools/misc/libbitcoin/libbitcoin-explorer.nix {
13522     boost = boost175;
13523   };
13525   ausweisapp = qt6Packages.callPackage ../applications/misc/ausweisapp { };
13527   avidemux = libsForQt5.callPackage ../applications/video/avidemux { };
13529   awesome = callPackage ../applications/window-managers/awesome {
13530     cairo = cairo.override { xcbSupport = true; };
13531     inherit (texFunctions) fontsConf;
13532   };
13534   awesomebump = libsForQt5.callPackage ../applications/graphics/awesomebump { };
13536   backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { };
13538   backintime-qt = qt6.callPackage ../applications/networking/sync/backintime/qt.nix { };
13540   backintime = backintime-qt;
13542   barrier = libsForQt5.callPackage ../applications/misc/barrier { };
13544   bespokesynth = darwin.apple_sdk_11_0.callPackage ../applications/audio/bespokesynth {
13545     inherit (darwin.apple_sdk_11_0.frameworks) Accelerate Cocoa WebKit CoreServices CoreAudioKit IOBluetooth MetalKit;
13546   };
13548   bespokesynth-with-vst2 = bespokesynth.override {
13549     enableVST2 = true;
13550   };
13552   bfcal = libsForQt5.callPackage ../applications/misc/bfcal { };
13554   bino3d = qt6Packages.callPackage ../applications/video/bino3d { };
13556   bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { };
13557   bitlbee-plugins = callPackage ../applications/networking/instant-messengers/bitlbee/plugins.nix { };
13559   bitscope = recurseIntoAttrs
13560     (callPackage ../applications/science/electronics/bitscope/packages.nix { });
13562   bitwig-studio3 =  callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { };
13563   bitwig-studio4 =  callPackage ../applications/audio/bitwig-studio/bitwig-studio4.nix {
13564     libjpeg = libjpeg8;
13565   };
13566   bitwig-studio5 =  callPackage ../applications/audio/bitwig-studio/bitwig-studio5.nix {
13567     libjpeg = libjpeg8;
13568   };
13570   bitwig-studio = bitwig-studio5;
13572   blackbox = callPackage ../applications/version-management/blackbox {
13573     pinentry = pinentry-curses;
13574   };
13576   blender = callPackage  ../applications/misc/blender {
13577     openexr = openexr_3;
13578     python3Packages = python311Packages;
13579     inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics ForceFeedback OpenAL OpenGL;
13580   };
13582   blender-hip = blender.override { hipSupport = true; };
13584   blucontrol = callPackage ../applications/misc/blucontrol/wrapper.nix {
13585     inherit (haskellPackages) ghcWithPackages;
13586   };
13588   bluefish = callPackage ../applications/editors/bluefish {
13589     gtk = gtk3;
13590   };
13592   bluej = callPackage ../applications/editors/bluej {
13593     openjdk = openjdk17.override {
13594       enableJavaFX = true;
13595       openjfx_jdk = openjfx17.override { withWebKit = true; };
13596     };
13597   };
13599   bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { };
13601   bottles = callPackage ../applications/misc/bottles/fhsenv.nix { };
13603   bottles-unwrapped = callPackage ../applications/misc/bottles { };
13605   breezy = with python3Packages; toPythonApplication breezy;
13607   cage = callPackage ../applications/window-managers/cage {
13608     wlroots = wlroots_0_18;
13609   };
13611   calf = callPackage ../applications/audio/calf {
13612       inherit (gnome2) libglade;
13613   };
13615   calcmysky = qt6Packages.callPackage ../applications/science/astronomy/calcmysky { };
13617   calibre = callPackage ../by-name/ca/calibre/package.nix {
13618     podofo = podofo010;
13619   };
13621   # calico-felix and calico-node have not been packaged due to libbpf, linking issues
13622   inherit (callPackage ../applications/networking/cluster/calico {})
13623     calico-apiserver
13624     calico-app-policy
13625     calico-cni-plugin
13626     calico-kube-controllers
13627     calico-pod2daemon
13628     calico-typha
13629     calicoctl
13630     confd-calico;
13632   carla = libsForQt5.callPackage ../applications/audio/carla { };
13634   cb2bib = libsForQt5.callPackage ../applications/office/cb2bib { };
13636   cbconvert-gui = cbconvert.gui;
13638   cddiscid = callPackage ../applications/audio/cd-discid {
13639     inherit (darwin) IOKit;
13640   };
13642   cdparanoia = cdparanoiaIII;
13644   cdparanoiaIII = callPackage ../applications/audio/cdparanoia { };
13646   brotab = callPackage ../tools/misc/brotab {
13647     python = python3;
13648   };
13650   bumblebee-status = callPackage ../applications/window-managers/i3/bumblebee-status {
13651     python = python3;
13652   };
13654   chromium = callPackage ../applications/networking/browsers/chromium (config.chromium or {});
13656   chuck = callPackage ../applications/audio/chuck {
13657     inherit (darwin) DarwinTools;
13658     inherit (darwin.apple_sdk.frameworks) AppKit Carbon CoreAudio CoreMIDI CoreServices Kernel MultitouchSupport;
13659   };
13661   cligh = python3Packages.callPackage ../development/tools/github/cligh { };
13663   clight = callPackage ../applications/misc/clight { };
13665   clight-gui = libsForQt5.callPackage ../applications/misc/clight/clight-gui.nix { };
13667   clightd = callPackage ../applications/misc/clight/clightd.nix { };
13669   clipgrab = libsForQt5.callPackage ../applications/video/clipgrab { };
13671   cmus = callPackage ../applications/audio/cmus {
13672     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio VideoToolbox;
13673     libjack = libjack2;
13674   };
13676   cni = callPackage ../applications/networking/cluster/cni { };
13677   cni-plugins = callPackage ../applications/networking/cluster/cni/plugins.nix { };
13679   communi = libsForQt5.callPackage ../applications/networking/irc/communi { };
13681   confclerk = libsForQt5.callPackage ../applications/misc/confclerk { };
13683   copyq = qt6Packages.callPackage ../applications/misc/copyq { };
13685   cpeditor = libsForQt5.callPackage ../applications/editors/cpeditor { };
13687   csound = callPackage ../applications/audio/csound {
13688     inherit (pkgs.darwin.apple_sdk.frameworks) Accelerate AudioUnit CoreAudio CoreMIDI;
13689   };
13691   csound-qt = libsForQt5.callPackage ../applications/audio/csound/csound-qt { };
13693   codeblocksFull = codeblocks.override { contribPlugins = true; };
13695   cudatext-qt = callPackage ../applications/editors/cudatext { widgetset = "qt5"; };
13696   cudatext-gtk = callPackage ../applications/editors/cudatext { widgetset = "gtk2"; };
13697   cudatext = cudatext-qt;
13699   comical = callPackage ../applications/graphics/comical {
13700     inherit (darwin.apple_sdk.frameworks) Cocoa;
13701   };
13703   cqrlog = callPackage ../applications/radio/cqrlog {
13704     hamlib = hamlib_4;
13705   };
13707   cubicsdr = callPackage ../applications/radio/cubicsdr {
13708     inherit (darwin.apple_sdk.frameworks) Cocoa WebKit;
13709   };
13711   cutecom = libsForQt5.callPackage ../tools/misc/cutecom { };
13713   darcs = haskell.lib.compose.disableCabalFlag "library"
13714     (haskell.lib.compose.justStaticExecutables haskellPackages.darcs);
13716   darktable = callPackage ../by-name/da/darktable/package.nix {
13717     lua = lua5_4;
13718     pugixml = pugixml.override { shared = true; };
13719     stdenv = if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64 then overrideSDK llvmPackages_18.stdenv { darwinMinVersion = "10.14"; darwinSdkVersion = "11.0"; } else stdenv;
13720   };
13722   datadog-agent = callPackage ../tools/networking/dd-agent/datadog-agent.nix {
13723     pythonPackages = datadog-integrations-core { };
13724   };
13725   datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { };
13726   datadog-integrations-core = extras: callPackage ../tools/networking/dd-agent/integrations-core.nix {
13727     python = python3;
13728     extraIntegrations = extras;
13729   };
13731   deadbeef = callPackage ../applications/audio/deadbeef { };
13733   deadbeefPlugins = {
13734     headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { };
13735     lyricbar = callPackage ../applications/audio/deadbeef/plugins/lyricbar.nix { };
13736     mpris2 = callPackage ../applications/audio/deadbeef/plugins/mpris2.nix { };
13737     musical-spectrum = callPackage ../applications/audio/deadbeef/plugins/musical-spectrum.nix { };
13738     statusnotifier = callPackage ../applications/audio/deadbeef/plugins/statusnotifier.nix { };
13739     playlist-manager = callPackage ../applications/audio/deadbeef/plugins/playlist-manager.nix { };
13740   };
13742   deadbeef-with-plugins = callPackage ../applications/audio/deadbeef/wrapper.nix {
13743     plugins = [];
13744   };
13746   denaro = callPackage ../applications/finance/denaro { };
13748   inherit (callPackage ../development/tools/devpod { }) devpod devpod-desktop;
13750   dfasma = libsForQt5.callPackage ../applications/audio/dfasma { };
13752   dfilemanager = libsForQt5.callPackage ../applications/file-managers/dfilemanager { };
13754   direwolf = callPackage ../applications/radio/direwolf {
13755     hamlib = hamlib_4;
13756   };
13758   djview = libsForQt5.callPackage ../applications/graphics/djview { };
13759   djview4 = djview;
13761   dmenu = callPackage ../applications/misc/dmenu { };
13762   dmenu-wayland = callPackage ../applications/misc/dmenu/wayland.nix { };
13764   dmenu-rs-enable-plugins = dmenu-rs.override { enablePlugins = true; };
13766   dmensamenu = callPackage ../applications/misc/dmensamenu {
13767     inherit (python3Packages) buildPythonApplication requests;
13768   };
13770   dmtx-utils = callPackage ../tools/graphics/dmtx-utils {
13771     inherit (darwin.apple_sdk.frameworks) Foundation;
13772   };
13774   inherit (callPackage ../applications/virtualization/docker {})
13775     docker_24 docker_25 docker_26 docker_27;
13777   docker = docker_27;
13778   docker-client = docker.override { clientOnly = true; };
13780   docker-gc = callPackage ../applications/virtualization/docker/gc.nix { };
13781   docker-machine-hyperkit = callPackage ../applications/networking/cluster/docker-machine/hyperkit.nix { };
13782   docker-machine-kvm2 = callPackage ../applications/networking/cluster/docker-machine/kvm2.nix { };
13784   docker-buildx = callPackage ../applications/virtualization/docker/buildx.nix { };
13785   docker-compose = callPackage ../applications/virtualization/docker/compose.nix { };
13786   docker-sbom = callPackage ../applications/virtualization/docker/sbom.nix { };
13789   drawio = callPackage ../applications/graphics/drawio {
13790     inherit (darwin) autoSignDarwinBinariesHook;
13791   };
13792   drawio-headless = callPackage ../applications/graphics/drawio/headless.nix { };
13794   drawpile = libsForQt5.callPackage ../applications/graphics/drawpile { };
13795   drawpile-server-headless = libsForQt5.callPackage ../applications/graphics/drawpile {
13796     buildClient = false;
13797     buildServerGui = false;
13798   };
13800   drawterm = callPackage ../tools/admin/drawterm { config = "unix"; };
13801   drawterm-wayland = callPackage ../tools/admin/drawterm { config = "linux";  };
13803   droopy = python3Packages.callPackage ../applications/networking/droopy { };
13805   dexed = darwin.apple_sdk_11_0.callPackage ../applications/audio/dexed {
13806     inherit (darwin.apple_sdk_11_0.frameworks) Accelerate Cocoa WebKit MetalKit DiscRecording CoreAudioKit;
13807     inherit (darwin.apple_sdk_11_0.libs) simd;
13808   };
13810   dwl = callPackage ../by-name/dw/dwl/package.nix {
13811     wlroots = wlroots_0_18;
13812   };
13814   dwm = callPackage ../applications/window-managers/dwm {
13815     # dwm is configured entirely through source modification. Allow users to
13816     # specify patches through nixpkgs.config.dwm.patches
13817     patches = config.dwm.patches or [];
13818   };
13820   dwm-status = callPackage ../applications/window-managers/dwm/dwm-status.nix { };
13822   evilwm = callPackage ../applications/window-managers/evilwm {
13823     patches = config.evilwm.patches or [];
13824   };
13826   eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { });
13828   ecpdap = callPackage ../development/embedded/fpga/ecpdap {
13829     inherit (darwin.apple_sdk.frameworks) AppKit;
13830   };
13832   electron-cash = libsForQt5.callPackage ../applications/misc/electron-cash { };
13834   electrum = libsForQt5.callPackage ../applications/misc/electrum { };
13836   electrum-grs = libsForQt5.callPackage ../applications/misc/electrum/grs.nix { };
13838   electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { };
13840   elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { };
13842   elinks = callPackage ../applications/networking/browsers/elinks {
13843     autoreconfHook = buildPackages.autoreconfHook269;
13844   };
13846   inherit (recurseIntoAttrs (callPackage ../applications/editors/emacs { }))
13847     emacs28
13848     emacs28-gtk3
13849     emacs28-nox
13851     emacs29
13852     emacs29-gtk3
13853     emacs29-nox
13854     emacs29-pgtk
13856     emacs30
13857     emacs30-gtk3
13858     emacs30-nox
13859     emacs30-pgtk
13861     emacs28-macport
13862     emacs29-macport
13863   ;
13865   emacs-macport = emacs29-macport;
13866   emacs = emacs29;
13867   emacs-gtk = emacs29-gtk3;
13868   emacs-nox = emacs29-nox;
13870   emacsPackagesFor = emacs: import ./emacs-packages.nix {
13871     inherit (lib) makeScope makeOverridable dontRecurseIntoAttrs;
13872     emacs' = emacs;
13873     pkgs' = pkgs;  # default pkgs used for bootstrapping the emacs package set
13874   };
13876   # This alias should live in aliases.nix but that would cause Hydra not to evaluate/build the packages.
13877   # If you turn this into "real" alias again, please add it to pkgs/top-level/packages-config.nix again too
13878   emacsPackages = emacs.pkgs // { __recurseIntoDerivationForReleaseJobs = true; };
13880   epick = callPackage ../applications/graphics/epick {
13881     inherit (darwin.apple_sdk.frameworks) AppKit;
13882   };
13884   espeak-classic = callPackage ../applications/audio/espeak { };
13886   espeak-ng = callPackage ../applications/audio/espeak-ng {
13887     inherit (darwin.apple_sdk.frameworks) AudioToolbox AudioUnit CoreAudio;
13888   };
13889   espeak = res.espeak-ng;
13891   espeakedit = callPackage ../applications/audio/espeak/edit.nix { };
13893   espflash = callPackage ../by-name/es/espflash/package.nix {
13894     inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration;
13895   };
13897   evilpixie = libsForQt5.callPackage ../applications/graphics/evilpixie { };
13899   greenfoot = callPackage ../applications/editors/greenfoot {
13900     openjdk = openjdk17.override {
13901       enableJavaFX = true;
13902       openjfx_jdk = openjfx17.override { withWebKit = true; };
13903     };
13904   };
13906   haruna = kdePackages.callPackage ../applications/video/haruna { };
13908   hdrmerge = libsForQt5.callPackage ../applications/graphics/hdrmerge { };
13910   input-leap = qt6Packages.callPackage ../applications/misc/input-leap {
13911     avahi = avahi.override { withLibdnssdCompat = true; };
13912   };
13914   keepassxc = libsForQt5.callPackage ../applications/misc/keepassxc {
13915     inherit (darwin.apple_sdk_11_0.frameworks) LocalAuthentication;
13916     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
13917   };
13919   evolution-data-server-gtk4 = evolution-data-server.override { withGtk3 = false; withGtk4 = true; };
13920   evolution-ews = callPackage ../applications/networking/mailreaders/evolution/evolution-ews { };
13921   evolution = callPackage ../applications/networking/mailreaders/evolution/evolution { };
13922   evolutionWithPlugins = callPackage ../applications/networking/mailreaders/evolution/evolution/wrapper.nix { plugins = [ evolution evolution-ews ]; };
13924   famistudio = darwin.apple_sdk_11_0.callPackage ../applications/audio/famistudio { };
13926   fdr = libsForQt5.callPackage ../applications/science/programming/fdr { };
13928   fetchmail = callPackage ../applications/misc/fetchmail { };
13929   fetchmail_7 = callPackage ../applications/misc/fetchmail/v7.nix { };
13931   finalfrontier = callPackage ../applications/science/machine-learning/finalfrontier {
13932     inherit (darwin.apple_sdk.frameworks) Security;
13933   };
13935   finalfusion-utils = callPackage ../applications/science/machine-learning/finalfusion-utils {
13936     inherit (darwin.apple_sdk.frameworks) Security;
13937   };
13939   firewalld-gui = firewalld.override { withGui = true; };
13941   flacon = libsForQt5.callPackage ../applications/audio/flacon { };
13943   fldigi = callPackage ../applications/radio/fldigi {
13944     hamlib = hamlib_4;
13945   };
13947   fluidsynth = callPackage ../applications/audio/fluidsynth {
13948     inherit (darwin.apple_sdk.frameworks) AppKit AudioUnit CoreAudio CoreMIDI CoreServices;
13949   };
13951   fmit = libsForQt5.callPackage ../applications/audio/fmit { };
13953   fnc = darwin.apple_sdk_11_0.callPackage ../applications/version-management/fnc { };
13955   focuswriter = qt6Packages.callPackage ../applications/editors/focuswriter { };
13957   fossil = callPackage ../applications/version-management/fossil {
13958     sqlite = sqlite.override { enableDeserialize = true; };
13959   };
13961   fritzing = qt6Packages.callPackage ../applications/science/electronics/fritzing { };
13963   ft2-clone = callPackage ../applications/audio/ft2-clone {
13964     inherit (darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices Cocoa;
13965   };
13967   fvwm = fvwm2;
13969   ganttproject-bin = callPackage ../applications/misc/ganttproject-bin {
13970     jre = openjdk17.override {
13971       enableJavaFX = true;
13972     };
13973   };
13975   gaucheBootstrap = darwin.apple_sdk_11_0.callPackage ../development/interpreters/gauche/boot.nix { };
13977   gauche = darwin.apple_sdk_11_0.callPackage ../development/interpreters/gauche {
13978     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices;
13979   };
13981   gazelle-origin = python3Packages.callPackage ../tools/misc/gazelle-origin { };
13983   geany = callPackage ../applications/editors/geany { };
13984   geany-with-vte = callPackage ../applications/editors/geany/with-vte.nix { };
13986   gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix {
13987     unwrapped = callPackage ../applications/radio/gnuradio {
13988       inherit (darwin.apple_sdk.frameworks) CoreAudio;
13989       python = python311;
13990     };
13991   };
13992   gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs;
13993   # A build without gui components and other utilites not needed for end user
13994   # libraries
13995   gnuradioMinimal = gnuradio.override {
13996     doWrap = false;
13997     unwrapped = gnuradio.unwrapped.override {
13998       volk = volk.override {
13999         # So it will not reference python
14000         enableModTool = false;
14001       };
14002       uhd = uhdMinimal;
14003       features = {
14004         gnuradio-companion = false;
14005         python-support = false;
14006         examples = false;
14007         gr-qtgui = false;
14008         gr-utils = false;
14009         gr-modtool = false;
14010         gr-blocktool = false;
14011         sphinx = false;
14012         doxygen = false;
14013         # Doesn't make it reference python eventually, but makes reverse
14014         # depdendencies require python to use cmake files of GR.
14015         gr-ctrlport = false;
14016       };
14017     };
14018   };
14019   gnuradio3_8 = callPackage ../applications/radio/gnuradio/wrapper.nix {
14020     unwrapped = callPackage ../applications/radio/gnuradio/3.8.nix ({
14021       inherit (darwin.apple_sdk.frameworks) CoreAudio;
14022       python = python311;
14023       volk = volk_2;
14024     } // lib.optionalAttrs stdenv.hostPlatform.isLinux {
14025       stdenv = pkgs.stdenvAdapters.useLibsFrom stdenv pkgs.gcc12Stdenv;
14026     });
14027   };
14028   gnuradio3_8Packages = lib.recurseIntoAttrs gnuradio3_8.pkgs;
14029   # A build without gui components and other utilites not needed if gnuradio is
14030   # used as a c++ library.
14031   gnuradio3_8Minimal = gnuradio3_8.override {
14032     doWrap = false;
14033     unwrapped = gnuradio3_8.unwrapped.override {
14034       volk = volk_2.override {
14035         enableModTool = false;
14036       };
14037       uhd = uhdMinimal;
14038       features = {
14039         gnuradio-companion = false;
14040         python-support = false;
14041         examples = false;
14042         gr-qtgui = false;
14043         gr-utils = false;
14044         gr-modtool = false;
14045         sphinx = false;
14046         doxygen = false;
14047         # Doesn't make it reference python eventually, but makes reverse
14048         # depdendencies require python to use cmake files of GR.
14049         gr-ctrlport = false;
14050       };
14051     };
14052   };
14054   grandorgue = callPackage ../applications/audio/grandorgue {
14055     inherit (darwin.apple_sdk.frameworks) Cocoa;
14056   };
14058   greetd = recurseIntoAttrs {
14059     dlm = throw "greetd.dlm has been removed as it is broken and abandoned upstream"; #Added 2024-07-15
14060     greetd = callPackage ../applications/display-managers/greetd { };
14061     gtkgreet = callPackage ../applications/display-managers/greetd/gtkgreet.nix { };
14062     regreet = callPackage ../applications/display-managers/greetd/regreet.nix { };
14063     tuigreet = callPackage ../applications/display-managers/greetd/tuigreet.nix { };
14064     wlgreet = callPackage ../applications/display-managers/greetd/wlgreet.nix { };
14065   };
14067   goldendict = libsForQt5.callPackage ../applications/misc/goldendict { };
14068   goldendict-ng = qt6Packages.callPackage ../applications/misc/goldendict-ng { };
14070   inherit (ocamlPackages) google-drive-ocamlfuse;
14072   googler = callPackage ../applications/misc/googler {
14073     python = python3;
14074   };
14076   gqrx = qt6Packages.callPackage ../applications/radio/gqrx { };
14077   gqrx-portaudio = qt6Packages.callPackage ../applications/radio/gqrx {
14078     portaudioSupport = true;
14079     pulseaudioSupport = false;
14080   };
14081   gqrx-gr-audio = qt6Packages.callPackage ../applications/radio/gqrx {
14082     portaudioSupport = false;
14083     pulseaudioSupport = false;
14084   };
14086   guitarix = callPackage ../applications/audio/guitarix {
14087     fftw = fftwSinglePrec;
14088   };
14090   gurk-rs = callPackage ../applications/networking/instant-messengers/gurk-rs {
14091     inherit (darwin.apple_sdk.frameworks) Cocoa;
14092   };
14094   puddletag = libsForQt5.callPackage ../applications/audio/puddletag { };
14096   welle-io = qt6Packages.callPackage ../applications/radio/welle-io { };
14098   wireshark = qt6Packages.callPackage ../applications/networking/sniffers/wireshark {
14099     inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices SystemConfiguration;
14100     libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
14101   };
14102   wireshark-qt = wireshark;
14104   qtwirediff = qt6Packages.callPackage ../applications/networking/sniffers/qtwirediff {};
14106   tshark = wireshark-cli;
14107   wireshark-cli = wireshark.override {
14108     withQt = false;
14109     libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
14110   };
14112   fclones = callPackage ../tools/misc/fclones { };
14114   fclones-gui = darwin.apple_sdk_11_0.callPackage ../tools/misc/fclones/gui.nix { };
14116   feh = callPackage ../applications/graphics/feh {
14117     imlib2 = imlib2Full;
14118   };
14120   filezilla = darwin.apple_sdk_11_0.callPackage ../applications/networking/ftp/filezilla {
14121     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices Security;
14122   };
14124   fire = darwin.apple_sdk_11_0.callPackage ../applications/audio/fire {
14125     inherit (darwin.apple_sdk_11_0.frameworks) Accelerate Cocoa WebKit CoreServices DiscRecording CoreAudioKit MetalKit;
14126     inherit (darwin.apple_sdk_11_0.libs) simd;
14127   };
14129   buildMozillaMach = opts: callPackage (import ../applications/networking/browsers/firefox/common.nix opts) { };
14131   firefox-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox.nix {
14132     inherit stdenv lib callPackage fetchurl nixosTests buildMozillaMach;
14133   };
14134   firefox-beta-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox-beta.nix {
14135     inherit stdenv lib callPackage fetchurl nixosTests buildMozillaMach;
14136   };
14137   firefox-devedition-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox-devedition.nix {
14138     inherit stdenv lib callPackage fetchurl nixosTests buildMozillaMach;
14139   };
14140   firefox-esr-128-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox-esr-128.nix {
14141     inherit stdenv lib callPackage fetchurl nixosTests buildMozillaMach;
14142   };
14143   firefox-esr-unwrapped = firefox-esr-128-unwrapped;
14145   firefox = wrapFirefox firefox-unwrapped { };
14146   firefox-beta = wrapFirefox firefox-beta-unwrapped {
14147     nameSuffix = "-beta";
14148     desktopName = "Firefox Beta";
14149     wmClass = "firefox-beta";
14150     icon = "firefox-beta";
14151   };
14152   firefox-devedition = wrapFirefox firefox-devedition-unwrapped {
14153     nameSuffix = "-devedition";
14154     desktopName = "Firefox Developer Edition";
14155     wmClass = "firefox-devedition";
14156     icon = "firefox-devedition";
14157   };
14159   firefox-mobile = callPackage ../applications/networking/browsers/firefox/mobile-config.nix { };
14161   firefox-esr-128 = wrapFirefox firefox-esr-128-unwrapped {
14162     nameSuffix = "-esr";
14163     desktopName = "Firefox ESR";
14164     wmClass = "firefox-esr";
14165     icon = "firefox-esr";
14166   };
14167   firefox-esr = firefox-esr-128;
14169   firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin {
14170     channel = "release";
14171     generated = import ../applications/networking/browsers/firefox-bin/release_sources.nix;
14172   };
14174   firefox-bin = wrapFirefox firefox-bin-unwrapped {
14175     pname = "firefox-bin";
14176   };
14178   firefox-beta-bin-unwrapped = firefox-bin-unwrapped.override {
14179     channel = "beta";
14180     generated = import ../applications/networking/browsers/firefox-bin/beta_sources.nix;
14181   };
14183   firefox-beta-bin = res.wrapFirefox firefox-beta-bin-unwrapped {
14184     pname = "firefox-beta-bin";
14185     desktopName = "Firefox Beta";
14186   };
14188   firefox-devedition-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin {
14189     channel = "developer-edition";
14190     generated = import ../applications/networking/browsers/firefox-bin/developer-edition_sources.nix;
14191   };
14193   firefox-devedition-bin = res.wrapFirefox firefox-devedition-bin-unwrapped {
14194     pname = "firefox-devedition-bin";
14195     desktopName = "Firefox DevEdition";
14196     wmClass = "firefox-aurora";
14197   };
14199   librewolf-unwrapped = import ../applications/networking/browsers/librewolf {
14200     inherit stdenv lib callPackage buildMozillaMach nixosTests;
14201   };
14203   librewolf = wrapFirefox librewolf-unwrapped {
14204     inherit (librewolf-unwrapped) extraPrefsFiles extraPoliciesFiles;
14205     libName = "librewolf";
14206   };
14208   firefox_decrypt = python3Packages.callPackage ../tools/security/firefox_decrypt { };
14210   floorp-unwrapped = import ../applications/networking/browsers/floorp {
14211     inherit stdenv lib fetchFromGitHub buildMozillaMach nixosTests;
14212   };
14214   floorp = wrapFirefox floorp-unwrapped { };
14216   formiko = with python3Packages; callPackage ../applications/editors/formiko {
14217     inherit buildPythonApplication;
14218   };
14220   foxotron = callPackage ../applications/graphics/foxotron {
14221     inherit (darwin.apple_sdk.frameworks) AVFoundation Carbon Cocoa CoreAudio Kernel OpenGL;
14222   };
14224   freedv = callPackage ../applications/radio/freedv {
14225     inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia;
14226     codec2 = codec2.override {
14227       freedvSupport = true;
14228     };
14229   };
14231   freemind = callPackage ../applications/misc/freemind {
14232     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
14233     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
14234   };
14236   freeoffice = callPackage ../applications/office/softmaker/freeoffice.nix { };
14238   inherit (xorg) xlsfonts;
14240   xrdp = callPackage ../applications/networking/remote/xrdp { };
14242   inherit
14243     ({
14244       freerdp = callPackage ../applications/networking/remote/freerdp {
14245         inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Carbon Cocoa CoreMedia;
14246         inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good;
14247       };
14248       freerdp3 = callPackage ../applications/networking/remote/freerdp/3.nix {
14249         stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
14250         inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Carbon Cocoa CoreMedia;
14251       };
14252     })
14253     freerdp
14254     freerdp3
14255     ;
14257   freerdpUnstable = freerdp;
14259   gimp = callPackage ../applications/graphics/gimp {
14260     autoreconfHook = buildPackages.autoreconfHook269;
14261     lcms = lcms2;
14262     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
14263   };
14265   gimp-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix {
14266     plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied
14267   };
14269   gimpPlugins = recurseIntoAttrs (callPackage ../applications/graphics/gimp/plugins {});
14271   girara = callPackage ../applications/misc/girara {
14272     gtk = gtk3;
14273   };
14275   gtk-pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { withGtk3 = true; };
14277   hydrus = python3Packages.callPackage ../applications/graphics/hydrus {
14278     inherit miniupnpc swftools;
14279     inherit (qt6) wrapQtAppsHook qtbase qtcharts;
14280   };
14282   kemai = qt6Packages.callPackage ../applications/misc/kemai { };
14284   jetbrains = (recurseIntoAttrs (callPackages ../applications/editors/jetbrains {
14285     vmopts = config.jetbrains.vmopts or null;
14286     jdk = jetbrains.jdk;
14287   }) // {
14288     jdk-no-jcef = callPackage ../development/compilers/jetbrains-jdk {
14289       jdk = jdk21;
14290       withJcef = false;
14291     };
14292     jdk-no-jcef-17 = callPackage ../development/compilers/jetbrains-jdk/17.nix {
14293       withJcef = false;
14294     };
14295     jdk = callPackage ../development/compilers/jetbrains-jdk {
14296       jdk = jdk21;
14297     };
14298     jcef = callPackage ../development/compilers/jetbrains-jdk/jcef.nix {
14299       jdk = jdk21;
14300     };
14301   });
14303   librespot = callPackage ../applications/audio/librespot {
14304     withALSA = stdenv.hostPlatform.isLinux;
14305     withPulseAudio = config.pulseaudio or stdenv.hostPlatform.isLinux;
14306     withPortAudio = stdenv.hostPlatform.isDarwin;
14307   };
14309   linssid = libsForQt5.callPackage ../applications/networking/linssid { };
14311   linvstmanager = qt5.callPackage ../applications/audio/linvstmanager { };
14313   deadd-notification-center = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../applications/misc/deadd-notification-center { });
14315   m32edit = callPackage ../applications/audio/midas/m32edit.nix { };
14317   manim = python3Packages.toPythonApplication python3Packages.manim;
14319   manim-slides = python3Packages.toPythonApplication (
14320     python3Packages.manim-slides.override {
14321       withGui = true;
14322     }
14323   );
14325   manuskript = libsForQt5.callPackage ../applications/editors/manuskript {
14326     python3Packages = python311Packages;
14327   };
14329   minari = python3Packages.toPythonApplication python3Packages.minari;
14331   mindforger = libsForQt5.callPackage ../applications/editors/mindforger { };
14333   molsketch = libsForQt5.callPackage ../applications/editors/molsketch { };
14335   openutau = callPackage ../applications/audio/openutau { };
14337   pattypan = callPackage ../applications/misc/pattypan {
14338     jdk = jdk.override { enableJavaFX = true; };
14339   };
14341   gkrellm = callPackage ../applications/misc/gkrellm {
14342     inherit (darwin.apple_sdk.frameworks) IOKit;
14343   };
14345   gnunet = callPackage ../applications/networking/p2p/gnunet { };
14347   gnunet-gtk = callPackage ../applications/networking/p2p/gnunet/gtk.nix { };
14349   gphoto2 = callPackage ../applications/misc/gphoto2 { };
14351   gphoto2fs = callPackage ../applications/misc/gphoto2/gphotofs.nix { };
14353   gramps = callPackage ../applications/misc/gramps {
14354         pythonPackages = python3Packages;
14355   };
14357   graphicsmagick_q16 = graphicsmagick.override { quantumdepth = 16; };
14358   graphicsmagick-imagemagick-compat = graphicsmagick.imagemagick-compat;
14360   grisbi = callPackage ../applications/office/grisbi { gtk = gtk3; };
14362   q4wine = libsForQt5.callPackage ../applications/misc/q4wine { };
14364   qrencode = callPackage ../development/libraries/qrencode {
14365     inherit (darwin) libobjc;
14366   };
14368   gollum = callPackage ../applications/misc/gollum { };
14370   googleearth-pro = libsForQt5.callPackage ../applications/misc/googleearth-pro { };
14372   gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel { };
14374   gpsbabel-gui = gpsbabel.override {
14375     withGUI = true;
14376     withDoc = true;
14377   };
14379   gpu-screen-recorder = callPackage ../applications/video/gpu-screen-recorder { };
14381   gpu-screen-recorder-gtk = callPackage ../applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix { };
14383   gpxlab = libsForQt5.callPackage ../applications/misc/gpxlab { };
14385   gpxsee-qt5 = libsForQt5.callPackage ../applications/misc/gpxsee { };
14387   gpxsee-qt6 = qt6Packages.callPackage ../applications/misc/gpxsee { };
14389   gpxsee = gpxsee-qt5;
14391   guvcview = libsForQt5.callPackage ../os-specific/linux/guvcview { };
14393   hachoir = with python3Packages; toPythonApplication hachoir;
14395   heimer = libsForQt5.callPackage ../applications/misc/heimer { };
14397   hydrogen-web-unwrapped = callPackage ../applications/networking/instant-messengers/hydrogen-web/unwrapped.nix { };
14399   hydrogen-web = callPackage ../applications/networking/instant-messengers/hydrogen-web/wrapper.nix {
14400     conf = config.hydrogen-web.conf or { };
14401   };
14403   hledger = haskell.lib.compose.justStaticExecutables haskellPackages.hledger;
14404   hledger-iadd = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-iadd;
14405   hledger-interest = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-interest;
14406   hledger-ui = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-ui;
14407   hledger-web =
14408     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
14409     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
14410     haskellPackages.hledger-web;
14411   hledger-utils = with python3.pkgs; toPythonApplication hledger-utils;
14413   hollywood = callPackage ../applications/misc/hollywood {
14414     inherit (python3Packages) pygments;
14415   };
14417   hors = callPackage ../development/tools/hors {
14418     inherit (darwin.apple_sdk.frameworks) Security;
14419   };
14421   hovercraft = python3Packages.callPackage ../applications/misc/hovercraft { };
14423   hpack = haskell.lib.compose.justStaticExecutables haskellPackages.hpack;
14425   hpmyroom = libsForQt5.callPackage ../applications/networking/hpmyroom { };
14427   hue-cli = callPackage ../tools/networking/hue-cli { };
14429   hugin = callPackage ../applications/graphics/hugin {
14430     wxGTK = wxGTK32;
14431   };
14433   huggle = libsForQt5.callPackage ../applications/misc/huggle { };
14435   hushboard = python3.pkgs.callPackage ../applications/audio/hushboard { };
14437   hydrogen = qt5.callPackage ../applications/audio/hydrogen { };
14439   hyperion-ng = libsForQt5.callPackage ../applications/video/hyperion-ng { };
14441   jackline = callPackage ../applications/networking/instant-messengers/jackline {
14442     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
14443   };
14445   meerk40t = callPackage ../applications/misc/meerk40t { };
14447   meerk40t-camera = callPackage ../applications/misc/meerk40t/camera.nix { };
14449   libmt32emu = callPackage ../applications/audio/munt/libmt32emu.nix { };
14451   mt32emu-qt = libsForQt5.callPackage ../applications/audio/munt/mt32emu-qt.nix { };
14453   mt32emu-smf2wav = callPackage ../applications/audio/munt/mt32emu-smf2wav.nix { };
14455   noson = libsForQt5.callPackage ../applications/audio/noson { };
14457   pass2csv = python3Packages.callPackage ../tools/security/pass2csv { };
14459   pinboard = with python3Packages; toPythonApplication pinboard;
14461   pinboard-notes-backup = haskell.lib.compose.justStaticExecutables haskellPackages.pinboard-notes-backup;
14463   pixel2svg = python310Packages.callPackage ../tools/graphics/pixel2svg { };
14465   pixinsight = qt6Packages.callPackage ../applications/graphics/pixinsight { };
14467   protonup-qt = python3Packages.callPackage ../applications/misc/protonup-qt { };
14469   inherit (callPackage ../applications/virtualization/singularity/packages.nix { })
14470     apptainer
14471     singularity
14472     apptainer-overriden-nixos
14473     singularity-overriden-nixos
14474     ;
14476   slack = callPackage ../applications/networking/instant-messengers/slack { };
14478   sosreport = python3Packages.callPackage ../applications/logging/sosreport { };
14480   inherit (callPackages ../development/libraries/wlroots {})
14481     wlroots_0_17
14482     wlroots_0_18;
14484   sway-contrib = recurseIntoAttrs (callPackages ../applications/misc/sway-contrib { });
14486   i3 = callPackage ../applications/window-managers/i3 {
14487     xcb-util-cursor = if stdenv.hostPlatform.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
14488   };
14490   i3-auto-layout = callPackage ../applications/window-managers/i3/auto-layout.nix { };
14492   i3-rounded = callPackage ../applications/window-managers/i3/rounded.nix { };
14494   i3altlayout = callPackage ../applications/window-managers/i3/altlayout.nix { };
14496   i3-balance-workspace = python3Packages.callPackage ../applications/window-managers/i3/balance-workspace.nix { };
14498   i3-cycle-focus = callPackage ../applications/window-managers/i3/cycle-focus.nix { };
14500   i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { };
14502   i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.nix { };
14504   i3-ratiosplit =  callPackage ../applications/window-managers/i3/i3-ratiosplit.nix { };
14506   i3-resurrect = python3Packages.callPackage ../applications/window-managers/i3/i3-resurrect.nix { };
14508   i3-swallow = python3Packages.callPackage ../applications/window-managers/i3/swallow.nix { };
14510   i3blocks = callPackage ../applications/window-managers/i3/blocks.nix { };
14512   i3blocks-gaps = callPackage ../applications/window-managers/i3/blocks-gaps.nix { };
14514   i3ipc-glib = callPackage ../applications/window-managers/i3/i3ipc-glib.nix { };
14516   i3lock = callPackage ../applications/window-managers/i3/lock.nix {
14517     cairo = cairo.override { xcbSupport = true; };
14518   };
14520   i3lock-blur = callPackage ../applications/window-managers/i3/lock-blur.nix { };
14522   i3lock-color = callPackage ../applications/window-managers/i3/lock-color.nix { };
14524   i3lock-fancy = callPackage ../applications/window-managers/i3/lock-fancy.nix { };
14526   i3lock-fancy-rapid = callPackage ../applications/window-managers/i3/lock-fancy-rapid.nix { };
14528   i3status = callPackage ../applications/window-managers/i3/status.nix { };
14530   i3status-rust = callPackage ../applications/window-managers/i3/status-rust.nix { };
14532   i3wsr = callPackage ../applications/window-managers/i3/wsr.nix { };
14534   i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { };
14536   kitti3 = python3.pkgs.callPackage ../applications/window-managers/i3/kitti3.nix { };
14538   waybox = callPackage ../by-name/wa/waybox/package.nix {
14539     wlroots = wlroots_0_17;
14540   };
14542   workstyle = callPackage ../applications/window-managers/i3/workstyle.nix { };
14544   wmfocus = callPackage ../applications/window-managers/i3/wmfocus.nix { };
14546   ii = callPackage ../applications/networking/irc/ii {
14547     stdenv = gccStdenv;
14548   };
14550   ikiwiki = callPackage ../applications/misc/ikiwiki {
14551     python = python3;
14552     inherit (perlPackages.override { pkgs = pkgs // { imagemagick = imagemagickBig;}; }) ImageMagick;
14553   };
14555   ikiwiki-full = ikiwiki.override {
14556     bazaarSupport = false;      # tests broken
14557     cvsSupport = true;
14558     docutilsSupport = true;
14559     gitSupport = true;
14560     mercurialSupport = true;
14561     monotoneSupport = true;
14562     subversionSupport = true;
14563   };
14565   iksemel = callPackage ../development/libraries/iksemel {
14566     texinfo = buildPackages.texinfo6_7; # Uses @setcontentsaftertitlepage, removed in 6.8.
14567   };
14569   avalonia-ilspy = callPackage ../applications/misc/avalonia-ilspy {
14570     inherit (darwin) autoSignDarwinBinariesHook;
14571   };
14573   imagemagick6_light = imagemagick6.override {
14574     bzip2Support = false;
14575     zlibSupport = false;
14576     libX11Support = false;
14577     libXtSupport = false;
14578     fontconfigSupport = false;
14579     freetypeSupport = false;
14580     ghostscriptSupport = false;
14581     libjpegSupport = false;
14582     djvulibreSupport = false;
14583     lcms2Support = false;
14584     openexrSupport = false;
14585     libpngSupport = false;
14586     liblqr1Support = false;
14587     librsvgSupport = false;
14588     libtiffSupport = false;
14589     libxml2Support = false;
14590     openjpegSupport = false;
14591     libwebpSupport = false;
14592     libheifSupport = false;
14593     libde265Support = false;
14594   };
14596   imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix {
14597     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
14598   };
14600   imagemagick6Big = imagemagick6.override {
14601     ghostscriptSupport = true;
14602   };
14604   imagemagick_light = lowPrio (imagemagick.override {
14605     bzip2Support = false;
14606     zlibSupport = false;
14607     libX11Support = false;
14608     libXtSupport = false;
14609     fontconfigSupport = false;
14610     freetypeSupport = false;
14611     libjpegSupport = false;
14612     djvulibreSupport = false;
14613     lcms2Support = false;
14614     openexrSupport = false;
14615     libjxlSupport = false;
14616     libpngSupport = false;
14617     liblqr1Support = false;
14618     librsvgSupport = false;
14619     libtiffSupport = false;
14620     libxml2Support = false;
14621     openjpegSupport = false;
14622     libwebpSupport = false;
14623     libheifSupport = false;
14624   });
14626   imagemagick = lowPrio (callPackage ../applications/graphics/ImageMagick {
14627     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
14628   });
14630   imagemagickBig = lowPrio (imagemagick.override {
14631     ghostscriptSupport = true;
14632   });
14634   inherit (nodePackages) imapnotify;
14636   img2pdf = with python3Packages; toPythonApplication img2pdf;
14638   imgp = python3Packages.callPackage ../applications/graphics/imgp { };
14640   inkcut = libsForQt5.callPackage ../applications/misc/inkcut { };
14642   inkscape = callPackage ../applications/graphics/inkscape {
14643     lcms = lcms2;
14644   };
14646   inkscape-with-extensions = callPackage ../applications/graphics/inkscape/with-extensions.nix { };
14648   inkscape-extensions = recurseIntoAttrs (callPackages ../applications/graphics/inkscape/extensions.nix {});
14650   inlyne = darwin.apple_sdk_11_0.callPackage ../applications/misc/inlyne { };
14652   ion3 = callPackage ../applications/window-managers/ion-3 {
14653     lua = lua5_1;
14654   };
14656   ipe = qt6Packages.callPackage ../applications/graphics/ipe {
14657     ghostscript = ghostscriptX;
14658     lua5 = lua5_3;
14659   };
14661   irssi = callPackage ../applications/networking/irc/irssi { };
14663   ir.lv2 = callPackage ../applications/audio/ir.lv2 { };
14665   jabcode = callPackage ../development/libraries/jabcode { };
14667   jabcode-writer = callPackage ../development/libraries/jabcode {
14668     subproject = "writer";
14669   };
14671   jabcode-reader = callPackage ../development/libraries/jabcode {
14672     subproject = "reader";
14673   };
14675   jabref = callPackage ../applications/office/jabref {
14676     jdk = jdk21.override {
14677       enableJavaFX = true;
14678       openjfx_jdk = openjfx23.override { withWebKit = true; };
14679     };
14680   };
14682   jackmix = libsForQt5.callPackage ../applications/audio/jackmix { };
14683   jackmix_jack1 = jackmix.override { jack = jack1; };
14685   jalv-qt = jalv.override { useQt = true; };
14687   jameica = callPackage ../applications/office/jameica {
14688     inherit (darwin.apple_sdk.frameworks) Cocoa;
14689   };
14691   js8call = qt5.callPackage ../applications/radio/js8call { };
14693   jwm = callPackage ../applications/window-managers/jwm { };
14695   jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { };
14697   inherit (callPackage ../applications/networking/cluster/k3s { })
14698     k3s_1_28
14699     k3s_1_29
14700     k3s_1_30
14701     k3s_1_31
14702     ;
14703   k3s = k3s_1_31;
14705   kapow = libsForQt5.callPackage ../applications/misc/kapow { };
14707   kchmviewer = libsForQt5.callPackage ../applications/misc/kchmviewer { };
14709   okteta = libsForQt5.callPackage ../applications/editors/okteta { };
14711   k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { };
14713   kbibtex = libsForQt5.callPackage ../applications/office/kbibtex { };
14715   kaidan = libsForQt5.callPackage ../applications/networking/instant-messengers/kaidan { };
14717   kdeltachat = libsForQt5.callPackage ../applications/networking/instant-messengers/kdeltachat { };
14719   kexi = libsForQt5.callPackage ../applications/office/kexi { };
14721   kgraphviewer = libsForQt5.callPackage ../applications/graphics/kgraphviewer { };
14723   kid3-cli = kid3.override { withCLI = true; withKDE = false; withQt = false; };
14724   kid3-kde = kid3.override { withCLI = true; withKDE = true; withQt = false; };
14725   kid3-qt = kid3.override { withCLI = true; withKDE = false; withQt = true; };
14727   kiwix = libsForQt5.callPackage ../applications/misc/kiwix { };
14729   kiwix-tools = callPackage ../applications/misc/kiwix/tools.nix { };
14731   klayout = libsForQt5.callPackage ../applications/misc/klayout { };
14733   klee = callPackage ../applications/science/logic/klee {
14734     llvmPackages = llvmPackages_13;
14735   };
14737   kmetronome = qt6Packages.callPackage ../applications/audio/kmetronome { };
14739   kmplayer = libsForQt5.callPackage ../applications/video/kmplayer { };
14741   kmymoney = libsForQt5.callPackage ../applications/office/kmymoney { };
14743   kotatogram-desktop = callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop { };
14745   krane = callPackage ../applications/networking/cluster/krane { };
14747   krita = callPackage ../applications/graphics/krita/wrapper.nix { };
14749   ktimetracker = libsForQt5.callPackage ../applications/office/ktimetracker { };
14751   kubectl-evict-pod = callPackage ../applications/networking/cluster/kubectl-evict-pod {
14752   };
14754   kubeval = callPackage ../applications/networking/cluster/kubeval { };
14756   kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { };
14758   kubernetes = callPackage ../applications/networking/cluster/kubernetes { };
14759   kubectl = callPackage ../applications/networking/cluster/kubernetes/kubectl.nix { };
14760   kubectl-convert = kubectl.convert;
14762   kubectl-view-allocations = callPackage ../applications/networking/cluster/kubectl-view-allocations {
14763     inherit (darwin.apple_sdk.frameworks) Security;
14764   };
14766   kubelogin-oidc = callPackage ../by-name/ku/kubelogin-oidc/package.nix { buildGoModule = buildGo123Module; };
14768   kthxbye = callPackage ../servers/monitoring/prometheus/kthxbye.nix { };
14770   linkerd = callPackage ../applications/networking/cluster/linkerd { };
14771   linkerd_edge = callPackage ../applications/networking/cluster/linkerd/edge.nix { };
14772   linkerd_stable = linkerd;
14774   kuma = callPackage ../applications/networking/cluster/kuma { isFull = true; };
14775   kuma-experimental = callPackage ../applications/networking/cluster/kuma {
14776     isFull = true;
14777     enableGateway = true;
14778     pname = "kuma-experimental";
14779   };
14780   kumactl = callPackage ../applications/networking/cluster/kuma {
14781     components = ["kumactl"];
14782     pname = "kumactl";
14783   };
14784   kuma-cp = callPackage ../applications/networking/cluster/kuma {
14785     components = ["kuma-cp"];
14786     pname = "kuma-cp";
14787   };
14788   kuma-dp = callPackage ../applications/networking/cluster/kuma {
14789     components = ["kuma-dp"];
14790     pname = "kuma-dp";
14791   };
14793   kubernetes-helm = callPackage ../applications/networking/cluster/helm { };
14795   wrapHelm = callPackage ../applications/networking/cluster/helm/wrapper.nix { };
14797   kubernetes-helm-wrapped = wrapHelm kubernetes-helm { };
14799   kubernetes-helmPlugins = recurseIntoAttrs (callPackage ../applications/networking/cluster/helm/plugins { });
14801   kup = libsForQt5.callPackage ../applications/misc/kup { };
14803   timoni = callPackage ../applications/networking/cluster/timoni { };
14805   kvirc = libsForQt5.callPackage ../applications/networking/irc/kvirc { };
14807   ladspaH = callPackage ../applications/audio/ladspa-sdk/ladspah.nix { };
14809   ladspaPlugins = callPackage ../applications/audio/ladspa-plugins {
14810     fftw = fftwSinglePrec;
14811   };
14813   ladspa-sdk = callPackage ../applications/audio/ladspa-sdk { };
14815   ladybird = callPackage ../applications/networking/browsers/ladybird {
14816     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
14817     inherit (darwin.apple_sdk_11_0.frameworks) AppKit Cocoa Foundation OpenGL;
14818   };
14820   lemonbar = callPackage ../applications/window-managers/lemonbar { };
14822   lemonbar-xft = callPackage ../applications/window-managers/lemonbar/xft.nix { };
14824   lenovo-legion = libsForQt5.callPackage ../os-specific/linux/lenovo-legion/app.nix { };
14826   leo-editor = libsForQt5.callPackage ../applications/editors/leo-editor { };
14828   libkiwix = callPackage ../applications/misc/kiwix/lib.nix { };
14830   librecad = libsForQt5.callPackage ../applications/misc/librecad { };
14832   libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { };
14834   libreoffice = hiPrio libreoffice-still;
14835   libreoffice-unwrapped = libreoffice.unwrapped;
14837   libreoffice-qt = hiPrio libreoffice-qt-still;
14838   libreoffice-qt-unwrapped = libreoffice-qt.unwrapped;
14840   libreoffice-qt-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14841     unwrapped = libsForQt5.callPackage ../applications/office/libreoffice {
14842       kdeIntegration = true;
14843       variant = "fresh";
14844     };
14845   });
14846   libreoffice-qt-fresh-unwrapped = libreoffice-qt-fresh.unwrapped;
14848   libreoffice-qt-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14849     unwrapped = libsForQt5.callPackage ../applications/office/libreoffice {
14850       kdeIntegration = true;
14851       variant = "still";
14852     };
14853   });
14854   libreoffice-qt-still-unwrapped = libreoffice-qt-still.unwrapped;
14856   libreoffice-qt6 = hiPrio libreoffice-qt6-still;
14857   libreoffice-qt6-unwrapped = libreoffice-qt6.unwrapped;
14859   libreoffice-qt6-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14860     unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
14861       kdeIntegration = true;
14862       variant = "fresh";
14863     };
14864   });
14865   libreoffice-qt6-fresh-unwrapped = libreoffice-qt6-fresh.unwrapped;
14867   libreoffice-qt6-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14868     unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
14869       kdeIntegration = true;
14870       variant = "still";
14871     };
14872   });
14873   libreoffice-qt6-still-unwrapped = libreoffice-qt-still.unwrapped;
14875   libreoffice-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14876     unwrapped = callPackage ../applications/office/libreoffice {
14877       variant = "fresh";
14878     };
14879   });
14880   libreoffice-fresh-unwrapped = libreoffice-fresh.unwrapped;
14882   libreoffice-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix {
14883     unwrapped = callPackage ../applications/office/libreoffice {
14884       variant = "still";
14885     };
14886   });
14887   libreoffice-still-unwrapped = libreoffice-still.unwrapped;
14889   libreoffice-collabora = callPackage ../applications/office/libreoffice {
14890     variant = "collabora";
14891     withFonts = true;
14892   };
14894   libresprite = callPackage ../applications/editors/libresprite {
14895     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Foundation;
14896   };
14898   libutp = callPackage ../applications/networking/p2p/libutp { };
14899   libutp_3_4 = callPackage ../applications/networking/p2p/libutp/3.4.nix { };
14901   littlegptracker = callPackage ../applications/audio/littlegptracker {
14902     inherit (darwin.apple_sdk.frameworks) Foundation;
14903   };
14905   ledger-web = callPackage ../applications/office/ledger-web { };
14907   lightburn = libsForQt5.callPackage ../applications/graphics/lightburn { };
14909   lighthouse-steamvr = callPackage ../tools/misc/lighthouse-steamvr {
14910     inherit (darwin.apple_sdk.frameworks) AppKit;
14911   };
14913   linphone = libsForQt5.callPackage ../applications/networking/instant-messengers/linphone { };
14915   lmms = libsForQt5.callPackage ../applications/audio/lmms {
14916     lame = null;
14917     libsoundio = null;
14918     portaudio = null;
14919   };
14921   lsp-plugins = callPackage ../applications/audio/lsp-plugins { php = php82; };
14923   luminanceHDR = libsForQt5.callPackage ../applications/graphics/luminance-hdr { };
14925   luddite = with python3Packages; toPythonApplication luddite;
14927   goobook = with python3Packages; toPythonApplication goobook;
14929   lumail = callPackage ../applications/networking/mailreaders/lumail {
14930     lua = lua5_1;
14931   };
14933   lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris { };
14934   lutris = callPackage ../applications/misc/lutris/fhsenv.nix { };
14935   lutris-free = lutris.override {
14936     steamSupport = false;
14937   };
14939   lv2lint = callPackage ../applications/audio/lv2lint/default.nix { };
14941   lxi-tools = callPackage ../tools/networking/lxi-tools { };
14942   lxi-tools-gui = callPackage ../tools/networking/lxi-tools { withGui = true; };
14944   lyx = libsForQt5.callPackage ../applications/misc/lyx { };
14946   magic-wormhole = with python3Packages; toPythonApplication magic-wormhole;
14948   magic-wormhole-rs = callPackage ../tools/networking/magic-wormhole-rs {
14949     inherit (darwin.apple_sdk.frameworks) Security AppKit;
14950   };
14952   magnetophonDSP = lib.recurseIntoAttrs {
14953     CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { };
14954     CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { };
14955     ConstantDetuneChorus  = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { };
14956     faustCompressors =  callPackage ../applications/audio/magnetophonDSP/faustCompressors { };
14957     LazyLimiter = callPackage ../applications/audio/magnetophonDSP/LazyLimiter { };
14958     MBdistortion = callPackage ../applications/audio/magnetophonDSP/MBdistortion { };
14959     pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils  { };
14960     RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
14961     VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
14962     shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand  { };
14963   };
14965   mandelbulber = libsForQt5.callPackage ../applications/graphics/mandelbulber { };
14967   mapmap = libsForQt5.callPackage ../applications/video/mapmap { };
14969   mastodon-bot = nodePackages.mastodon-bot;
14971   matrix-commander = python3Packages.callPackage ../applications/networking/instant-messengers/matrix-commander { };
14973   mbrola = callPackage ../applications/audio/mbrola { };
14975   mbrola-voices = callPackage ../applications/audio/mbrola/voices.nix { };
14977   mdzk = callPackage ../applications/misc/mdzk {
14978     inherit (darwin.apple_sdk.frameworks) CoreServices;
14979   };
14981   mediaelch = mediaelch-qt5;
14982   mediaelch-qt5 = libsForQt5.callPackage ../applications/misc/mediaelch { };
14983   mediaelch-qt6 = qt6Packages.callPackage ../applications/misc/mediaelch { };
14985   melmatcheq.lv2 = callPackage ../applications/audio/melmatcheq.lv2 { };
14987   mendeley = libsForQt5.callPackage ../applications/office/mendeley {
14988     gconf = gnome2.GConf;
14989   };
14991   menyoki = callPackage ../applications/graphics/menyoki {
14992     inherit (darwin.apple_sdk.frameworks) AppKit;
14993   };
14995   mercurial = callPackage ../applications/version-management/mercurial {
14996     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
14997   };
14999   sapling = callPackage ../applications/version-management/sapling {
15000     inherit (darwin.apple_sdk.frameworks) Cocoa CoreFoundation CoreGraphics CoreServices Security WebKit;
15001   };
15003   mercurialFull = mercurial.override { fullBuild = true; };
15005   meshcentral = callPackage ../tools/admin/meshcentral { };
15007   meshlab = libsForQt5.callPackage ../applications/graphics/meshlab { };
15009   michabo = libsForQt5.callPackage ../applications/misc/michabo { };
15011   midori = wrapFirefox midori-unwrapped { };
15013   miniaudicle = qt6Packages.callPackage ../applications/audio/miniaudicle { };
15015   minidsp = callPackage ../applications/audio/minidsp {
15016     inherit (darwin.apple_sdk.frameworks) AppKit IOKit;
15017   };
15019   minicom = callPackage ../tools/misc/minicom {
15020     inherit (darwin.apple_sdk.frameworks) IOKit;
15021   };
15023   minikube = callPackage ../applications/networking/cluster/minikube {
15024     inherit (darwin.apple_sdk.frameworks) vmnet;
15025   };
15027   minitube = libsForQt5.callPackage ../applications/video/minitube { };
15029   mixxx = libsForQt5.callPackage ../applications/audio/mixxx { };
15031   mldonkey = callPackage ../applications/networking/p2p/mldonkey {
15032     ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
15033   };
15035   mmex = callPackage ../applications/office/mmex {
15036     wxGTK32 = wxGTK32.override {
15037       withWebKit = true;
15038     };
15039   };
15041   mmlgui = callPackage ../applications/audio/mmlgui {
15042     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
15043     libvgm = libvgm.override {
15044       withAllEmulators = false;
15045       emulators = [
15046         "_PRESET_SMD"
15047       ];
15048       enableLibplayer = false;
15049     };
15050   };
15052   moc = callPackage ../applications/audio/moc {
15053     inherit (darwin.apple_sdk.frameworks) CoreServices;
15054   };
15056   xmrig = darwin.apple_sdk_11_0.callPackage ../applications/misc/xmrig { };
15058   xmrig-mo = darwin.apple_sdk_11_0.callPackage ../applications/misc/xmrig/moneroocean.nix { };
15060   xmrig-proxy = darwin.apple_sdk_11_0.callPackage ../applications/misc/xmrig/proxy.nix { };
15062   monotone = callPackage ../applications/version-management/monotone {
15063     lua = lua5;
15064   };
15066   monotoneViz = callPackage ../applications/version-management/monotone-viz {
15067     ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
15068   };
15070   monitor = callPackage ../applications/system/monitor {
15071     libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
15072   };
15074   moolticute = libsForQt5.callPackage ../applications/misc/moolticute { };
15076   mopidyPackages = (callPackages ../applications/audio/mopidy {
15077     python = python3;
15078   }) // { __attrsFailEvaluation = true; };
15080   inherit (mopidyPackages)
15081     mopidy
15082     mopidy-bandcamp
15083     mopidy-iris
15084     mopidy-jellyfin
15085     mopidy-local
15086     mopidy-moped
15087     mopidy-mopify
15088     mopidy-mpd
15089     mopidy-mpris
15090     mopidy-muse
15091     mopidy-musicbox-webclient
15092     mopidy-notify
15093     mopidy-podcast
15094     mopidy-scrobbler
15095     mopidy-somafm
15096     mopidy-soundcloud
15097     mopidy-spotify
15098     mopidy-subidy
15099     mopidy-tidal
15100     mopidy-tunein
15101     mopidy-youtube
15102     mopidy-ytmusic;
15104   edgetx = libsForQt5.callPackage ../applications/misc/edgetx { };
15106   mpg123 = callPackage ../applications/audio/mpg123 {
15107     inherit (darwin.apple_sdk.frameworks) AudioUnit AudioToolbox;
15108     jack = libjack2;
15109   };
15111   libmpg123 = mpg123.override {
15112     libOnly = true;
15113     withConplay = false;
15114   };
15116   nbstripout = callPackage ../applications/version-management/nbstripout { };
15118   pragha = libsForQt5.callPackage ../applications/audio/pragha { };
15120   rofi-emoji = (callPackage ../applications/misc/rofi-emoji { }).v3;
15121   rofi-emoji-wayland = (
15122     callPackage ../applications/misc/rofi-emoji {
15123       rofi-unwrapped = rofi-wayland-unwrapped;
15124     }
15125   ).v4;
15127   rofi-rbw = python3Packages.callPackage ../applications/misc/rofi-rbw {
15128     waylandSupport = false;
15129     x11Support = false;
15130   };
15132   rofi-rbw-wayland = python3Packages.callPackage ../applications/misc/rofi-rbw {
15133     waylandSupport = true;
15134   };
15136   rofi-rbw-x11 = python3Packages.callPackage ../applications/misc/rofi-rbw {
15137     x11Support = true;
15138   };
15140   seamly2d = libsForQt5.callPackage ../applications/graphics/seamly2d { };
15142   # a somewhat more maintained fork of ympd
15143   memento = qt6Packages.callPackage ../applications/video/memento { };
15145   mpc-qt = qt6Packages.callPackage ../applications/video/mpc-qt { };
15147   mplayer = callPackage ../applications/video/mplayer ({
15148     libdvdnav = libdvdnav_4_2_1;
15149   } // (config.mplayer or {}));
15151   mpv-unwrapped = callPackage ../applications/video/mpv {
15152     stdenv = if stdenv.hostPlatform.isDarwin then swiftPackages.stdenv else stdenv;
15153   };
15155   # Wrap avoiding rebuild
15156   mpv = mpv-unwrapped.wrapper { mpv = mpv-unwrapped; };
15158   mpvScripts = mpv-unwrapped.scripts;
15160   shaka-packager = callPackage ../by-name/sh/shaka-packager/package.nix {
15161     abseil-cpp = abseil-cpp_202401;
15162   };
15164   mu-repo = python3Packages.callPackage ../applications/misc/mu-repo { };
15166   murmur = (callPackages ../applications/networking/mumble {
15167       avahi = avahi-compat;
15168       pulseSupport = config.pulseaudio or false;
15169       iceSupport = config.murmur.iceSupport or true;
15170     }).murmur;
15172   mumble = (callPackages ../applications/networking/mumble {
15173       avahi = avahi-compat;
15174       jackSupport = config.mumble.jackSupport or false;
15175       speechdSupport = config.mumble.speechdSupport or false;
15176     }).mumble;
15178   mumble_overlay = callPackage ../applications/networking/mumble/overlay.nix {
15179     mumble_i686 = if stdenv.hostPlatform.system == "x86_64-linux"
15180       then pkgsi686Linux.mumble
15181       else null;
15182   };
15184   mup = callPackage ../applications/audio/mup {
15185     autoreconfHook = buildPackages.autoreconfHook269;
15186   };
15188   musescore = qt6.callPackage ../applications/audio/musescore { };
15190   mwic = callPackage ../applications/misc/mwic {
15191     pythonPackages = python3Packages;
15192   };
15194   neomutt = darwin.apple_sdk_11_0.callPackage ../applications/networking/mailreaders/neomutt { };
15196   natron = libsForQt5.callPackage ../applications/video/natron { };
15198   netmaker = callPackage ../applications/networking/netmaker {subPackages = ["."];};
15199   netmaker-full = callPackage ../applications/networking/netmaker { };
15201   ninja_1_11 = callPackage ../by-name/ni/ninja/package.nix { ninjaRelease = "1.11"; };
15203   nootka = qt5.callPackage ../applications/audio/nootka { };
15205   opcua-client-gui = libsForQt5.callPackage ../misc/opcua-client-gui { };
15207   ostinato = libsForQt5.callPackage ../applications/networking/ostinato {
15208     protobuf = protobuf_21;
15209   };
15211   p4 = callPackage ../applications/version-management/p4 {
15212     inherit (darwin.apple_sdk.frameworks) CoreServices Foundation Security;
15213   };
15214   p4v = qt6Packages.callPackage ../applications/version-management/p4v { };
15216   pc-ble-driver = callPackage ../development/libraries/pc-ble-driver {
15217     inherit (darwin.apple_sdk.frameworks) IOKit;
15218   };
15220   pcmanfm-qt = lxqt.pcmanfm-qt;
15222   pdfmixtool = libsForQt5.callPackage ../applications/office/pdfmixtool { };
15224   pijuice = with python3Packages; toPythonApplication pijuice;
15226   pinegrow6 = callPackage ../applications/editors/pinegrow { pinegrowVersion = "6"; };
15228   pinegrow = callPackage ../applications/editors/pinegrow { };
15230   pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { };
15232   playonlinux = callPackage ../applications/misc/playonlinux
15233     { stdenv = stdenv_32bit; };
15235   pleroma-bot = python3Packages.callPackage ../development/python-modules/pleroma-bot { };
15237   pnglatex = with python3Packages; toPythonApplication pnglatex;
15239   polybarFull = polybar.override {
15240     alsaSupport = true;
15241     githubSupport = true;
15242     mpdSupport = true;
15243     pulseSupport  = true;
15244     iwSupport = false;
15245     nlSupport = true;
15246     i3Support = true;
15247   };
15249   polyphone = qt6.callPackage ../applications/audio/polyphone { };
15251   roxctl = callPackage ../applications/networking/cluster/roxctl {
15252   };
15254   rssguard = libsForQt5.callPackage ../applications/networking/feedreaders/rssguard { };
15256   scx = recurseIntoAttrs (callPackage ../os-specific/linux/scx { });
15258   shogun = callPackage ../applications/science/machine-learning/shogun {
15259     protobuf = protobuf_21;
15260   };
15262   smtube = libsForQt5.callPackage ../applications/video/smtube { };
15264   softmaker-office = callPackage ../applications/office/softmaker/softmaker_office.nix { };
15266   synapse-bt = callPackage ../applications/networking/p2p/synapse-bt {
15267     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
15268   };
15270   taxi-cli = with python3Packages; toPythonApplication taxi;
15272   mpop = callPackage ../applications/networking/mpop {
15273     inherit (darwin.apple_sdk.frameworks) Security;
15274   };
15276   msmtp = callPackage ../applications/networking/msmtp {
15277     inherit (darwin.apple_sdk.frameworks) Security;
15278     autoreconfHook = buildPackages.autoreconfHook269;
15279   };
15281   imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix {
15282     lua = lua5;
15283   };
15285   pdfsam-basic = callPackage ../applications/misc/pdfsam-basic {
15286     jdk21 = openjdk21.override { enableJavaFX = true; };
15287   };
15289   mupdf-headless = mupdf.override {
15290     enableX11 = false;
15291     enableGL = false;
15292   };
15294   muso = callPackage ../applications/audio/muso {
15295     inherit (darwin.apple_sdk.frameworks) CoreServices;
15296   };
15298   diffpdf = libsForQt5.callPackage ../applications/misc/diffpdf { };
15300   diff-pdf = callPackage ../applications/misc/diff-pdf {
15301     wxGTK = wxGTK32;
15302     inherit (darwin.apple_sdk.frameworks) Cocoa;
15303   };
15305   mypaint-brushes1 = callPackage ../development/libraries/mypaint-brushes/1.0.nix { };
15307   mypaint-brushes = callPackage ../development/libraries/mypaint-brushes { };
15309   mythtv = libsForQt5.callPackage ../applications/video/mythtv { };
15311   nano = callPackage ../applications/editors/nano { };
15313   ncdu = callPackage ../tools/misc/ncdu { };
15315   ncdu_1 = callPackage ../tools/misc/ncdu/1.nix { };
15317   notepad-next = libsForQt5.callPackage ../applications/editors/notepad-next { };
15319   notepadqq = libsForQt5.callPackage ../applications/editors/notepadqq { };
15321   notmuch = callPackage ../applications/networking/mailreaders/notmuch {
15322     pythonPackages = python3Packages;
15323   };
15326   notmuch-mutt = callPackage ../applications/networking/mailreaders/notmuch/mutt.nix { };
15328   muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { };
15330   nufraw = callPackage ../applications/graphics/nufraw { };
15332   nufraw-thumbnailer = callPackage ../applications/graphics/nufraw {
15333     addThumbnailer = true;
15334   };
15336   gnome-obfuscate = callPackage ../applications/graphics/gnome-obfuscate {
15337     inherit (darwin.apple_sdk.frameworks) Foundation;
15338   };
15340   obs-studio = qt6Packages.callPackage ../applications/video/obs-studio {
15341     ffmpeg = ffmpeg-full;
15342   };
15344   obs-studio-plugins = recurseIntoAttrs (callPackage ../applications/video/obs-studio/plugins {});
15345   wrapOBS = callPackage ../applications/video/obs-studio/wrapper.nix { };
15347   omegat = callPackage ../applications/misc/omegat.nix { };
15349   inherit (callPackage ../applications/networking/onionshare { }) onionshare onionshare-gui;
15351   openambit = qt5.callPackage ../applications/misc/openambit { };
15353   openbox-menu = callPackage ../applications/misc/openbox-menu {
15354     stdenv = gccStdenv;
15355   };
15357   openbrf = libsForQt5.callPackage ../applications/misc/openbrf { };
15359   opencpn = callPackage ../applications/misc/opencpn {
15360     inherit (darwin) DarwinTools;
15361     inherit (darwin.apple_sdk.frameworks) AppKit;
15362   };
15364   openimageio = darwin.apple_sdk_11_0.callPackage ../development/libraries/openimageio {
15365     openexr = openexr_3;
15366   };
15368   open-music-kontrollers = lib.recurseIntoAttrs {
15369     eteroj = callPackage ../applications/audio/open-music-kontrollers/eteroj.nix { };
15370     jit = callPackage ../applications/audio/open-music-kontrollers/jit.nix { };
15371     mephisto = callPackage ../applications/audio/open-music-kontrollers/mephisto.nix { };
15372     midi_matrix = callPackage ../applications/audio/open-music-kontrollers/midi_matrix.nix { };
15373     moony = callPackage ../applications/audio/open-music-kontrollers/moony.nix { };
15374     orbit = callPackage ../applications/audio/open-music-kontrollers/orbit.nix { };
15375     patchmatrix = callPackage ../applications/audio/open-music-kontrollers/patchmatrix.nix { };
15376     router = callPackage ../applications/audio/open-music-kontrollers/router.nix { };
15377     sherlock = callPackage ../applications/audio/open-music-kontrollers/sherlock.nix { };
15378     synthpod = callPackage ../applications/audio/open-music-kontrollers/synthpod.nix { };
15379     vm = callPackage ../applications/audio/open-music-kontrollers/vm.nix { };
15380   };
15382   openrsync = darwin.apple_sdk_11_0.callPackage ../applications/networking/sync/openrsync { };
15384   openscad = libsForQt5.callPackage ../applications/graphics/openscad { };
15386   opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client { };
15388   opentoonz = libsForQt5.callPackage ../applications/graphics/opentoonz { };
15390   opentabletdriver = callPackage ../tools/X11/opentabletdriver { };
15392   opentx = libsForQt5.callPackage ../applications/misc/opentx { };
15394   organicmaps = qt6Packages.callPackage ../applications/misc/organicmaps { };
15396   owofetch = callPackage ../tools/misc/owofetch {
15397     inherit (darwin.apple_sdk.frameworks) Foundation DiskArbitration;
15398   };
15400   vivaldi = callPackage ../applications/networking/browsers/vivaldi { };
15402   vivaldi-ffmpeg-codecs = callPackage ../applications/networking/browsers/vivaldi/ffmpeg-codecs.nix { };
15404   libopenmpt = callPackage ../development/libraries/audio/libopenmpt { };
15406   openrazer-daemon = python3Packages.toPythonApplication python3Packages.openrazer-daemon;
15408   orpie = callPackage ../applications/misc/orpie {
15409     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
15410   };
15412   osmscout-server = libsForQt5.callPackage ../applications/misc/osmscout-server {
15413     protobuf = protobuf_21.override {
15414       abseil-cpp = abseil-cpp_202103.override {
15415         cxxStandard = "17";
15416       };
15417     };
15418   };
15420   palemoon-bin = callPackage ../applications/networking/browsers/palemoon/bin.nix { };
15422   pantalaimon = callPackage ../applications/networking/instant-messengers/pantalaimon { };
15424   pantalaimon-headless = callPackage ../applications/networking/instant-messengers/pantalaimon {
15425     enableDbusUi = false;
15426   };
15428   parsec-bin = callPackage ../applications/misc/parsec/bin.nix { };
15430   paraview = libsForQt5.callPackage ../applications/graphics/paraview { };
15432   pekwm = callPackage ../by-name/pe/pekwm/package.nix {
15433     awk = gawk;
15434     grep = gnugrep;
15435     sed = gnused;
15436   };
15438   pencil = callPackage ../applications/graphics/pencil {
15439   };
15441   petrifoo = callPackage ../applications/audio/petrifoo {
15442     inherit (gnome2) libgnomecanvas;
15443   };
15445   pdfpc = callPackage ../applications/misc/pdfpc {
15446     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-libav;
15447   };
15449   peaclock = callPackage ../applications/misc/peaclock {
15450     stdenv = gccStdenv;
15451   };
15453   peertube = callPackage ../servers/peertube {
15454     nodejs = nodejs_18;
15455   };
15457   photoqt = callPackage ../by-name/ph/photoqt/package.nix {
15458     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
15459   };
15461   photoflare = libsForQt5.callPackage ../applications/graphics/photoflare { };
15463   phototonic = libsForQt5.callPackage ../applications/graphics/phototonic { };
15465   pianobooster = qt5.callPackage ../applications/audio/pianobooster { };
15467   pianoteq = callPackage ../applications/audio/pianoteq { };
15469   pidginPackages = recurseIntoAttrs (callPackage ../applications/networking/instant-messengers/pidgin/pidgin-plugins { });
15471   inherit (pidginPackages) pidgin;
15473   pithos = callPackage ../applications/audio/pithos {
15474     pythonPackages = python3Packages;
15475   };
15477   pineapple-pictures = qt6Packages.callPackage ../applications/graphics/pineapple-pictures { };
15479   plater = libsForQt5.callPackage ../applications/misc/plater { };
15481   plexamp = callPackage ../applications/audio/plexamp { };
15483   plex-media-player = libsForQt5.callPackage ../applications/video/plex-media-player { };
15485   plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { };
15487   plover = recurseIntoAttrs (libsForQt5.callPackage ../applications/misc/plover { });
15489   pokefinder = qt6Packages.callPackage ../tools/games/pokefinder { };
15491   pomodoro = callPackage ../applications/misc/pomodoro {
15492     inherit (darwin.apple_sdk.frameworks) Foundation;
15493   };
15495   pothos = libsForQt5.callPackage ../applications/radio/pothos { };
15497   qiv = callPackage ../applications/graphics/qiv {
15498     imlib2 = imlib2Full;
15499   };
15501   processing = callPackage ../applications/graphics/processing {
15502     jdk = jdk17;
15503   };
15505   # perhaps there are better apps for this task? It's how I had configured my preivous system.
15506   # And I don't want to rewrite all rules
15507   profanity = callPackage ../applications/networking/instant-messengers/profanity ({
15508   } // (config.profanity or {}));
15510   protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
15511   protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
15513   protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
15515   psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
15517   psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { };
15519   pulseview = libsForQt5.callPackage ../applications/science/electronics/pulseview { };
15521   puredata = callPackage ../applications/audio/puredata { };
15522   puredata-with-plugins = plugins: callPackage ../applications/audio/puredata/wrapper.nix { inherit plugins; };
15524   pure-maps = libsForQt5.callPackage ../applications/misc/pure-maps { };
15526   qbittorrent = qt6Packages.callPackage ../applications/networking/p2p/qbittorrent {
15527     inherit (darwin.apple_sdk.frameworks) Cocoa;
15528   };
15529   qbittorrent-nox = qbittorrent.override { guiSupport = false; };
15531   qcad = libsForQt5.callPackage ../applications/misc/qcad { };
15533   qcomicbook = libsForQt5.callPackage ../applications/graphics/qcomicbook { };
15535   qctools = libsForQt5.callPackage ../applications/video/qctools { };
15537   qelectrotech = libsForQt5.callPackage ../applications/misc/qelectrotech { };
15539   eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { };
15541   qemu = callPackage ../applications/virtualization/qemu {
15542     inherit (darwin.apple_sdk_12_3.frameworks) CoreServices Cocoa Hypervisor Kernel vmnet;
15543     inherit (darwin.stubs) rez setfile;
15544     inherit (darwin) sigtool;
15545     stdenv =
15546       if stdenv.hostPlatform.isDarwin then
15547         overrideSDK stdenv {
15548           darwinSdkVersion = "12.3";
15549           darwinMinVersion = "12.0";
15550         }
15551       else
15552         stdenv;
15553   };
15555   qemu-python-utils = python3Packages.toPythonApplication (
15556     python3Packages.qemu.override {
15557       fuseSupport = true;
15558       tuiSupport = true;
15559     }
15560   );
15562   qemu-utils = qemu.override {
15563     toolsOnly = true;
15564   };
15566   # variant of qemu building user space emulator only - intended to be used from pkgsStatic
15567   qemu-user = qemu.override {
15568     userOnly = true;
15569   };
15571   canokey-qemu = callPackage ../applications/virtualization/qemu/canokey-qemu.nix { };
15573   wrapQemuBinfmtP = callPackage ../applications/virtualization/qemu/binfmt-p-wrapper.nix { };
15575   qjackctl = libsForQt5.callPackage ../applications/audio/qjackctl { };
15577   qimgv = libsForQt5.callPackage ../applications/graphics/qimgv { };
15579   qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { };
15581   qmplay2-qt5 = qmplay2.override { qtVersion = "5"; };
15582   qmplay2-qt6 = qmplay2.override { qtVersion = "6"; };
15584   qmidinet = libsForQt5.callPackage ../applications/audio/qmidinet { };
15586   qmmp = qt6Packages.callPackage ../applications/audio/qmmp { };
15588   qnotero = libsForQt5.callPackage ../applications/office/qnotero { };
15590   qpwgraph = qt6Packages.callPackage ../applications/audio/qpwgraph { };
15592   qsampler = libsForQt5.callPackage ../applications/audio/qsampler { };
15594   qscreenshot = libsForQt5.callPackage ../applications/graphics/qscreenshot { };
15596   qsstv = qt5.callPackage ../applications/radio/qsstv { };
15598   qsyncthingtray = libsForQt5.callPackage ../applications/misc/qsyncthingtray { };
15600   qstopmotion = libsForQt5.callPackage ../applications/video/qstopmotion {
15601     guvcview = guvcview.override {
15602       useQt = true;
15603       useGtk = false;
15604     };
15605   };
15607   qsudo = libsForQt5.callPackage ../applications/misc/qsudo { };
15609   qsynth = libsForQt5.callPackage ../applications/audio/qsynth { };
15611   qtbitcointrader = libsForQt5.callPackage ../applications/misc/qtbitcointrader { };
15613   qtchan = libsForQt5.callPackage ../applications/networking/browsers/qtchan { };
15615   qtemu = libsForQt5.callPackage ../applications/virtualization/qtemu { };
15617   qtox = libsForQt5.callPackage ../applications/networking/instant-messengers/qtox {
15618     inherit (darwin.apple_sdk.frameworks) AVFoundation;
15619   };
15621   qtpass = libsForQt5.callPackage ../applications/misc/qtpass { };
15623   quassel = libsForQt5.callPackage ../applications/networking/irc/quassel {
15624     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
15625   };
15627   quasselClient = quassel.override {
15628     monolithic = false;
15629     client = true;
15630     tag = "-client-kf5";
15631   };
15633   quasselDaemon = quassel.override {
15634     monolithic = false;
15635     enableDaemon = true;
15636     withKDE = false;
15637     tag = "-daemon-qt5";
15638   };
15640   quiterss = libsForQt5.callPackage ../applications/networking/newsreaders/quiterss { };
15642   quodlibet = callPackage ../applications/audio/quodlibet {
15643     kakasi = null;
15644     keybinder3 = null;
15645     libappindicator-gtk3 = null;
15646     libmodplug = null;
15647     libsoup = libsoup_3;
15648   };
15650   quodlibet-without-gst-plugins = quodlibet.override {
15651     libsoup = libsoup_3;
15652     tag = "-without-gst-plugins";
15653     withGstPlugins = false;
15654   };
15656   quodlibet-xine = quodlibet.override {
15657     libsoup = libsoup_3;
15658     tag = "-xine";
15659     withGstreamerBackend = false;
15660     withXineBackend = true;
15661   };
15663   quodlibet-full = quodlibet.override {
15664     inherit gtksourceview webkitgtk_4_0;
15665     kakasi = kakasi;
15666     keybinder3 = keybinder3;
15667     libappindicator-gtk3 = libappindicator-gtk3;
15668     libmodplug = libmodplug;
15669     libsoup = libsoup_3;
15670     tag = "-full";
15671     withDbusPython = true;
15672     withMusicBrainzNgs = true;
15673     withPahoMqtt = true;
15674     withPypresence = true;
15675     withSoco = true;
15676   };
15678   quodlibet-xine-full = quodlibet-full.override {
15679     libsoup = libsoup_3;
15680     tag = "-xine-full";
15681     withGstreamerBackend = false;
15682     withXineBackend = true;
15683   };
15685   qutebrowser = callPackage ../applications/networking/browsers/qutebrowser {
15686     inherit (__splicedPackages.qt6Packages) qtbase qtwebengine wrapQtAppsHook qtwayland;
15687   };
15689   qutebrowser-qt5 = callPackage ../applications/networking/browsers/qutebrowser {
15690     inherit (__splicedPackages.libsForQt5) qtbase qtwebengine wrapQtAppsHook qtwayland;
15691   };
15693   rakarrack = callPackage ../applications/audio/rakarrack {
15694     fltk = fltk13;
15695   };
15697   radiotray-ng = callPackage ../applications/audio/radiotray-ng {
15698     wxGTK = wxGTK32;
15699   };
15701   rapid-photo-downloader = libsForQt5.callPackage ../applications/graphics/rapid-photo-downloader { };
15703   rawtherapee = callPackage ../applications/graphics/rawtherapee {
15704     fftw = fftwSinglePrec;
15705   };
15707   rclone = callPackage ../applications/networking/sync/rclone { };
15709   rclone-browser = libsForQt5.callPackage ../applications/networking/sync/rclone/browser.nix { };
15711   rdedup = callPackage ../tools/backup/rdedup {
15712     inherit (darwin.apple_sdk.frameworks) Security;
15713   };
15715   reaper = callPackage ../applications/audio/reaper {
15716     jackLibrary = libjack2; # Another option is "pipewire.jack".
15717     ffmpeg = ffmpeg_4-headless;
15718   };
15720   reddsaver = callPackage ../applications/misc/reddsaver {
15721     inherit (darwin.apple_sdk.frameworks) Security;
15722   };
15724   rednotebook = python3Packages.callPackage ../applications/editors/rednotebook { };
15726   restique = libsForQt5.callPackage ../applications/backup/restique { };
15728   retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { };
15730   rgp = libsForQt5.callPackage ../development/tools/rgp { };
15732   ripcord = if stdenv.hostPlatform.isLinux then
15733     qt5.callPackage ../applications/networking/instant-messengers/ripcord { }
15734   else
15735     callPackage ../applications/networking/instant-messengers/ripcord/darwin.nix { };
15737   inherit (callPackage ../applications/networking/cluster/rke2 { }) rke2_stable rke2_latest rke2_testing;
15738   rke2 = rke2_stable;
15740   rofi-unwrapped = callPackage ../applications/misc/rofi { };
15741   rofi = callPackage ../applications/misc/rofi/wrapper.nix { };
15742   rofi-wayland-unwrapped = callPackage ../applications/misc/rofi/wayland.nix { };
15743   rofi-wayland = callPackage ../applications/misc/rofi/wrapper.nix {
15744     rofi-unwrapped = rofi-wayland-unwrapped;
15745   };
15747   rofi-pass = callPackage ../tools/security/pass/rofi-pass.nix { };
15748   rofi-pass-wayland = callPackage ../tools/security/pass/rofi-pass.nix {
15749     backend = "wayland";
15750   };
15752   rstudio = libsForQt5.callPackage ../applications/editors/rstudio {
15753     jdk = jdk8;
15754   };
15756   rstudio-server = rstudio.override { server = true; };
15758   rsync = callPackage ../applications/networking/sync/rsync (config.rsync or {});
15759   rrsync = callPackage ../applications/networking/sync/rsync/rrsync.nix { };
15761   inherit (callPackages ../applications/radio/rtl-sdr { })
15762     rtl-sdr-librtlsdr
15763     rtl-sdr-osmocom
15764     rtl-sdr-blog;
15766   rtl-sdr = rtl-sdr-blog;
15768   rucredstash = callPackage ../tools/security/rucredstash {
15769     inherit (darwin.apple_sdk.frameworks) Security;
15770   };
15772   rusty-psn-gui = rusty-psn.override { withGui = true; };
15774   rymdport = callPackage ../applications/networking/rymdport {
15775     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
15776   };
15778   savvycan = libsForQt5.callPackage ../applications/networking/sniffers/savvycan {};
15780   sayonara = libsForQt5.callPackage ../applications/audio/sayonara { };
15782   scantailor-advanced = libsForQt5.callPackage ../applications/graphics/scantailor/advanced.nix { };
15784   scantailor-universal = libsForQt5.callPackage ../applications/graphics/scantailor/universal.nix { };
15786   scribus_1_5 = libsForQt5.callPackage ../applications/office/scribus/default.nix { };
15787   scribus = scribus_1_5;
15789   seafile-client = libsForQt5.callPackage ../applications/networking/seafile-client { };
15791   seq66 = qt5.callPackage ../applications/audio/seq66 { };
15793   sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { };
15795   sommelier = callPackage ../applications/window-managers/sommelier { };
15797   spotify-qt = libsForQt5.callPackage ../applications/audio/spotify-qt { };
15799   squishyball = callPackage ../applications/audio/squishyball {
15800     ncurses = ncurses5;
15801   };
15803   sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { };
15805   stag = callPackage ../applications/misc/stag {
15806     curses = ncurses;
15807   };
15809   sweethome3d = recurseIntoAttrs (
15810     (callPackage ../applications/misc/sweethome3d { }) //
15811     (callPackage ../applications/misc/sweethome3d/editors.nix {
15812       sweethome3dApp = sweethome3d.application;
15813     })
15814   );
15816   sxiv = callPackage ../applications/graphics/sxiv {
15817     imlib2 = imlib2Full;
15818   };
15820   nsxiv = callPackage ../by-name/ns/nsxiv/package.nix {
15821     imlib2 = imlib2Full;
15822   };
15824   dropbox = callPackage ../applications/networking/dropbox { };
15826   dropbox-cli = callPackage ../applications/networking/dropbox/cli.nix { };
15828   maestral = with python3Packages; toPythonApplication maestral;
15830   maestral-gui = qt6Packages.callPackage ../applications/networking/maestral-qt { };
15832   myfitnesspal = with python3Packages; toPythonApplication myfitnesspal;
15834   libstrangle = callPackage ../tools/X11/libstrangle {
15835     stdenv = stdenv_32bit;
15836   };
15838   lightdm = libsForQt5.callPackage ../applications/display-managers/lightdm { };
15840   lightdm_qt = lightdm.override { withQt5 = true; };
15842   lightdm-gtk-greeter = callPackage ../applications/display-managers/lightdm/gtk-greeter.nix {
15843     inherit (xfce) xfce4-dev-tools;
15844   };
15846   ly = callPackage ../applications/display-managers/ly { };
15848   curaengine_stable = callPackage ../applications/misc/curaengine/stable.nix { };
15850   curaengine = callPackage ../applications/misc/curaengine {
15851     inherit (python3.pkgs) libarcus;
15852     protobuf = protobuf_21;
15853   };
15855   cura = libsForQt5.callPackage ../applications/misc/cura { };
15857   curaPlugins = callPackage ../applications/misc/cura/plugins.nix { };
15859   prusa-slicer = darwin.apple_sdk_11_0.callPackage ../applications/misc/prusa-slicer {
15860     # Build with clang even on Linux, because GCC uses absolutely obscene amounts of memory
15861     # on this particular code base (OOM with 32GB memory and --cores 16 on GCC, succeeds
15862     # with --cores 32 on clang).
15863     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK llvmPackages.stdenv "11.0" else llvmPackages.stdenv;
15864   };
15866   super-slicer = darwin.apple_sdk_11_0.callPackage ../applications/misc/prusa-slicer/super-slicer.nix { };
15868   super-slicer-beta = super-slicer.beta;
15870   super-slicer-latest = super-slicer.latest;
15872   bambu-studio = callPackage ../applications/misc/bambu-studio { };
15874   orca-slicer = callPackage ../applications/misc/bambu-studio/orca-slicer.nix {};
15876   skrooge = libsForQt5.callPackage ../applications/office/skrooge { };
15878   smartdeblur = libsForQt5.callPackage ../applications/graphics/smartdeblur { };
15880   snd = darwin.apple_sdk_11_0.callPackage ../applications/audio/snd {
15881     inherit (darwin.apple_sdk_11_0.frameworks) CoreServices CoreMIDI;
15882   };
15884   soci = callPackage ../development/libraries/soci { };
15886   socialscan = with python3.pkgs; toPythonApplication socialscan;
15888   sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { };
15890   sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { };
15892   soulseekqt = libsForQt5.callPackage ../applications/networking/p2p/soulseekqt { };
15894   sox = callPackage ../applications/misc/audio/sox {
15895     inherit (darwin.apple_sdk.frameworks) CoreAudio;
15896   };
15898   spek = callPackage ../applications/audio/spek {
15899     autoreconfHook = buildPackages.autoreconfHook269;
15900   };
15902   psst = callPackage ../applications/audio/psst { };
15904   squeezelite-pulse = callPackage ../by-name/sq/squeezelite/package.nix {
15905     audioBackend = "pulse";
15906   };
15908   inherit (ocaml-ng.ocamlPackages) stog;
15910   stumpwm = sbclPackages.stumpwm;
15912   stumpwm-unwrapped = sbclPackages.stumpwm-unwrapped;
15914   sublime3Packages = recurseIntoAttrs (callPackage ../applications/editors/sublime/3/packages.nix { });
15916   sublime3 = sublime3Packages.sublime3;
15918   sublime3-dev = sublime3Packages.sublime3-dev;
15920   inherit (recurseIntoAttrs (callPackage ../applications/editors/sublime/4/packages.nix { }))
15921     sublime4
15922     sublime4-dev;
15924   inherit (callPackage ../applications/version-management/sublime-merge {})
15925     sublime-merge
15926     sublime-merge-dev;
15928   inherit (callPackages ../applications/version-management/subversion {
15929     sasl = cyrus_sasl;
15930     inherit (darwin.apple_sdk.frameworks) CoreServices Security;
15931   }) subversion;
15933   subversionClient = subversion.override {
15934     bdbSupport = false;
15935     perlBindings = true;
15936     pythonBindings = true;
15937   };
15939   surf = callPackage ../applications/networking/browsers/surf { gtk = gtk2; };
15941   surge = callPackage ../applications/audio/surge {
15942     git = gitMinimal;
15943   };
15945   survex = callPackage ../applications/misc/survex {
15946     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
15947   };
15949   supersonic-wayland = supersonic.override {
15950     waylandSupport = true;
15951   };
15953   sylpheed = callPackage ../applications/networking/mailreaders/sylpheed {
15954     inherit (darwin.apple_sdk.frameworks) Foundation;
15955   };
15957   syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { };
15959   syncplay-nogui = syncplay.override { enableGUI = false; };
15961   inherit (callPackages ../applications/networking/syncthing {
15962     inherit (darwin) autoSignDarwinBinariesHook;
15963    })
15964     syncthing
15965     syncthing-discovery
15966     syncthing-relay;
15968   syncthingtray = kdePackages.callPackage ../applications/misc/syncthingtray {
15969     # renamed in KF5 -> KF6
15970     plasma-framework = kdePackages.libplasma;
15971   };
15972   syncthingtray-minimal = syncthingtray.override {
15973     webviewSupport = false;
15974     jsSupport = false;
15975     kioPluginSupport = false;
15976     plasmoidSupport = false;
15977     systemdSupport = true;
15978   };
15980   synergy = libsForQt5.callPackage ../applications/misc/synergy {
15981     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
15982     inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices Carbon Cocoa CoreServices ScreenSaver UserNotifications;
15983   };
15985   synergyWithoutGUI = synergy.override { withGUI = false; };
15987   tabbed = callPackage ../applications/window-managers/tabbed {
15988     # if you prefer a custom config, write the config.h in tabbed.config.h
15989     # and enable
15990     # customConfig = builtins.readFile ./tabbed.config.h;
15991   };
15993   taffybar = callPackage ../applications/window-managers/taffybar {
15994     inherit (haskellPackages) ghcWithPackages taffybar;
15995   };
15997   tagainijisho = libsForQt5.callPackage ../applications/office/tagainijisho { };
15999   tamgamp.lv2 = callPackage ../applications/audio/tamgamp.lv2 { };
16001   teamspeak5_client = callPackage ../applications/networking/instant-messengers/teamspeak/client5.nix { };
16002   teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { };
16004   taskjuggler = callPackage ../applications/misc/taskjuggler { };
16006   telegram-desktop = kdePackages.callPackage ../applications/networking/instant-messengers/telegram/telegram-desktop {
16007     stdenv = if stdenv.hostPlatform.isDarwin
16008       then llvmPackages_19.stdenv
16009       else stdenv;
16010   };
16012   tg = python3Packages.callPackage ../applications/networking/instant-messengers/telegram/tg { };
16014   termdown = python3Packages.callPackage ../applications/misc/termdown { };
16016   terminaltexteffects = with python3Packages; toPythonApplication terminaltexteffects ;
16018   inherit (callPackage ../applications/graphics/tesseract {
16019     inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
16020   })
16021     tesseract3
16022     tesseract4
16023     tesseract5;
16024   tesseract = tesseract5;
16026   thunderbirdPackages = recurseIntoAttrs (callPackage ../applications/networking/mailreaders/thunderbird/packages.nix {
16027     callPackage = newScope {
16028       inherit (rustPackages) cargo rustc;
16029     };
16030   });
16032   thunderbird-unwrapped = thunderbirdPackages.thunderbird;
16033   thunderbird = wrapThunderbird thunderbird-unwrapped { };
16035   thunderbird-latest-unwrapped = thunderbirdPackages.thunderbird-latest;
16036   thunderbird-latest = wrapThunderbird thunderbird-latest-unwrapped { };
16038   thunderbird-esr-unwrapped = thunderbirdPackages.thunderbird-esr;
16039   thunderbird-esr = wrapThunderbird thunderbird-esr-unwrapped { };
16041   thunderbird-128-unwrapped = thunderbirdPackages.thunderbird-128;
16042   thunderbird-128 = wrapThunderbird thunderbirdPackages.thunderbird-128 { };
16044   thunderbird-bin = wrapThunderbird thunderbird-bin-unwrapped {
16045     applicationName = "thunderbird";
16046     pname = "thunderbird-bin";
16047     desktopName = "Thunderbird";
16048   };
16049   thunderbird-bin-unwrapped = callPackage ../applications/networking/mailreaders/thunderbird-bin {
16050     generated = import ../applications/networking/mailreaders/thunderbird-bin/release_sources.nix;
16051   };
16053   timbreid = callPackage ../applications/audio/pd-plugins/timbreid {
16054     fftw = fftwSinglePrec;
16055   };
16057   inherit
16058     ({
16059       timeshift-unwrapped = callPackage ../applications/backup/timeshift/unwrapped.nix { };
16060       timeshift = callPackage ../applications/backup/timeshift { grubPackage = grub2; };
16061       timeshift-minimal = callPackage ../applications/backup/timeshift/minimal.nix { };
16062     })
16063     timeshift-unwrapped
16064     timeshift
16065     timeshift-minimal
16066     ;
16068   timidity = callPackage ../tools/misc/timidity {
16069     inherit (darwin.apple_sdk.frameworks) CoreAudio;
16070     inherit (darwin) libobjc;
16071   };
16073   tiny = callPackage ../applications/networking/irc/tiny {
16074     inherit (darwin.apple_sdk.frameworks) Foundation;
16075   };
16077   tipp10 = qt6.callPackage ../applications/misc/tipp10 { };
16079   tlp = callPackage ../tools/misc/tlp {
16080     inherit (linuxPackages) x86_energy_perf_policy;
16081   };
16083   torrenttools = callPackage ../tools/misc/torrenttools {
16084     fmt = fmt_8;
16085   };
16087   tony = libsForQt5.callPackage ../applications/audio/tony { };
16089   trustedqsl = tqsl; # Alias added 2019-02-10
16091   libtransmission_3 = transmission_3.override {
16092     installLib = true;
16093     enableDaemon = false;
16094     enableCli = false;
16095   };
16096   transmission_3-gtk = transmission_3.override { enableGTK3 = true; };
16097   transmission_3-qt = transmission_3.override { enableQt = true; };
16098   transmission_3_noSystemd = transmission_3.override { enableSystemd = false; };
16100   # Needs macOS >= 10.14.6
16101   transmission_4 = darwin.apple_sdk_11_0.callPackage ../applications/networking/p2p/transmission/4.nix {
16102     inherit (darwin.apple_sdk_11_0.frameworks) Foundation;
16103     fmt = fmt_9;
16104     libutp = libutp_3_4;
16105   };
16106   libtransmission_4 = transmission_4.override {
16107     installLib = true;
16108     enableDaemon = false;
16109     enableCli = false;
16110   };
16111   transmission_4-gtk = transmission_4.override { enableGTK3 = true; };
16112   transmission_4-qt5 = transmission_4.override { enableQt5 = true; };
16113   transmission_4-qt6 = transmission_4.override { enableQt6 = true; };
16114   transmission_4-qt = transmission_4-qt5;
16116   traverso = libsForQt5.callPackage ../applications/audio/traverso { };
16118   tinywl = callPackage ../applications/window-managers/tinywl {
16119     wlroots = wlroots_0_18;
16120   };
16122   treesheets = callPackage ../applications/office/treesheets {
16123     wxGTK = wxGTK32;
16124     inherit (darwin.apple_sdk.frameworks) Cocoa;
16125   };
16127   trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita { };
16129   tunefish = callPackage ../applications/audio/tunefish {
16130     stdenv = clangStdenv; # https://github.com/jpcima/tunefish/issues/4
16131   };
16133   tuxclocker = libsForQt5.callPackage ../applications/misc/tuxclocker {
16134     tuxclocker-plugins = tuxclocker-plugins-with-unfree;
16135   };
16137   tuxclocker-without-unfree = libsForQt5.callPackage ../applications/misc/tuxclocker { };
16139   twmn = libsForQt5.callPackage ../applications/misc/twmn { };
16141   tests-stdenv-gcc-stageCompare = callPackage ../test/stdenv/gcc-stageCompare.nix { };
16143   t-rec = callPackage ../misc/t-rec {
16144     inherit (darwin.apple_sdk.frameworks) Foundation;
16145   };
16147   twinkle = qt5.callPackage ../applications/networking/instant-messengers/twinkle { };
16149   terminal-typeracer = callPackage ../applications/misc/terminal-typeracer {
16150     inherit (darwin.apple_sdk.frameworks) Security;
16151   };
16153   ueberzug = with python3Packages; toPythonApplication ueberzug;
16155   ueberzugpp = callPackage ../by-name/ue/ueberzugpp/package.nix {
16156     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
16157   };
16159   uefitoolPackages = recurseIntoAttrs (callPackage ../tools/system/uefitool/variants.nix {});
16160   uefitool = uefitoolPackages.new-engine;
16162   ungoogled-chromium = callPackage ../applications/networking/browsers/chromium ((config.chromium or {}) // {
16163     ungoogled = true;
16164     channel = "ungoogled-chromium";
16165   });
16167   unigine-tropics = pkgsi686Linux.callPackage ../applications/graphics/unigine-tropics { };
16169   unigine-sanctuary = pkgsi686Linux.callPackage ../applications/graphics/unigine-sanctuary { };
16171   unigine-superposition = libsForQt5.callPackage ../applications/graphics/unigine-superposition { };
16173   uuagc = haskell.lib.compose.justStaticExecutables haskellPackages.uuagc;
16175   valentina = libsForQt5.callPackage ../applications/misc/valentina { };
16177   vcprompt = callPackage ../applications/version-management/vcprompt {
16178     autoconf = buildPackages.autoconf269;
16179   };
16181   vdirsyncer = with python3Packages; toPythonApplication vdirsyncer;
16183   vengi-tools = darwin.apple_sdk_11_0.callPackage ../applications/graphics/vengi-tools {
16184     inherit (darwin.apple_sdk_11_0.frameworks) Carbon CoreServices OpenCL;
16185   };
16187   veusz = libsForQt5.callPackage ../applications/graphics/veusz { };
16189   vim = vimUtils.makeCustomizable (callPackage ../applications/editors/vim {
16190     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
16191   });
16193   macvim = let
16194     macvimUtils = callPackage ../applications/editors/vim/macvim-configurable.nix { };
16195   in macvimUtils.makeCustomizable (callPackage ../applications/editors/vim/macvim.nix {
16196     stdenv = clangStdenv;
16197   });
16199   vim-full = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/full.nix {
16200     inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Foundation CoreData;
16201     inherit (darwin) libobjc;
16202   });
16204   vim-darwin = (vim-full.override {
16205     config = {
16206       vim = {
16207         gui = "none";
16208         darwin = true;
16209       };
16210     };
16211   }).overrideAttrs {
16212     pname = "vim-darwin";
16213     meta = {
16214       platforms = lib.platforms.darwin;
16215     };
16216   };
16218   vimacs = callPackage ../applications/editors/vim/vimacs.nix { };
16220   qpdfview = libsForQt5.callPackage ../applications/office/qpdfview { };
16222   vimgolf = callPackage ../games/vimgolf { };
16224   # this is a lower-level alternative to wrapNeovim conceived to handle
16225   # more usecases when wrapping neovim. The interface is being actively worked on
16226   # so expect breakage. use wrapNeovim instead if you want a stable alternative
16227   wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
16228   wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
16229   neovim-unwrapped = callPackage ../by-name/ne/neovim-unwrapped/package.nix {
16230     lua = if lib.meta.availableOn stdenv.hostPlatform luajit then luajit else lua5_1;
16231   };
16233   neovimUtils = callPackage ../applications/editors/neovim/utils.nix {
16234     lua = lua5_1;
16235   };
16236   neovim = wrapNeovim neovim-unwrapped { };
16238   gnvim-unwrapped = callPackage ../applications/editors/neovim/gnvim { };
16240   gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { };
16242   virt-top = callPackage ../applications/virtualization/virt-top {
16243     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
16244   };
16246   virt-manager = callPackage ../applications/virtualization/virt-manager {
16247     system-libvirt = libvirt;
16248   };
16250   virt-manager-qt = libsForQt5.callPackage ../applications/virtualization/virt-manager/qt.nix {
16251     qtermwidget = lxqt.qtermwidget_1_4;
16252   };
16254   virtualbox = libsForQt5.callPackage ../applications/virtualization/virtualbox {
16255     stdenv = stdenv_32bit;
16256     inherit (gnome2) libIDL;
16258     # VirtualBox uses wsimport, which was removed after JDK 8.
16259     jdk = jdk8;
16261     # Opt out of building the guest BIOS sources with the problematic Open Watcom
16262     # toolchain. People who need to build the BIOS from sources (for example to
16263     # apply patches) can override this.
16264     open-watcom-bin = null;
16265   };
16267   virtualboxKvm = lowPrio (virtualbox.override {
16268     enableKvm = true;
16269   });
16271   virtualboxHardened = lowPrio (virtualbox.override {
16272     enableHardening = true;
16273   });
16275   virtualboxHeadless = lowPrio (virtualbox.override {
16276     enableHardening = true;
16277     headless = true;
16278   });
16280   virtualboxExtpack = callPackage ../applications/virtualization/virtualbox/extpack.nix { };
16282   virtualboxWithExtpack = lowPrio (virtualbox.override {
16283     extensionPack = virtualboxExtpack;
16284   });
16286   virtualglLib = callPackage ../tools/X11/virtualgl/lib.nix {
16287     fltk = fltk13;
16288   };
16290   virtualgl = callPackage ../tools/X11/virtualgl {
16291     virtualglLib_i686 = if stdenv.hostPlatform.system == "x86_64-linux"
16292       then pkgsi686Linux.virtualglLib
16293       else null;
16294   };
16296   primusLib = callPackage ../tools/X11/primus/lib.nix {
16297     nvidia_x11 = linuxPackages.nvidia_x11.override { libsOnly = true; };
16298   };
16300   primus = callPackage ../tools/X11/primus {
16301     stdenv_i686 = pkgsi686Linux.stdenv;
16302     primusLib_i686 = if stdenv.hostPlatform.system == "x86_64-linux"
16303       then pkgsi686Linux.primusLib
16304       else null;
16305   };
16307   bumblebee = callPackage ../tools/X11/bumblebee {
16308     nvidia_x11 = linuxPackages.nvidia_x11;
16309     nvidia_x11_i686 = if stdenv.hostPlatform.system == "x86_64-linux"
16310       then pkgsi686Linux.linuxPackages.nvidia_x11.override { libsOnly = true; }
16311       else null;
16312     libglvnd_i686 = if stdenv.hostPlatform.system == "x86_64-linux"
16313       then pkgsi686Linux.libglvnd
16314       else null;
16315   };
16317   viper4linux-gui = libsForQt5.callPackage ../applications/audio/viper4linux-gui { };
16319   vlc-bin-universal = vlc-bin.override { variant = "universal"; };
16321   libvlc = vlc.override {
16322     withQt5 = false;
16323     onlyLibVLC = true;
16324   };
16326   vmpk = libsForQt5.callPackage ../applications/audio/vmpk { };
16328   vmware-horizon-client = callPackage ../applications/networking/remote/vmware-horizon-client { };
16330   vorbis-tools = callPackage ../applications/audio/vorbis-tools {
16331     autoreconfHook = buildPackages.autoreconfHook269;
16332   };
16334   vscode = callPackage ../applications/editors/vscode/vscode.nix { };
16335   vscode-fhs = vscode.fhs;
16336   vscode-fhsWithPackages = vscode.fhsWithPackages;
16338   vscode-with-extensions = callPackage ../applications/editors/vscode/with-extensions.nix { };
16340   vscode-utils = callPackage ../applications/editors/vscode/extensions/vscode-utils.nix { };
16342   vscode-extensions = recurseIntoAttrs (callPackage ../applications/editors/vscode/extensions { });
16344   vscode-js-debug = callPackage ../by-name/vs/vscode-js-debug/package.nix {
16345     inherit (darwin.apple_sdk.frameworks) AppKit Security;
16346   };
16348   vscodium = callPackage ../applications/editors/vscode/vscodium.nix { };
16349   vscodium-fhs = vscodium.fhs;
16350   vscodium-fhsWithPackages = vscodium.fhsWithPackages;
16352   openvscode-server = callPackage ../servers/openvscode-server {
16353     nodejs = nodejs_18;
16354     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Security;
16355   };
16357   code-server = callPackage ../servers/code-server {
16358     nodejs = nodejs_20;
16359     inherit (darwin.apple_sdk.frameworks) AppKit Cocoa CoreServices Security;
16360   };
16362   vuze = callPackage ../applications/networking/p2p/vuze {
16363     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
16364     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
16365   };
16367   whispers = with python3Packages; toPythonApplication whispers;
16369   warp = callPackage ../applications/networking/warp {
16370     inherit (darwin.apple_sdk.frameworks) Security Foundation;
16371   };
16373   warp-plus = callPackage ../by-name/wa/warp-plus/package.nix {
16374     buildGoModule = buildGo122Module;
16375   };
16377   # Should always be the version with the most features
16378   w3m-full = w3m;
16380   # Version without X11
16381   w3m-nox = w3m.override {
16382     x11Support = false;
16383     imlib2 = imlib2-nox;
16384   };
16386   # Version without X11 or graphics
16387   w3m-nographics = w3m.override {
16388     x11Support = false;
16389     graphicsSupport = false;
16390   };
16392   # Version for batch text processing, not a good browser
16393   w3m-batch = w3m.override {
16394     graphicsSupport = false;
16395     mouseSupport = false;
16396     x11Support = false;
16397     imlib2 = imlib2-nox;
16398   };
16400   wayfire = callPackage ../applications/window-managers/wayfire/default.nix {
16401     wlroots = wlroots_0_17;
16402   };
16403   wf-config = callPackage ../applications/window-managers/wayfire/wf-config.nix { };
16405   wayfirePlugins = recurseIntoAttrs (
16406     callPackage ../applications/window-managers/wayfire/plugins.nix { }
16407   );
16408   wayfire-with-plugins = callPackage ../applications/window-managers/wayfire/wrapper.nix {
16409     plugins = with wayfirePlugins; [ wcm wf-shell ];
16410   };
16412   webcamoid = libsForQt5.callPackage ../applications/video/webcamoid { };
16414   webcord = callPackage ../by-name/we/webcord/package.nix { electron = electron_32; };
16416   webcord-vencord = callPackage ../by-name/we/webcord-vencord/package.nix { electron = electron_31; };
16418   webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {
16419     stdenv = if stdenv.cc.isClang then gccStdenv else stdenv;
16420   };
16422   webssh = with python3Packages; toPythonApplication webssh;
16424   wrapWeechat = callPackage ../applications/networking/irc/weechat/wrapper.nix { };
16426   weechat-unwrapped = callPackage ../applications/networking/irc/weechat {
16427     inherit (darwin) libobjc;
16428     inherit (darwin) libresolv;
16429     guile = guile_3_0;
16430   };
16432   weechat = wrapWeechat weechat-unwrapped { };
16434   weechatScripts = recurseIntoAttrs (callPackage ../applications/networking/irc/weechat/scripts { });
16436   westonLite = weston.override {
16437     demoSupport = false;
16438     jpegSupport = false;
16439     lcmsSupport = false;
16440     pangoSupport = false;
16441     pipewireSupport = false;
16442     rdpSupport = false;
16443     remotingSupport = false;
16444     vaapiSupport = false;
16445     vncSupport = false;
16446     webpSupport = false;
16447     xwaylandSupport = false;
16448   };
16450   chatterino2 = callPackage ../applications/networking/instant-messengers/chatterino2 {
16451     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
16452   };
16454   wgnord = callPackage ../applications/networking/wgnord/default.nix { };
16456   whalebird = callPackage ../applications/misc/whalebird {
16457     electron = electron_27;
16458   };
16460   inherit (windowmaker) dockapps;
16462   wofi-pass = callPackage ../../pkgs/tools/security/pass/wofi-pass.nix { };
16464   wordnet = callPackage ../applications/misc/wordnet {
16465     inherit (darwin.apple_sdk.frameworks) Cocoa;
16466   };
16468   workrave = callPackage ../applications/misc/workrave {
16469     inherit (python3Packages) jinja2;
16470     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good;
16471   };
16473   worldengine-cli = python3Packages.worldengine;
16475   wpsoffice = libsForQt5.callPackage ../applications/office/wpsoffice { };
16476   wpsoffice-cn = libsForQt5.callPackage ../applications/office/wpsoffice {
16477     useChineseVersion = true;
16478   };
16480   wrapFirefox = callPackage ../applications/networking/browsers/firefox/wrapper.nix { };
16482   wrapThunderbird = callPackage ../applications/networking/mailreaders/thunderbird/wrapper.nix { };
16484   wsjtx = qt5.callPackage ../applications/radio/wsjtx { };
16486   wxhexeditor = callPackage ../applications/editors/wxhexeditor {
16487     inherit (darwin.apple_sdk.frameworks) Cocoa;
16488     inherit (llvmPackages) openmp;
16489     wxGTK = wxGTK32;
16490   };
16492   x11basic = callPackage ../development/compilers/x11basic {
16493     autoconf = buildPackages.autoconf269;
16494   };
16496   x2goclient = libsForQt5.callPackage ../applications/networking/remote/x2goclient { };
16498   x32edit = callPackage ../applications/audio/midas/x32edit.nix { };
16500   xaos = libsForQt5.callPackage ../applications/graphics/xaos { };
16502   xbindkeys-config = callPackage ../tools/X11/xbindkeys-config {
16503     gtk = gtk2;
16504   };
16506   kodiPackages = recurseIntoAttrs (kodi.packages);
16508   kodi = callPackage ../applications/video/kodi {
16509     ffmpeg = ffmpeg_6;
16510     jre_headless = jdk11_headless;
16511   };
16513   kodi-wayland = callPackage ../applications/video/kodi {
16514     ffmpeg = ffmpeg_6;
16515     jre_headless = jdk11_headless;
16516     waylandSupport = true;
16517   };
16519   kodi-gbm = callPackage ../applications/video/kodi {
16520     ffmpeg = ffmpeg_6;
16521     jre_headless = jdk11_headless;
16522     gbmSupport = true;
16523   };
16525   xca = qt6Packages.callPackage ../applications/misc/xca { };
16527   inherit (xorg) xcompmgr;
16529   xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { };
16531   xdg-desktop-portal-hyprland = callPackage ../applications/window-managers/hyprwm/xdg-desktop-portal-hyprland {
16532     inherit (qt6) qtbase qttools qtwayland wrapQtAppsHook;
16533   };
16535   buildXenPackage = callPackage ../build-support/xen { };
16537   gxneur = callPackage ../applications/misc/gxneur  {
16538     inherit (gnome2) libglade GConf;
16539   };
16541   xournal = callPackage ../applications/graphics/xournal {
16542     inherit (gnome2) libgnomecanvas;
16543   };
16545   xournalpp = darwin.apple_sdk_11_0.callPackage ../applications/graphics/xournalpp {
16546     lua = lua5_3;
16547   };
16549   xpdf = libsForQt5.callPackage ../applications/misc/xpdf {
16550     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
16551   };
16553   xmobar = haskellPackages.xmobar.bin;
16555   xmonad-with-packages = callPackage ../applications/window-managers/xmonad/wrapper.nix {
16556     inherit (haskellPackages) ghcWithPackages;
16557     packages = _: [ haskellPackages.xmonad-contrib ];
16558   };
16560   xmonadctl = callPackage ../applications/window-managers/xmonad/xmonadctl.nix {
16561     inherit (haskellPackages) ghcWithPackages;
16562   };
16564   xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
16565     inherit (xfce) libxfce4util xfce4-panel;
16566   };
16568   xmonad_log_applet_mate = xmonad_log_applet.override {
16569     desktopSupport = "mate";
16570   };
16572   xmonad_log_applet_xfce = xmonad_log_applet.override {
16573     desktopSupport = "xfce4";
16574   };
16576   libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { };
16578   xpra = callPackage ../tools/X11/xpra { };
16579   xpraWithNvenc = callPackage ../tools/X11/xpra {
16580     withNvenc = true;
16581     nvidia_x11 = linuxPackages.nvidia_x11.override { libsOnly = true; };
16582   };
16583   libfakeXinerama = callPackage ../tools/X11/xpra/libfakeXinerama.nix { };
16585   xsd = callPackage ../development/libraries/xsd {
16586     stdenv = gcc9Stdenv;
16587   };
16589   xmp = callPackage ../applications/audio/xmp {
16590     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio;
16591   };
16593   xygrib = libsForQt5.callPackage ../applications/misc/xygrib { };
16595   yabar = callPackage ../applications/window-managers/yabar { };
16597   yabar-unstable = callPackage ../applications/window-managers/yabar/unstable.nix { };
16599   ydiff = with python3.pkgs; toPythonApplication ydiff;
16601   yokadi = python3Packages.callPackage ../applications/misc/yokadi { };
16603   your-editor = callPackage ../applications/editors/your-editor { stdenv = gccStdenv; };
16605   youtube-dl = with python3Packages; toPythonApplication youtube-dl;
16607   youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light;
16609   youtube-music = callPackage ../applications/audio/youtube-music {
16610     pnpm = pnpm_9;
16611   };
16613   youtube-tui = callPackage ../applications/video/youtube-tui {
16614     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security AppKit;
16615   };
16617   yt-dlp-light = yt-dlp.override {
16618     atomicparsleySupport = false;
16619     ffmpegSupport = false;
16620     rtmpSupport = false;
16621   };
16623   youtube-viewer = perlPackages.WWWYoutubeViewer;
16625   yuview = libsForQt5.yuview;
16627   zammad = callPackage ../applications/networking/misc/zammad { };
16629   zathuraPkgs = callPackage ../applications/misc/zathura { };
16630   zathura = zathuraPkgs.zathuraWrapper;
16632   zeroc-ice-cpp11 = zeroc-ice.override { cpp11 = true; };
16634   zexy = callPackage ../applications/audio/pd-plugins/zexy {
16635     autoconf = buildPackages.autoconf269;
16636   };
16638   zgv = callPackage ../applications/graphics/zgv {
16639     # Enable the below line for terminal display. Note
16640     # that it requires sixel graphics compatible terminals like mlterm
16641     # or xterm -ti 340
16642     SDL = SDL_sixel;
16643   };
16645   zotero_7 = pkgs.zotero-beta;
16647   zsteg = callPackage ../tools/security/zsteg { };
16649   zynaddsubfx = callPackage ../applications/audio/zynaddsubfx {
16650     guiModule = "zest";
16651     fftw = fftwSinglePrec;
16652   };
16654   zynaddsubfx-fltk = zynaddsubfx.override {
16655     guiModule = "fltk";
16656   };
16658   zynaddsubfx-ntk = zynaddsubfx.override {
16659     guiModule = "ntk";
16660   };
16662   ### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS
16664   alfis = callPackage ../applications/blockchains/alfis {
16665     inherit (darwin.apple_sdk.frameworks) Cocoa Security WebKit;
16666   };
16667   alfis-nogui = alfis.override {
16668     withGui = false;
16669   };
16671   bitcoin  = libsForQt5.callPackage ../applications/blockchains/bitcoin {
16672     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
16673     withGui = true;
16674     inherit (darwin) autoSignDarwinBinariesHook;
16675   };
16677   bitcoind = callPackage ../applications/blockchains/bitcoin {
16678     withGui = false;
16679     inherit (darwin) autoSignDarwinBinariesHook;
16680   };
16682   bitcoind-knots = callPackage ../applications/blockchains/bitcoin-knots {
16683     withGui = false;
16684     inherit (darwin) autoSignDarwinBinariesHook;
16685   };
16687   bitcoin-abc  = libsForQt5.callPackage ../applications/blockchains/bitcoin-abc {
16688     withGui = true;
16689     protobuf = protobuf_21;
16690   };
16691   bitcoind-abc = callPackage ../applications/blockchains/bitcoin-abc {
16692     mkDerivation = stdenv.mkDerivation;
16693     protobuf = protobuf_21;
16694     withGui = false;
16695   };
16697   btcpayserver = callPackage ../applications/blockchains/btcpayserver { };
16699   btcpayserver-altcoins = callPackage ../applications/blockchains/btcpayserver { altcoinSupport = true; };
16701   cryptop = python3.pkgs.callPackage ../applications/blockchains/cryptop { };
16703   electrs = callPackage ../applications/blockchains/electrs {
16704     inherit (darwin.apple_sdk.frameworks) Security;
16705   };
16707   elements  = libsForQt5.callPackage ../applications/blockchains/elements {
16708     withGui = true;
16709     inherit (darwin) autoSignDarwinBinariesHook;
16710   };
16711   elementsd = callPackage ../applications/blockchains/elements {
16712     withGui = false;
16713     inherit (darwin) autoSignDarwinBinariesHook;
16714   };
16715   elementsd-simplicity = elementsd.overrideAttrs {
16716     version = "unstable-2023-04-18";
16717     src = fetchFromGitHub {
16718       owner = "ElementsProject";
16719       repo = "elements";
16720       rev = "ea318a45094ab3d31dd017d7781a6f28f1ffaa33"; # simplicity branch latest
16721       hash = "sha256-ooe+If3HWaJWpr2ux7DpiCTqB9Hv+aXjquEjplDjvhM=";
16722     };
16723   };
16725   fulcrum = libsForQt5.callPackage ../applications/blockchains/fulcrum { };
16727   go-ethereum = callPackage ../by-name/go/go-ethereum/package.nix {
16728     inherit (darwin) libobjc;
16729     inherit (darwin.apple_sdk.frameworks) IOKit;
16730   };
16732   gridcoin-research = libsForQt5.callPackage ../applications/blockchains/gridcoin-research {
16733     boost = boost179;
16734   };
16736   groestlcoin  = libsForQt5.callPackage ../applications/blockchains/groestlcoin {
16737     stdenv = darwin.apple_sdk_11_0.stdenv;
16738     withGui = true;
16739     inherit (darwin) autoSignDarwinBinariesHook;
16740   };
16742   groestlcoind = callPackage ../applications/blockchains/groestlcoin {
16743     inherit (darwin) autoSignDarwinBinariesHook;
16744   };
16746   ledger-agent = with python3Packages; toPythonApplication ledger-agent;
16748   litecoin  = libsForQt5.callPackage ../applications/blockchains/litecoin {
16749     inherit (darwin.apple_sdk.frameworks) AppKit;
16750     boost = pkgs.boost177;
16751   };
16752   litecoind = litecoin.override { withGui = false; };
16754   monero-cli = callPackage ../applications/blockchains/monero-cli {
16755     inherit (darwin.apple_sdk.frameworks) CoreData IOKit;
16756   };
16758   haven-cli = callPackage ../applications/blockchains/haven-cli {
16759     inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC;
16760   };
16762   monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui { };
16764   napari = with python3Packages; toPythonApplication napari;
16766   nano-wallet = libsForQt5.callPackage ../applications/blockchains/nano-wallet { };
16768   pycoin = with python3Packages; toPythonApplication pycoin;
16770   solana-validator = callPackage ../applications/blockchains/solana-validator { };
16772   snarkos = callPackage ../applications/blockchains/snarkos {
16773     inherit (darwin.apple_sdk.frameworks) Security;
16774   };
16776   inherit (callPackages ../applications/blockchains/teos { })
16777     teos
16778     teos-watchtower-plugin;
16780   vertcoin  = libsForQt5.callPackage ../applications/blockchains/vertcoin {
16781     withGui = true;
16782   };
16783   vertcoind = callPackage ../applications/blockchains/vertcoin {
16784     withGui = false;
16785   };
16787   zcash = callPackage ../applications/blockchains/zcash {
16788     inherit (darwin.apple_sdk.frameworks) Security;
16789     stdenv = llvmPackages_14.stdenv;
16790   };
16792   polkadot = callPackage ../applications/blockchains/polkadot {
16793     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
16794   };
16796   samplv1 = libsForQt5.callPackage ../applications/audio/samplv1 { };
16798   beancount = with python3.pkgs; toPythonApplication beancount;
16800   beancount-black = with python3.pkgs; toPythonApplication beancount-black;
16802   beanhub-cli = with python3.pkgs; toPythonApplication beanhub-cli;
16804   bean-add = callPackage ../applications/office/beancount/bean-add.nix { };
16806   bench =
16807     # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
16808     (if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then lib.id else haskell.lib.compose.justStaticExecutables)
16809       haskellPackages.bench;
16811   cri-o = callPackage ../applications/virtualization/cri-o/wrapper.nix { };
16812   cri-o-unwrapped = callPackage ../applications/virtualization/cri-o { };
16814   drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { };
16816   eureka-ideas = callPackage ../applications/misc/eureka-ideas {
16817     inherit (darwin.apple_sdk.frameworks) Security;
16818   };
16820   phonemizer = with python3Packages; toPythonApplication phonemizer;
16822   wyoming-faster-whisper = callPackage ../tools/audio/wyoming/faster-whisper.nix { };
16824   wyoming-openwakeword = callPackage ../tools/audio/wyoming/openwakeword.nix { };
16826   wyoming-piper = callPackage ../tools/audio/wyoming/piper.nix { };
16828   ### GAMES
16830   _2048-cli = _2048-cli-terminal;
16831   _2048-cli-curses = callPackage ../games/2048-cli { ui = "curses"; };
16832   _2048-cli-terminal = callPackage ../games/2048-cli { ui = "terminal"; };
16834   _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; };
16836   inherit (callPackages ../games/fteqw {})
16837     fteqw
16838     fteqw-dedicated
16839     fteqcc;
16841   heroic-unwrapped = callPackage ../games/heroic {
16842     # Match the version used by the upstream package.
16843     electron = electron_31;
16844   };
16846   heroic = callPackage ../games/heroic/fhsenv.nix { };
16848   pmars-x11 = pmars.override { enableXwinGraphics = true; };
16850   wipeout-rewrite = callPackage ../games/wipeout-rewrite {
16851     inherit (darwin.apple_sdk.frameworks) Foundation;
16852   };
16854   ### GAMES/DOOM-PORTS
16856   doomseeker = qt5.callPackage ../games/doom-ports/doomseeker { };
16858   doomrunner = qt5.callPackage ../games/doom-ports/doomrunner { };
16860   enyo-launcher = libsForQt5.callPackage ../games/doom-ports/enyo-launcher { };
16862   slade = callPackage ../games/doom-ports/slade {
16863     wxGTK = (wxGTK32.overrideAttrs {
16864       patches = [
16865        (fetchpatch { # required to run slade 3.2.4 on wxGTK 3.2.4, see PR #266945
16866          url = "https://github.com/wxWidgets/wxWidgets/commit/425d9455e8307c1267a79d47d77e3dafeb4d86de.patch";
16867          excludes = [ "docs/changes.txt" ];
16868          revert = true;
16869          hash = "sha256-6LOYLDLtVCHxNdHAWv3zhlCsljIpi//RJb9XVLGD5hM=";
16870        })
16871      ];
16872     }).override {
16873       withWebKit = true;
16874     };
16875   };
16877   sladeUnstable = callPackage ../games/doom-ports/slade/git.nix {
16878     wxGTK = (wxGTK32.overrideAttrs {
16879       patches = [
16880        (fetchpatch { # required to run sladeUnstable unstable-2023-09-30 on wxGTK 3.2.4, see PR #266945
16881          url = "https://github.com/wxWidgets/wxWidgets/commit/425d9455e8307c1267a79d47d77e3dafeb4d86de.patch";
16882          excludes = [ "docs/changes.txt" ];
16883          revert = true;
16884          hash = "sha256-6LOYLDLtVCHxNdHAWv3zhlCsljIpi//RJb9XVLGD5hM=";
16885        })
16886      ];
16887     }).override {
16888       withWebKit = true;
16889     };
16890   };
16892   zandronum = callPackage ../games/doom-ports/zandronum { };
16894   zandronum-server = zandronum.override {
16895     serverOnly = true;
16896   };
16898   zandronum-alpha = callPackage ../games/doom-ports/zandronum/alpha { };
16900   zandronum-alpha-server = zandronum-alpha.override {
16901     serverOnly = true;
16902   };
16904   fmodex = callPackage ../games/doom-ports/zandronum/fmod.nix { };
16906   doom-bcc = callPackage ../games/doom-ports/zdoom/bcc-git.nix { };
16908   zdbsp = callPackage ../games/doom-ports/zdoom/zdbsp.nix { };
16910   zdoom = callPackage ../games/doom-ports/zdoom { };
16912   pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { };
16914   qgo = libsForQt5.callPackage ../games/qgo { };
16916   sm64ex = callPackage ../games/sm64ex {
16917     branch = "sm64ex";
16918   };
16920   sm64ex-coop = callPackage ../games/sm64ex {
16921     branch = "sm64ex-coop";
16922   };
16924   amoeba = callPackage ../games/amoeba { };
16925   amoeba-data = callPackage ../games/amoeba/data.nix { };
16927   anki = callPackage ../games/anki {
16928     inherit (darwin.apple_sdk.frameworks) AVKit CoreAudio;
16929   };
16930   anki-bin = callPackage ../games/anki/bin.nix { };
16931   anki-sync-server = callPackage ../games/anki/sync-server.nix { };
16933   armagetronad = callPackage ../games/armagetronad { };
16935   armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; };
16937   art = callPackage ../by-name/ar/art/package.nix {
16938     fftw = fftwSinglePrec;
16939   };
16941   arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { };
16943   asc = callPackage ../games/asc {
16944     lua = lua5_1;
16945     physfs = physfs_2;
16946   };
16948   beancount-ing-diba = callPackage ../applications/office/beancount/beancount-ing-diba.nix { };
16950   beancount-share = callPackage ../applications/office/beancount/beancount_share.nix { };
16952   black-hole-solver = callPackage ../games/black-hole-solver {
16953     inherit (perlPackages) PathTiny;
16954   };
16956   bugdom = callPackage ../games/bugdom {
16957     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
16958     inherit (darwin.apple_sdk_11_0.frameworks) IOKit Foundation OpenGL;
16959   };
16961   bzflag = callPackage ../games/bzflag {
16962     inherit (darwin.apple_sdk.frameworks) Carbon CoreServices;
16963   };
16965   cataclysmDDA = callPackage ../games/cataclysm-dda { };
16967   cataclysm-dda = cataclysmDDA.stable.tiles;
16969   cataclysm-dda-git = cataclysmDDA.git.tiles;
16971   chessx = libsForQt5.callPackage ../games/chessx { };
16973   chiaki = libsForQt5.callPackage ../games/chiaki { };
16975   chiaki-ng = kdePackages.callPackage ../games/chiaki-ng { };
16977   cockatrice = libsForQt5.callPackage ../games/cockatrice {
16978     protobuf = protobuf_21;
16979   };
16981   construoBase = lowPrio (callPackage ../games/construo {
16982     libGL = null;
16983     libGLU = null;
16984     libglut = null;
16985   });
16987   construo = construoBase.override {
16988     inherit libGL libGLU libglut;
16989   };
16991   crawlTiles = callPackage ../games/crawl {
16992     tileMode = true;
16993   };
16995   crawl = callPackage ../games/crawl { };
16997   inherit (import ../games/crossfire pkgs)
16998     crossfire-server crossfire-arch crossfire-maps crossfire-client;
17000   curseofwar = callPackage ../games/curseofwar { SDL = null; };
17001   curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; };
17003   cutechess = qt5.callPackage ../games/cutechess { };
17005   cutemaze = qt6Packages.callPackage ../games/cutemaze { };
17007   deliantra-server = callPackage ../games/deliantra/server.nix {
17008     # perl538 defines 'struct object' in sv.h. many conflicts result
17009     perl = perl540;
17010     perlPackages = perl540Packages;
17011   };
17012   deliantra-arch = callPackage ../games/deliantra/arch.nix { };
17013   deliantra-maps = callPackage ../games/deliantra/maps.nix { };
17014   deliantra-data = callPackage ../games/deliantra/data.nix { };
17016   ddnet = callPackage ../games/ddnet {};
17017   ddnet-server = ddnet.override { buildClient = false; };
17019   devilutionx = callPackage ../games/devilutionx {
17020     fmt = fmt_9;
17021     SDL2 = SDL2.override {
17022       withStatic = true;
17023     };
17024   };
17026   duckmarines = callPackage ../games/duckmarines { love = love_0_10; };
17028   dwarf-fortress-packages = recurseIntoAttrs (callPackage ../games/dwarf-fortress { });
17030   dwarf-fortress = dwarf-fortress-packages.dwarf-fortress;
17032   dwarf-therapist = dwarf-fortress-packages.dwarf-therapist;
17034   dxx-rebirth = callPackage ../games/dxx-rebirth { };
17036   inherit (callPackages ../games/dxx-rebirth/assets.nix { })
17037     descent1-assets
17038     descent2-assets;
17040   inherit (callPackages ../games/dxx-rebirth/full.nix { })
17041     d1x-rebirth-full
17042     d2x-rebirth-full;
17044   easyrpg-player = callPackage ../games/easyrpg-player {
17045     inherit (darwin.apple_sdk.frameworks) Foundation AudioUnit AudioToolbox;
17046   };
17048   exult = callPackage ../games/exult {
17049     inherit (darwin.apple_sdk.frameworks) AudioUnit;
17050   };
17052   fallout-ce = callPackage ../games/fallout-ce/fallout-ce.nix { };
17053   fallout2-ce = callPackage ../games/fallout-ce/fallout2-ce.nix { };
17055   flare = callPackage ../games/flare {
17056     inherit (darwin.apple_sdk.frameworks) Cocoa;
17057   };
17059   fltrator = callPackage ../games/fltrator {
17060     fltk = fltk-minimal;
17061   };
17063   factorio = callPackage ../by-name/fa/factorio/package.nix { releaseType = "alpha"; };
17065   factorio-experimental = factorio.override { releaseType = "alpha"; experimental = true; };
17067   factorio-headless = factorio.override { releaseType = "headless"; };
17069   factorio-headless-experimental = factorio.override { releaseType = "headless"; experimental = true; };
17071   factorio-demo = factorio.override { releaseType = "demo"; };
17073   factorio-space-age = factorio.override { releaseType = "expansion"; };
17075   factorio-space-age-experimental = factorio.override { releaseType = "expansion"; experimental = true; };
17077   factorio-mods = callPackage ../by-name/fa/factorio/mods.nix { };
17079   factorio-utils = callPackage ../by-name/fa/factorio/utils.nix { };
17081   ferium = callPackage ../games/ferium {
17082     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
17083   };
17085   flightgear = libsForQt5.callPackage ../games/flightgear { };
17087   freecad-wayland = freecad.override { withWayland = true; };
17089   freeciv = callPackage ../games/freeciv {
17090     sdl2Client = false;
17091     gtkClient = true;
17092     qtClient = false;
17093   };
17095   freeciv_sdl2 = freeciv.override {
17096     sdl2Client = true;
17097     gtkClient = false;
17098     qtClient = false;
17099   };
17101   freeciv_qt = freeciv.override {
17102     sdl2Client = false;
17103     gtkClient = false;
17104     qtClient = true;
17105   };
17107   freeciv_gtk = freeciv;
17109   garden-of-coloured-lights = callPackage ../games/garden-of-coloured-lights { allegro = allegro4; };
17111   gcompris = libsForQt5.callPackage ../games/gcompris { };
17113   gl-gsync-demo = callPackage ../games/gl-gsync-demo {
17114     libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
17115   };
17117   gogdl = python3Packages.callPackage ../games/gogdl { };
17119   gscrabble = python3Packages.callPackage ../games/gscrabble { };
17121   gshogi = python3Packages.callPackage ../games/gshogi { };
17123   qtads = qt5.callPackage ../games/qtads { };
17125   hedgewars = libsForQt5.callPackage ../games/hedgewars { };
17127   ibmcloud-cli = callPackage ../tools/admin/ibmcloud-cli { stdenv = stdenvNoCC; };
17129   instaloader = python3Packages.callPackage ../tools/misc/instaloader { };
17131   iortcw = callPackage ../games/iortcw { };
17132   # used as base package for iortcw forks
17133   iortcw_sp = callPackage ../games/iortcw/sp.nix { };
17135   ja2-stracciatella = callPackage ../games/ja2-stracciatella {
17136     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
17137   };
17139   katagoWithCuda = katago.override {
17140     backend = "cuda";
17141     cudaPackages = cudaPackages_12;
17142   };
17144   katagoCPU = katago.override {
17145     backend = "eigen";
17146   };
17148   katagoTensorRT = katago.override {
17149     backend = "tensorrt";
17150     cudaPackages = cudaPackages_12;
17151   };
17153   koboredux = callPackage ../games/koboredux { };
17155   koboredux-free = callPackage ../games/koboredux {
17156     useProprietaryAssets = false;
17157   };
17159   ldmud = callPackage ../games/ldmud { };
17161   ldmud-full = callPackage ../games/ldmud {
17162     ipv6Support = true;
17163     mccpSupport = true;
17164     mysqlSupport = true;
17165     postgresSupport = true;
17166     sqliteSupport = true;
17167     tlsSupport = true;
17168     pythonSupport = true;
17169   };
17171   leela-zero = libsForQt5.callPackage ../games/leela-zero { };
17173   legendary-gl = python3Packages.callPackage ../games/legendary-gl { };
17175   lincity = callPackage ../games/lincity { };
17177   lincity_ng = callPackage ../games/lincity/ng.nix {
17178     # https://github.com/lincity-ng/lincity-ng/issues/25
17179     physfs = physfs_2;
17180   };
17182   liquidwar = callPackage ../games/liquidwar {
17183     guile = guile_2_0;
17184   };
17186   liquidwar5 = callPackage ../games/liquidwar/5.nix {
17187   };
17189   macopix = callPackage ../games/macopix {
17190     gtk = gtk2;
17191   };
17193   maptool = callPackage ../games/maptool {
17194     # MapTool is fussy about which JRE it uses; OpenJDK will leave it hanging
17195     # at launch in a class initialization deadlock. MapTool ships Temurin with
17196     # their pre-built releases so we might as well use it too.
17197     jre = temurin-bin-21;
17198     openjfx = openjfx21;
17199   };
17201   manaplus = callPackage ../games/manaplus { stdenv = gcc11Stdenv; };
17203   mindustry-wayland = callPackage ../by-name/mi/mindustry/package.nix {
17204     enableWayland = true;
17205   };
17207   mindustry-server = callPackage ../by-name/mi/mindustry/package.nix {
17208     enableClient = false;
17209     enableServer = true;
17210   };
17212   minecraft = callPackage ../games/minecraft { };
17214   minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; };
17215   minecraft-server = minecraftServers.vanilla; # backwards compatibility
17217   minetest = callPackage ../games/minetest {
17218     inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa Kernel;
17219   };
17220   minetestclient = minetest.override { buildServer = false; };
17221   minetestserver = minetest.override { buildClient = false; };
17223   mnemosyne = callPackage ../games/mnemosyne {
17224     python = python3;
17225   };
17227   mrrescue = callPackage ../games/mrrescue { love = love_0_10; };
17229   mudlet = libsForQt5.callPackage ../games/mudlet {
17230     lua = lua5_1;
17231     stdenv = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
17232     inherit (darwin.apple_sdk_11_0.frameworks) AppKit;
17233   };
17235   blightmud = callPackage ../games/blightmud { };
17237   blightmud-tts = callPackage ../games/blightmud { withTTS = true; };
17239   nethack = callPackage ../games/nethack { };
17241   nethack-qt = callPackage ../games/nethack {
17242     qtMode = true;
17243     stdenv = gccStdenv;
17244   };
17246   nethack-x11 = callPackage ../games/nethack { x11Mode = true; };
17248   nile = python3Packages.callPackage ../games/nile { };
17250   npush = callPackage ../games/npush { };
17251   run-npush = callPackage ../games/npush/run.nix { };
17253   oilrush = callPackage ../games/oilrush { };
17255   openloco = pkgsi686Linux.callPackage ../games/openloco { };
17257   openmw = libsForQt5.callPackage ../games/openmw {
17258     inherit (darwin.apple_sdk.frameworks) CoreMedia VideoDecodeAcceleration VideoToolbox;
17259   };
17261   openmw-tes3mp = libsForQt5.callPackage ../games/openmw/tes3mp.nix { };
17263   openraPackages_2019 = import ../games/openra_2019 {
17264     inherit lib;
17265     pkgs = pkgs.__splicedPackages;
17266   };
17268   openra_2019 = openraPackages_2019.engines.release;
17270   openraPackages = recurseIntoAttrs (callPackage ../games/openra {});
17272   openra = openraPackages.engines.release;
17274   openrw = callPackage ../games/openrw {
17275     inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL;
17276   };
17278   openspades = callPackage ../games/openspades {
17279     inherit (darwin.apple_sdk.frameworks) Cocoa;
17280   };
17282   openttd = callPackage ../games/openttd {
17283     zlib = zlib.override {
17284       static = true;
17285     };
17286   };
17287   openttd-jgrpp = callPackage ../games/openttd/jgrpp.nix {
17288     zlib = zlib.override {
17289       static = true;
17290     };
17291   };
17292   openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix { };
17293   openttd-nml = callPackage ../games/openttd/nml.nix { };
17295   openxcom = callPackage ../games/openxcom { SDL = SDL_compat; };
17297   openxray = callPackage ../games/openxray {
17298     # Builds with Clang, but hits an assertion failure unless GCC is used
17299     # https://github.com/OpenXRay/xray-16/issues/1224
17300     stdenv = gccStdenv;
17301   };
17303   orthorobot = callPackage ../games/orthorobot { love = love_0_10; };
17305   papermcServers = callPackages ../games/papermc { };
17307   papermc = papermcServers.papermc;
17309   path-of-building = qt6Packages.callPackage ../games/path-of-building {};
17311   pentobi = libsForQt5.callPackage ../games/pentobi { };
17313   pokerth = libsForQt5.callPackage ../games/pokerth {
17314     protobuf = protobuf_21;
17315   };
17317   pokerth-server = libsForQt5.callPackage ../games/pokerth {
17318     target = "server";
17319     protobuf = protobuf_21;
17320   };
17322   pysolfc = python3Packages.callPackage ../games/pysolfc { };
17324   quake3wrapper = callPackage ../games/quake3/wrapper { };
17326   quake3demo = quake3wrapper {
17327     name = "quake3-demo-${lib.getVersion quake3demodata}";
17328     description = "Demo of Quake 3 Arena, a classic first-person shooter";
17329     paks = [ quake3pointrelease quake3demodata ];
17330   };
17332   quake3demodata = callPackage ../games/quake3/content/demo.nix { };
17334   quake3pointrelease = callPackage ../games/quake3/content/pointrelease.nix { };
17336   quake3hires = callPackage ../games/quake3/content/hires.nix { };
17338   quakespasm = callPackage ../games/quakespasm {
17339     inherit (darwin.apple_sdk.frameworks) Cocoa CoreAudio CoreFoundation IOKit OpenGL;
17340   };
17341   vkquake = callPackage ../games/quakespasm/vulkan.nix { };
17343   rogue = callPackage ../games/rogue {
17344     ncurses = ncurses5;
17345   };
17347   rott = callPackage ../games/rott { SDL = SDL_compat; };
17349   rott-shareware = rott.override {
17350     buildShareware = true;
17351   };
17353   space-cadet-pinball = callPackage ../games/space-cadet-pinball {
17354     inherit (darwin.apple_sdk.frameworks) Cocoa;
17355   };
17357   starsector = callPackage ../games/starsector {
17358     openjdk = openjdk8;
17359   };
17361   scummvm = callPackage ../games/scummvm {
17362     inherit (darwin.apple_sdk.frameworks) Cocoa AudioToolbox Carbon CoreMIDI AudioUnit;
17363   };
17365   inherit (callPackage ../games/scummvm/games.nix { })
17366     beneath-a-steel-sky
17367     broken-sword-25
17368     drascula-the-vampire-strikes-back
17369     dreamweb
17370     flight-of-the-amazon-queen
17371     lure-of-the-temptress;
17373   sgt-puzzles = callPackage ../games/sgt-puzzles { };
17375   sgt-puzzles-mobile = callPackage ../games/sgt-puzzles {
17376     isMobile = true;
17377   };
17379   shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { };
17380   rkpd2 = callPackage ../games/shattered-pixel-dungeon/rkpd2 { };
17381   rat-king-adventure = callPackage ../games/shattered-pixel-dungeon/rat-king-adventure { };
17382   experienced-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/experienced-pixel-dungeon { };
17383   summoning-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/summoning-pixel-dungeon { };
17384   shorter-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/shorter-pixel-dungeon { };
17386   # get binaries without data built by Hydra
17387   simutrans_binaries = lowPrio simutrans.binaries;
17389   soi = callPackage ../games/soi {
17390     lua = lua5_1;
17391   };
17393   # solarus and solarus-quest-editor must use the same version of Qt.
17394   solarus = libsForQt5.callPackage ../games/solarus { };
17395   solarus-quest-editor = libsForQt5.callPackage ../development/tools/solarus-quest-editor { };
17397   # You still can override by passing more arguments.
17398   space-station-14-launcher = callPackage ../games/space-station-14-launcher { };
17400   spring = callPackage ../games/spring { asciidoc = asciidoc-full; };
17402   springLobby = callPackage ../games/spring/springlobby.nix { };
17404   steam-run = steam.run;
17406   # This exists so Hydra tries to build all of Steam's dependencies.
17407   steam-fhsenv-without-steam = steam.override { steam-unwrapped = null; };
17409   steam-run-free = steam-fhsenv-without-steam.run;
17411   steamback = python311.pkgs.callPackage ../tools/games/steamback { };
17413   protontricks = python3Packages.callPackage ../tools/package-management/protontricks {
17414     steam-run = steam-run-free;
17415     inherit winetricks yad;
17416   };
17418   protonup-ng = with python3Packages; toPythonApplication protonup-ng;
17420   stuntrally = callPackage ../games/stuntrally
17421     { };
17423   superTuxKart = darwin.apple_sdk_11_0.callPackage ../games/super-tux-kart {
17424     inherit (darwin.apple_sdk_11_0.frameworks) Cocoa IOKit OpenAL IOBluetooth;
17425   };
17427   synthv1 = libsForQt5.callPackage ../applications/audio/synthv1 { };
17429   the-powder-toy = callPackage ../by-name/th/the-powder-toy/package.nix {
17430     lua = lua5_2;
17431     inherit (darwin.apple_sdk.frameworks) Cocoa;
17432   };
17434   tbe = libsForQt5.callPackage ../games/the-butterfly-effect { };
17436   teeworlds = callPackage ../games/teeworlds {
17437     inherit (darwin.apple_sdk.frameworks) Cocoa;
17438   };
17439   teeworlds-server = teeworlds.override { buildClient = false; };
17441   tengine = callPackage ../servers/http/tengine {
17442     modules = with nginxModules; [ rtmp dav moreheaders modsecurity ];
17443   };
17445   tibia = pkgsi686Linux.callPackage ../games/tibia { };
17447   toppler = callPackage ../games/toppler {
17448     SDL2_image = SDL2_image_2_0;
17449   };
17451   speed_dreams = callPackage ../games/speed-dreams {
17452     # Torcs wants to make shared libraries linked with plib libraries (it provides static).
17453     # i686 is the only platform I know than can do that linking without plib built with -fPIC
17454     libpng = libpng12;
17455   };
17457   ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { };
17459   ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { };
17461   ue4demos = recurseIntoAttrs (callPackage ../games/ue4demos { });
17463   ut2004Packages = dontRecurseIntoAttrs (callPackage ../games/ut2004 { });
17465   ut2004demo = res.ut2004Packages.ut2004 [ res.ut2004Packages.ut2004-demo ];
17467   # To ensure vdrift's code is built on hydra
17468   vdrift-bin = vdrift.bin;
17470   vessel = pkgsi686Linux.callPackage ../games/vessel { };
17472   vvvvvv = callPackage ../by-name/vv/vvvvvv/package.nix {
17473     inherit (darwin.apple_sdk.frameworks) Foundation IOKit;
17474   };
17476   warsow-engine = callPackage ../games/warsow/engine.nix { };
17478   warsow = callPackage ../games/warsow { };
17480   wesnoth = callPackage ../games/wesnoth {
17481     inherit (darwin.apple_sdk.frameworks) Cocoa Foundation;
17482     # wesnoth requires lua built with c++, see https://github.com/wesnoth/wesnoth/pull/8234
17483     lua = lua5_4.override {
17484       postConfigure = ''
17485         makeFlagsArray+=("CC=$CXX")
17486       '';
17487     };
17488   };
17490   wesnoth-dev = wesnoth;
17492   inherit (callPackage ../games/xonotic { })
17493     xonotic-data
17494     xonotic;
17496   xonotic-glx = (callPackage ../games/xonotic {
17497     withSDL = false;
17498     withGLX = true;
17499   }).xonotic;
17501   xonotic-dedicated = (callPackage ../games/xonotic {
17502     withSDL = false;
17503     withDedicated = true;
17504   }).xonotic;
17506   xonotic-sdl = xonotic;
17507   xonotic-sdl-unwrapped = xonotic-sdl.xonotic-unwrapped;
17508   xonotic-glx-unwrapped = xonotic-glx.xonotic-unwrapped;
17509   xonotic-dedicated-unwrapped = xonotic-dedicated.xonotic-unwrapped;
17512   xpilot-ng = callPackage ../games/xpilot { };
17513   bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix { };
17514   bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix { };
17516   inherit (callPackage ../games/quake2/yquake2 {
17517     inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL;
17518   })
17519     yquake2
17520     yquake2-ctf
17521     yquake2-ground-zero
17522     yquake2-the-reckoning
17523     yquake2-all-games;
17525   zeroadPackages = recurseIntoAttrs (callPackage ../games/0ad {
17526     wxGTK = wxGTK32;
17527     fmt = fmt_9;
17528   });
17530   zeroad = zeroadPackages.zeroad;
17532   ### DESKTOP ENVIRONMENTS
17534   arcan-wrapped = arcan.wrapper.override { };
17535   arcan-all-wrapped = arcan.wrapper.override {
17536     name = "arcan-all-wrapped";
17537     appls = [ cat9 durden pipeworld ];
17539   };
17540   cat9-wrapped = arcan.wrapper.override {
17541     name = "cat9-wrapped";
17542     appls = [ cat9 ];
17543   };
17544   durden-wrapped = arcan.wrapper.override {
17545     name = "durden-wrapped";
17546     appls = [ durden ];
17547   };
17548   pipeworld-wrapped = arcan.wrapper.override {
17549     name = "pipeworld-wrapped";
17550     appls = [ pipeworld ];
17551   };
17552   prio-wrapped = arcan.wrapper.override {
17553     name = "prio-wrapped";
17554     appls = [ prio ];
17555   };
17557   cinnamon = recurseIntoAttrs (callPackage ../desktops/cinnamon { });
17559   deepin = recurseIntoAttrs (callPackage ../desktops/deepin { });
17561   enlightenment = recurseIntoAttrs (callPackage ../desktops/enlightenment { });
17563   expidus = recurseIntoAttrs (callPackages ../desktops/expidus {
17564     # Use the Nix built Flutter Engine for testing.
17565     # Also needed when we eventually package Genesis Shell.
17566     flutterPackages = flutterPackages-source;
17567   });
17569   gnome2 = recurseIntoAttrs (callPackage ../desktops/gnome-2 { });
17571   gnome = recurseIntoAttrs (callPackage ../desktops/gnome { });
17573   inherit (callPackage ../desktops/gnome/extensions { })
17574     gnomeExtensions
17575     gnome38Extensions
17576     gnome40Extensions
17577     gnome41Extensions
17578     gnome42Extensions
17579     gnome43Extensions
17580     gnome44Extensions
17581     gnome45Extensions
17582     gnome46Extensions
17583     gnome47Extensions
17584   ;
17586   gnome-extensions-cli = python3Packages.callPackage ../desktops/gnome/misc/gnome-extensions-cli { };
17588   gnome-session-ctl = callPackage ../by-name/gn/gnome-session/ctl.nix { };
17590   # Using 43 to match Mutter used in Pantheon
17591   gnustep = recurseIntoAttrs (callPackage ../desktops/gnustep { });
17593   lomiri = recurseIntoAttrs (callPackage ../desktops/lomiri { });
17595   lumina = recurseIntoAttrs (callPackage ../desktops/lumina { });
17597   ### DESKTOPS/LXDE
17599   lxde = recurseIntoAttrs (callPackage ../desktops/lxde { });
17600   # Backwards compatibility aliases
17601   inherit (lxde)
17602     lxappearance
17603     lxappearance-gtk2
17604     lxmenu-data
17605     lxpanel
17606     lxrandr
17607     lxsession
17608     lxtask
17609   ;
17611   lxqt = recurseIntoAttrs (import ../desktops/lxqt {
17612     inherit pkgs;
17613     inherit (lib) makeScope;
17614     inherit kdePackages;
17615   });
17617   mate = recurseIntoAttrs (callPackage ../desktops/mate { });
17619   # Needed for elementary's gala, wingpanel and greeter until support for higher versions is provided
17620   pantheon = recurseIntoAttrs (callPackage ../desktops/pantheon { });
17622   rox-filer = callPackage ../desktops/rox/rox-filer {
17623     gtk = gtk2;
17624   };
17626   xfce = recurseIntoAttrs (callPackage ../desktops/xfce { });
17628   plasma-applet-volumewin7mixer = libsForQt5.callPackage ../applications/misc/plasma-applet-volumewin7mixer { };
17630   plasma-theme-switcher = libsForQt5.callPackage ../applications/misc/plasma-theme-switcher { };
17632   plasma-pass = libsForQt5.callPackage ../tools/security/plasma-pass { };
17634   inherit (callPackages ../applications/misc/redshift {
17635     inherit (python3Packages) python pygobject3 pyxdg wrapPython;
17636     inherit (darwin.apple_sdk.frameworks) CoreLocation ApplicationServices Foundation Cocoa;
17637     geoclue = geoclue2;
17638   }) redshift gammastep;
17640   redshift-plasma-applet = libsForQt5.callPackage ../applications/misc/redshift-plasma-applet { };
17642   latte-dock = libsForQt5.callPackage ../applications/misc/latte-dock { };
17644   ### SCIENCE/CHEMISTY
17646   avogadrolibs = libsForQt5.callPackage ../development/libraries/science/chemistry/avogadrolibs { };
17648   molequeue = libsForQt5.callPackage ../development/libraries/science/chemistry/molequeue { };
17650   avogadro2 = libsForQt5.callPackage ../applications/science/chemistry/avogadro2 { };
17652   jmol = callPackage ../applications/science/chemistry/jmol {
17653     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
17654   };
17656   marvin = callPackage ../applications/science/chemistry/marvin { };
17658   molbar = with python3Packages; toPythonApplication molbar;
17660   nwchem = callPackage ../applications/science/chemistry/nwchem {
17661     blas = blas-ilp64;
17662     lapack = lapack-ilp64;
17663   };
17665   autodock-vina = callPackage ../applications/science/chemistry/autodock-vina { };
17667   pdb2pqr = with python3Packages; toPythonApplication pdb2pqr;
17669   pymol = callPackage ../applications/science/chemistry/pymol {
17670     python3Packages = python311Packages;
17671   };
17673   quantum-espresso = callPackage ../applications/science/chemistry/quantum-espresso {
17674     hdf5 = hdf5-fortran;
17675   };
17677   siesta = callPackage ../applications/science/chemistry/siesta { };
17679   siesta-mpi = callPackage ../applications/science/chemistry/siesta { useMpi = true; };
17681   ### SCIENCE/GEOMETRY
17683   tetgen = callPackage ../applications/science/geometry/tetgen { }; # AGPL3+
17684   tetgen_1_4 = callPackage ../applications/science/geometry/tetgen/1.4.nix { }; # MIT
17686   ### SCIENCE/BENCHMARK
17688   ### SCIENCE/BIOLOGY
17690   ants = callPackage ../applications/science/biology/ants {
17691     inherit (darwin.apple_sdk.frameworks) Cocoa;
17692   };
17694   blast = callPackage ../applications/science/biology/blast {
17695     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
17696   };
17698   blast-bin = callPackage ../applications/science/biology/blast/bin.nix { };
17700   cd-hit = callPackage ../applications/science/biology/cd-hit {
17701     inherit (llvmPackages) openmp;
17702   };
17704   deepdiff = with python3Packages; toPythonApplication deepdiff;
17706   deepsecrets = callPackage ../tools/security/deepsecrets {
17707     python3 = python311;
17708   };
17710   deep-translator = with python3Packages; toPythonApplication deep-translator;
17712   hh-suite = callPackage ../applications/science/biology/hh-suite {
17713     inherit (llvmPackages) openmp;
17714   };
17716   iv = callPackage ../applications/science/biology/iv {
17717     neuron-version = neuron.version;
17718   };
17720   kallisto = callPackage ../applications/science/biology/kallisto {
17721     autoconf = buildPackages.autoconf269;
17722   };
17724   mirtk = callPackage ../development/libraries/science/biology/mirtk { itk = itk_5_2; };
17726   nest = callPackage ../applications/science/biology/nest { };
17728   nest-mpi = callPackage ../applications/science/biology/nest { withMpi = true; };
17730   neuron-mpi = neuron.override {useMpi = true; };
17732   neuron-full = neuron-mpi.override { useCore = true; useRx3d = true; };
17734   mrtrix = callPackage ../applications/science/biology/mrtrix { python = python3; };
17736   minc_tools = callPackage ../applications/science/biology/minc-tools {
17737     inherit (perlPackages) perl TextFormat;
17738   };
17740   mmseqs2 = callPackage ../applications/science/biology/mmseqs2 {
17741     inherit (llvmPackages) openmp;
17742   };
17744   obitools3 = callPackage ../applications/science/biology/obitools/obitools3.nix { };
17746   raxml-mpi = raxml.override { useMpi = true; };
17748   samtools = callPackage ../applications/science/biology/samtools { };
17749   samtools_0_1_19 = callPackage ../applications/science/biology/samtools/samtools_0_1_19.nix {
17750     stdenv = gccStdenv;
17751   };
17753   inherit (callPackages ../applications/science/biology/sumatools {})
17754       sumalibs
17755       sumaclust
17756       sumatra;
17758   trimmomatic = callPackage ../applications/science/biology/trimmomatic {
17759     jdk = pkgs.jdk11_headless;
17760     # Reduce closure size
17761     jre = pkgs.jre_minimal.override {
17762       modules = [ "java.base" "java.logging" ];
17763       jdk = pkgs.jdk11_headless;
17764     };
17765   };
17767   truvari = callPackage ../applications/science/biology/truvari { };
17769   ### SCIENCE/MACHINE LEARNING
17771   sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { };
17773   streamlit = with python3Packages; toPythonApplication streamlit;
17775   ### SCIENCE/MATH
17777   blas-ilp64 = blas.override { isILP64 = true; };
17779   cantor = libsForQt5.cantor;
17781   clblas = callPackage ../development/libraries/science/math/clblas {
17782     inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo OpenCL;
17783   };
17785   labplot = libsForQt5.callPackage ../applications/science/math/labplot { };
17787   lapack-ilp64 = lapack.override { isILP64 = true; };
17789   liblapack = lapack-reference;
17791   nota = haskellPackages.callPackage ../applications/science/math/nota { };
17793   notus-scanner = with python3Packages; toPythonApplication notus-scanner;
17795   openblas = callPackage ../development/libraries/science/math/openblas {
17796     inherit (llvmPackages) openmp;
17797   };
17799   # A version of OpenBLAS using 32-bit integers on all platforms for compatibility with
17800   # standard BLAS and LAPACK.
17801   openblasCompat = openblas.override { blas64 = false; };
17803   inherit (callPackage ../development/libraries/science/math/magma { }) magma magma_2_7_2 magma_2_6_2;
17805   magma-cuda = magma.override {
17806     cudaSupport = true;
17807     rocmSupport = false;
17808   };
17810   magma-cuda-static = magma-cuda.override {
17811     static = true;
17812   };
17814   magma-hip = magma.override {
17815     cudaSupport = false;
17816     rocmSupport = true;
17817   };
17819   mathematica = callPackage ../applications/science/math/mathematica { };
17821   mathematica-webdoc = callPackage ../applications/science/math/mathematica {
17822     webdoc = true;
17823   };
17825   mathematica-cuda = callPackage ../applications/science/math/mathematica {
17826     cudaSupport = true;
17827   };
17829   mathematica-webdoc-cuda = callPackage ../applications/science/math/mathematica {
17830     webdoc = true;
17831     cudaSupport = true;
17832   };
17834   or-tools = callPackage ../development/libraries/science/math/or-tools {
17835     inherit (darwin) DarwinTools;
17836     stdenv = if stdenv.hostPlatform.isDarwin then overrideSDK stdenv "11.0" else stdenv;
17837     python = python3;
17838     protobuf = protobuf_23;
17839     # or-tools builds with -std=c++20, so abseil-cpp must
17840     # also be built that way
17841     abseil-cpp = abseil-cpp_202301.override {
17842       static = true;
17843       cxxStandard = "20";
17844     };
17845   };
17847   p4est-sc = callPackage ../development/libraries/science/math/p4est-sc {
17848     p4est-sc-debugEnable = false;
17849   };
17851   p4est-sc-dbg = callPackage ../development/libraries/science/math/p4est-sc { };
17853   p4est = callPackage ../development/libraries/science/math/p4est { };
17855   p4est-dbg = callPackage ../development/libraries/science/math/p4est {
17856     p4est-sc = p4est-sc-dbg;
17857   };
17859   sageWithDoc = sage.override { withDoc = true; };
17861   suitesparse_4_2 = callPackage ../development/libraries/science/math/suitesparse/4.2.nix { };
17862   suitesparse_4_4 = callPackage ../development/libraries/science/math/suitesparse/4.4.nix { };
17863   suitesparse_5_3 = callPackage ../development/libraries/science/math/suitesparse {
17864     inherit (llvmPackages) openmp;
17865   };
17866   suitesparse = suitesparse_5_3;
17868   trilinos = callPackage ../development/libraries/science/math/trilinos { };
17870   trilinos-mpi = callPackage ../development/libraries/science/math/trilinos { withMPI = true; };
17872   wolfram-engine = libsForQt5.callPackage ../applications/science/math/wolfram-engine { };
17874   wolfram-for-jupyter-kernel = callPackage ../applications/editors/jupyter-kernels/wolfram { };
17876   wolfram-notebook = callPackage ../applications/science/math/wolfram-engine/notebook.nix { };
17878   ### SCIENCE/MOLECULAR-DYNAMICS
17880   gromacs = callPackage ../applications/science/molecular-dynamics/gromacs {
17881     singlePrec = true;
17882     fftw = fftwSinglePrec;
17883   };
17885   gromacsPlumed = lowPrio (gromacs.override {
17886     singlePrec = true;
17887     enablePlumed = true;
17888     fftw = fftwSinglePrec;
17889   });
17891   gromacsMpi = lowPrio (gromacs.override {
17892     singlePrec = true;
17893     enableMpi = true;
17894     fftw = fftwSinglePrec;
17895   });
17897   gromacsDouble = lowPrio (gromacs.override {
17898     singlePrec = false;
17899     fftw = fftw;
17900   });
17902   gromacsDoubleMpi = lowPrio (gromacs.override {
17903     singlePrec = false;
17904     enableMpi = true;
17905     fftw = fftw;
17906   });
17908   gromacsCudaMpi = lowPrio (gromacs.override {
17909     singlePrec = true;
17910     enableMpi = true;
17911     enableCuda = true;
17912     fftw = fftwSinglePrec;
17913   });
17915   ### SCIENCE/MEDICINE
17917   ### SCIENCE/PHYSICS
17919   mcfm = callPackage ../applications/science/physics/MCFM {
17920     stdenv = gccStdenv;
17921     lhapdf = lhapdf.override { stdenv = gccStdenv; python = null; };
17922   };
17924   xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
17926   ### SCIENCE/PROGRAMMING
17928   ### SCIENCE/LOGIC
17930   abella = callPackage ../applications/science/logic/abella {
17931     ocamlPackages = ocaml-ng.ocamlPackages_4_12;
17932   };
17934   inherit (callPackage ./coq-packages.nix {
17935     inherit (ocaml-ng)
17936       ocamlPackages_4_05
17937       ocamlPackages_4_09
17938       ocamlPackages_4_10
17939       ocamlPackages_4_12
17940       ocamlPackages_4_14
17941     ;
17942   }) mkCoqPackages
17943     coqPackages_8_5  coq_8_5
17944     coqPackages_8_6  coq_8_6
17945     coqPackages_8_7  coq_8_7
17946     coqPackages_8_8  coq_8_8
17947     coqPackages_8_9  coq_8_9
17948     coqPackages_8_10 coq_8_10
17949     coqPackages_8_11 coq_8_11
17950     coqPackages_8_12 coq_8_12
17951     coqPackages_8_13 coq_8_13
17952     coqPackages_8_14 coq_8_14
17953     coqPackages_8_15 coq_8_15
17954     coqPackages_8_16 coq_8_16
17955     coqPackages_8_17 coq_8_17
17956     coqPackages_8_18 coq_8_18
17957     coqPackages_8_19 coq_8_19
17958     coqPackages_8_20 coq_8_20
17959     coqPackages      coq
17960   ;
17962   coq-kernel = callPackage ../applications/editors/jupyter-kernels/coq { };
17964   cubicle = callPackage ../applications/science/logic/cubicle {
17965     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
17966   };
17968   cvc3 = callPackage ../applications/science/logic/cvc3 {
17969     gmp = lib.overrideDerivation gmp (_: { dontDisableStatic = true; });
17970     stdenv = gccStdenv;
17971   };
17972   cvc5 = callPackage ../applications/science/logic/cvc5 {
17973     cadical = pkgs.cadical.override { version = "2.0.0"; };
17974   };
17976   ekrhyper = callPackage ../applications/science/logic/ekrhyper {
17977     ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
17978   };
17980   eprover = callPackage ../applications/science/logic/eprover { };
17982   eprover-ho = callPackage ../applications/science/logic/eprover { enableHO = true; };
17984   giac-with-xcas = giac.override { enableGUI = true; };
17986   glucose = callPackage ../applications/science/logic/glucose { };
17987   glucose-syrup = callPackage ../applications/science/logic/glucose {
17988     enableUnfree = true;
17989   };
17991   inherit (ocamlPackages) hol_light;
17993   isabelle = callPackage ../by-name/is/isabelle/package.nix {
17994     polyml = polyml.overrideAttrs {
17995       pname = "polyml-for-isabelle";
17996       version = "2024";
17997       configureFlags = [ "--enable-intinf-as-int" "--with-gmp" "--disable-shared" ];
17998       buildFlags = [ "compiler" ];
17999       src = fetchFromGitHub {
18000         owner = "polyml";
18001         repo = "polyml";
18002         rev = "v5.9.1";
18003         hash = "sha256-72wm8dt+Id59A5058mVE5P9TkXW5/LZRthZoxUustVA=";
18004       };
18005     };
18007     java = openjdk21;
18008   };
18009   isabelle-components = recurseIntoAttrs (callPackage ../by-name/is/isabelle/components { });
18011   killport = darwin.apple_sdk_11_0.callPackage ../tools/misc/killport { };
18013   lean3 = lean;
18014   mathlibtools = with python3Packages; toPythonApplication mathlibtools;
18016   leo2 = callPackage ../applications/science/logic/leo2
18017     { inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml camlp4; };
18019   leo3-bin = callPackage ../applications/science/logic/leo3/binary.nix { };
18021   prooftree = callPackage  ../applications/science/logic/prooftree {
18022     ocamlPackages = ocaml-ng.ocamlPackages_4_12;
18023   };
18025   satallax = callPackage ../applications/science/logic/satallax {
18026     inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
18027   };
18029   spass = callPackage ../applications/science/logic/spass {
18030     stdenv = gccStdenv;
18031   };
18033   statverif = callPackage ../applications/science/logic/statverif {
18034     ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
18035   };
18037   veriT = callPackage ../applications/science/logic/verit {
18038     stdenv = gccStdenv;
18039   };
18041   why3 = callPackage ../applications/science/logic/why3 {
18042     coqPackages = coqPackages_8_18;
18043   };
18045   yices = callPackage ../applications/science/logic/yices {
18046     gmp-static = gmp.override { withStatic = true; };
18047   };
18050   inherit (callPackages ../applications/science/logic/z3 { python = python3; })
18051     z3_4_12
18052     z3_4_11
18053     z3_4_8;
18054   inherit (callPackages ../applications/science/logic/z3 { python = python311; })
18055     z3_4_8_5;
18056   z3 = z3_4_8;
18057   z3-tptp = callPackage ../applications/science/logic/z3/tptp.nix { };
18059   tlaplus = callPackage ../applications/science/logic/tlaplus {
18060     jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
18061   };
18062   tlaplus18 = callPackage ../applications/science/logic/tlaplus/tlaplus18.nix {};
18063   tlaps = callPackage ../applications/science/logic/tlaplus/tlaps.nix {
18064     inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml;
18065   };
18066   tlaplusToolbox = callPackage ../applications/science/logic/tlaplus/toolbox.nix { };
18068   avy = callPackage ../applications/science/logic/avy { };
18070   ### SCIENCE / ENGINEERING
18072   ### SCIENCE / ELECTRONICS
18074   appcsxcad = libsForQt5.callPackage ../applications/science/electronics/appcsxcad { };
18076   inherit (libsForQt5.callPackage ../applications/science/electronics/simulide { })
18077     simulide_0_4_15 simulide_1_0_0 simulide_1_1_0;
18079   simulide = simulide_1_0_0;
18081   eagle = libsForQt5.callPackage ../applications/science/electronics/eagle/eagle.nix { };
18083   caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { };
18085   degate = libsForQt5.callPackage ../applications/science/electronics/degate { };
18087   flatcam = python39.pkgs.callPackage ../applications/science/electronics/flatcam { };
18089   geda = callPackage ../applications/science/electronics/geda {
18090     guile = guile_2_2;
18091   };
18093   gerbv = callPackage ../applications/science/electronics/gerbv {
18094     cairo = cairo.override { x11Support = true; };
18095   };
18097   # this is a wrapper for kicad.base and kicad.libraries
18098   kicad = callPackage ../applications/science/electronics/kicad { };
18099   # this is the same but without the (sizable) 3D models library
18100   kicad-small = kicad.override { pname = "kicad-small"; with3d = false; };
18101   # this is the stable branch at whatever point update.sh last updated versions.nix
18102   kicad-testing = kicad.override { pname = "kicad-testing"; testing = true; };
18103   # and a small version of that
18104   kicad-testing-small = kicad.override {
18105     pname = "kicad-testing-small";
18106     testing = true;
18107     with3d = false;
18108   };
18109   # this is the master branch at whatever point update.sh last updated versions.nix
18110   kicad-unstable = kicad.override { pname = "kicad-unstable"; stable = false; };
18111   # and a small version of that
18112   kicad-unstable-small = kicad.override {
18113     pname = "kicad-unstable-small";
18114     stable = false;
18115     with3d = false;
18116   };
18118   kicadAddons = recurseIntoAttrs (callPackage ../applications/science/electronics/kicad/addons {});
18120   librepcb = libsForQt5.callPackage ../applications/science/electronics/librepcb { };
18122   ngspice = libngspice.override {
18123     withNgshared = false;
18124   };
18126   nvc = darwin.apple_sdk_11_0.callPackage ../applications/science/electronics/nvc { };
18128   openems = callPackage ../applications/science/electronics/openems {
18129     qcsxcad = libsForQt5.qcsxcad;
18130   };
18132   openroad = libsForQt5.callPackage ../applications/science/electronics/openroad { };
18134   qucs-s = qt6Packages.callPackage ../applications/science/electronics/qucs-s { };
18136   xyce = callPackage ../applications/science/electronics/xyce { };
18138   xyce-parallel = callPackage ../applications/science/electronics/xyce {
18139     withMPI = true;
18140     trilinos = trilinos-mpi;
18141   };
18143   ### SCIENCE / MATH
18145   caffe = callPackage ../applications/science/math/caffe ({
18146     inherit (config) cudaSupport;
18147     cudaPackages = cudaPackages_10_1;
18148     opencv4 = opencv4WithoutCuda; # Used only for image loading.
18149     blas = openblas;
18150     inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
18151   } // (config.caffe or {}));
18153   caffeWithCuda = caffe.override { cudaSupport = true; };
18155   gap-minimal = lowPrio (gap.override { packageSet = "minimal"; });
18157   gap-full = lowPrio (gap.override { packageSet = "full"; });
18159   geogebra = callPackage ../applications/science/math/geogebra { };
18160   geogebra6 = callPackage ../applications/science/math/geogebra/geogebra6.nix { };
18162   maxima = callPackage ../applications/science/math/maxima {
18163     lisp-compiler = sbcl;
18164   };
18165   maxima-ecl = maxima.override {
18166     lisp-compiler = ecl;
18167   };
18169   mxnet = callPackage ../applications/science/math/mxnet {
18170     inherit (linuxPackages) nvidia_x11;
18171   };
18173   wxmaxima = callPackage ../applications/science/math/wxmaxima {
18174     wxGTK = wxGTK32.override {
18175       withWebKit = true;
18176     };
18177   };
18179   pari = callPackage ../applications/science/math/pari { };
18180   gp2c = callPackage ../applications/science/math/pari/gp2c.nix { };
18182   raspa = callPackage ../applications/science/molecular-dynamics/raspa { };
18184   raspa-data = callPackage ../applications/science/molecular-dynamics/raspa/data.nix { };
18186   weka = callPackage ../applications/science/math/weka { jre = openjdk11; };
18188   yacas = libsForQt5.callPackage ../applications/science/math/yacas { };
18190   yacas-gui = yacas.override {
18191     enableGui = true;
18192     enableJupyter = false;
18193   };
18195   speedcrunch = libsForQt5.callPackage ../applications/science/math/speedcrunch { };
18197   ### SCIENCE / MISC
18199   boinc = callPackage ../applications/science/misc/boinc { };
18201   boinc-headless = callPackage ../applications/science/misc/boinc { headless = true; };
18203   celestia = callPackage ../applications/science/astronomy/celestia {
18204     autoreconfHook = buildPackages.autoreconfHook269;
18205     inherit (gnome2) gtkglext;
18206   };
18208   convertall = qt5.callPackage ../applications/science/misc/convertall { };
18210   cytoscape = callPackage ../applications/science/misc/cytoscape {
18211     jre = openjdk17;
18212   };
18214   faiss = callPackage ../development/libraries/science/math/faiss {
18215     pythonPackages = python3Packages;
18216   };
18218   faissWithCuda = faiss.override {
18219     cudaSupport = true;
18220   };
18222   gplates = libsForQt5.callPackage ../applications/science/misc/gplates { };
18224   golly = callPackage ../applications/science/misc/golly {
18225     wxGTK = wxGTK32.overrideAttrs (x: {
18226       configureFlags = x.configureFlags ++ [
18227         "--enable-webrequest"
18228       ];
18229       buildInputs = x.buildInputs ++ [
18230         curl
18231       ];
18232     });
18233   };
18235   megam = callPackage ../applications/science/misc/megam {
18236     inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
18237   };
18239   nextinspace = python3Packages.callPackage ../applications/science/misc/nextinspace { };
18241   ns-3 = callPackage ../development/libraries/science/networking/ns-3 { python = python3; };
18243   root = callPackage ../applications/science/misc/root {
18244     python = python3;
18245     inherit (darwin.apple_sdk.frameworks) Cocoa CoreSymbolication OpenGL;
18246   };
18248   root5 = lowPrio (callPackage ../applications/science/misc/root/5.nix {
18249     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
18250   });
18252   rink = callPackage ../applications/science/misc/rink {
18253     inherit (darwin.apple_sdk.frameworks) Security;
18254   };
18256   spyder = with python3.pkgs; toPythonApplication spyder;
18258   stellarium = qt6Packages.callPackage ../applications/science/astronomy/stellarium { };
18260   stellarsolver = libsForQt5.callPackage ../development/libraries/science/astronomy/stellarsolver { };
18262   tulip = libsForQt5.callPackage ../applications/science/misc/tulip { };
18264   vite = libsForQt5.callPackage ../applications/science/misc/vite { };
18266   ### SCIENCE / PHYSICS
18268   applgrid = callPackage ../development/libraries/physics/applgrid {
18269     inherit (darwin.apple_sdk.frameworks) Cocoa;
18270   };
18272   geant4 = libsForQt5.callPackage ../development/libraries/physics/geant4 { };
18274   hepmc3 = callPackage ../development/libraries/physics/hepmc3 {
18275     python = null;
18276   };
18278   lhapdf = callPackage ../development/libraries/physics/lhapdf {
18279     python = python3;
18280   };
18282   pythia = callPackage ../development/libraries/physics/pythia {
18283     hepmc = hepmc2;
18284   };
18286   rivet = callPackage ../development/libraries/physics/rivet {
18287     imagemagick = graphicsmagick-imagemagick-compat;
18288   };
18290   yoda = callPackage ../development/libraries/physics/yoda {
18291     python = python3;
18292   };
18293   yoda-with-root = lowPrio (yoda.override {
18294     withRootSupport = true;
18295   });
18297   ### SCIENCE/ROBOTICS
18299   apmplanner2 = libsForQt5.callPackage ../applications/science/robotics/apmplanner2 { };
18301   ### MISC
18303   android-file-transfer = libsForQt5.callPackage ../tools/filesystems/android-file-transfer { };
18305   antimicrox = libsForQt5.callPackage ../tools/misc/antimicrox { };
18307   autotiling = python3Packages.callPackage ../misc/autotiling { };
18309   avell-unofficial-control-center = python3Packages.callPackage ../applications/misc/avell-unofficial-control-center { };
18311   brgenml1lpr = pkgsi686Linux.callPackage ../misc/cups/drivers/brgenml1lpr { };
18313   calaos_installer = libsForQt5.callPackage ../misc/calaos/installer { };
18315   clinfo = callPackage ../tools/system/clinfo {
18316     inherit (darwin.apple_sdk.frameworks) OpenCL;
18317   };
18319   cups = callPackage ../misc/cups { };
18321   cups-filters = callPackage ../misc/cups/filters.nix { };
18323   cups-pk-helper = callPackage ../misc/cups/cups-pk-helper.nix { };
18325   epsonscan2 = pkgs.libsForQt5.callPackage ../misc/drivers/epsonscan2 { };
18327   foomatic-db-ppds-withNonfreeDb = callPackage ../by-name/fo/foomatic-db-ppds/package.nix { withNonfreeDb = true; };
18329   gutenprint = callPackage ../misc/drivers/gutenprint { };
18331   gutenprintBin = callPackage ../misc/drivers/gutenprint/bin.nix { };
18333   dcp375cwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp375cw { }).driver;
18335   dcp375cw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp375cw { }).cupswrapper;
18337   dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver;
18339   dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper;
18341   cups-brother-hl1110 = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1110 { };
18343   cups-brother-hl1210w = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1210w { };
18345   cups-brother-hl2260d = pkgsi686Linux.callPackage ../misc/cups/drivers/hl2260d { };
18347   cups-brother-hl3140cw = pkgsi686Linux.callPackage ../misc/cups/drivers/hl3140cw { };
18349   cups-brother-hll2340dw = pkgsi686Linux.callPackage  ../misc/cups/drivers/hll2340dw { };
18351   cups-brother-hll3230cdw = pkgsi686Linux.callPackage  ../misc/cups/drivers/hll3230cdw { };
18353   # this driver ships with pre-compiled 32-bit binary libraries
18354   cnijfilter_2_80 = pkgsi686Linux.callPackage ../misc/cups/drivers/cnijfilter_2_80 { };
18356   depotdownloader = callPackage ../tools/misc/depotdownloader { };
18358   faust = res.faust2;
18360   faust2 = callPackage ../applications/audio/faust/faust2.nix { };
18362   faust2alqt = libsForQt5.callPackage ../applications/audio/faust/faust2alqt.nix { };
18364   faust2alsa = callPackage ../applications/audio/faust/faust2alsa.nix { };
18366   faust2csound = callPackage ../applications/audio/faust/faust2csound.nix { };
18368   faust2sc = callPackage ../applications/audio/faust/faust2sc.nix { };
18370   faust2firefox = callPackage ../applications/audio/faust/faust2firefox.nix { };
18372   faust2jack = callPackage ../applications/audio/faust/faust2jack.nix { };
18374   faust2jackrust = callPackage ../applications/audio/faust/faust2jackrust.nix { };
18376   faust2jaqt = libsForQt5.callPackage ../applications/audio/faust/faust2jaqt.nix { };
18378   faust2ladspa = callPackage ../applications/audio/faust/faust2ladspa.nix { };
18380   faust2lv2 = libsForQt5.callPackage ../applications/audio/faust/faust2lv2.nix { };
18382   faustlive = callPackage ../applications/audio/faust/faustlive.nix { };
18384   flashprint = libsForQt5.callPackage ../applications/misc/flashprint { };
18386   fahclient = callPackage ../applications/science/misc/foldingathome/client.nix { };
18388   gajim = callPackage ../applications/networking/instant-messengers/gajim {
18389     inherit (gst_all_1) gstreamer gst-plugins-base gst-libav;
18390     gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
18391   };
18393   ghostscriptX = ghostscript.override {
18394     cupsSupport = true;
18395     x11Support = true;
18396   };
18398   ghostscript_headless = ghostscript.override {
18399     cupsSupport = false;
18400     x11Support = false;
18401   };
18403   gnuk = callPackage ../misc/gnuk {
18404     gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc;
18405     binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
18406   };
18408   gotestwaf = callPackage ../tools/security/gotestwaf {
18409     buildGoModule = buildGo123Module;
18410   };
18412   gotrue = callPackage ../tools/security/gotrue { };
18414   gotrue-supabase = callPackage ../tools/security/gotrue/supabase.nix { };
18416   gowitness = callPackage ../tools/security/gowitness {
18417     buildGoModule = buildGo123Module;
18418   };
18420   helmfile = callPackage ../applications/networking/cluster/helmfile { };
18422   helmfile-wrapped = callPackage ../applications/networking/cluster/helmfile {
18423     inherit (kubernetes-helm-wrapped.passthru) pluginsDir;
18424   };
18426   hplipWithPlugin = hplip.override { withPlugin = true; };
18428   hyperfine = callPackage ../tools/misc/hyperfine {
18429     inherit (darwin.apple_sdk.frameworks) Security;
18430   };
18432   websocat = callPackage ../tools/misc/websocat {
18433     inherit (darwin.apple_sdk.frameworks) Security;
18434   };
18436   vector = callPackage ../tools/misc/vector {
18437     inherit (darwin.apple_sdk.frameworks) Security CoreServices SystemConfiguration;
18438   };
18440   hjson = with python3Packages; toPythonApplication hjson;
18442   epkowa = callPackage ../misc/drivers/epkowa { };
18444   utsushi = callPackage ../misc/drivers/utsushi { };
18446   utsushi-networkscan = callPackage ../misc/drivers/utsushi/networkscan.nix { };
18448   lima = callPackage ../applications/virtualization/lima {
18449     inherit (darwin) sigtool;
18450   };
18452   lima-bin = callPackage ../applications/virtualization/lima/bin.nix { };
18454   image_optim = callPackage ../applications/graphics/image_optim { inherit (nodePackages) svgo; };
18456   itamae = callPackage ../tools/admin/itamae { };
18458   # using the new configuration style proposal which is unstable
18459   jack1 = callPackage ../misc/jackaudio/jack1.nix { };
18461   jack2 = callPackage ../misc/jackaudio {
18462     libopus = libopus.override { withCustomModes = true; };
18463     inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio Accelerate;
18464     inherit (darwin) libobjc;
18465   };
18467   libjack2 = jack2.override { prefix = "lib"; };
18469   jack-example-tools = callPackage ../misc/jackaudio/tools.nix {
18470     libopus = libopus.override { withCustomModes = true; };
18471     jack = jack2;
18472   };
18474   jack-autoconnect = libsForQt5.callPackage ../applications/audio/jack-autoconnect { };
18475   jack_autoconnect = jack-autoconnect;
18477   j2cli = with python311Packages; toPythonApplication j2cli;
18479   kmonad = haskellPackages.kmonad.bin;
18481   kompute = callPackage ../development/libraries/kompute {
18482     fmt = fmt_8;
18483   };
18485   # In general we only want keep the last three minor versions around that
18486   # correspond to the last three supported kubernetes versions:
18487   # https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions
18488   # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases
18489   inherit (callPackage ../applications/networking/cluster/kops {})
18490     mkKops
18491     kops_1_27
18492     kops_1_28
18493     kops_1_29
18494     kops_1_30
18495     ;
18496   kops = kops_1_29;
18498   lighthouse = darwin.apple_sdk_11_0.callPackage ../applications/blockchains/lighthouse {
18499     inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation Security SystemConfiguration;
18500   };
18502   lilypond = callPackage ../misc/lilypond { };
18504   lilypond-unstable = callPackage ../misc/lilypond/unstable.nix { };
18506   lilypond-unstable-with-fonts = callPackage ../misc/lilypond/with-fonts.nix {
18507     lilypond = lilypond-unstable;
18508     openlilylib-fonts = openlilylib-fonts.override {
18509       lilypond = lilypond-unstable;
18510     };
18511   };
18513   lilypond-with-fonts = callPackage ../misc/lilypond/with-fonts.nix { };
18515   openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { };
18517   mailcore2 = callPackage ../development/libraries/mailcore2 {
18518     icu = icu71;
18519   };
18521   mongoc = darwin.apple_sdk_11_0.callPackage ../development/libraries/mongoc { };
18523   mongocxx = callPackage ../development/libraries/mongocxx/default.nix { };
18525   muse = libsForQt5.callPackage ../applications/audio/muse { };
18527   nixVersions = recurseIntoAttrs (callPackage ../tools/package-management/nix {
18528     storeDir = config.nix.storeDir or "/nix/store";
18529     stateDir = config.nix.stateDir or "/nix/var";
18530     inherit (darwin.apple_sdk.frameworks) Security;
18531   });
18533   nix = nixVersions.stable;
18535   nixStatic = pkgsStatic.nix;
18537   lixVersions = recurseIntoAttrs (callPackage ../tools/package-management/lix {
18538     storeDir = config.nix.storeDir or "/nix/store";
18539     stateDir = config.nix.stateDir or "/nix/var";
18540     inherit (darwin.apple_sdk.frameworks) Security;
18541   });
18543   lix = lixVersions.stable;
18545   lixStatic = pkgsStatic.lix;
18547   inherit (callPackages ../applications/networking/cluster/nixops { })
18548     nixops_unstable_minimal
18550     # Not recommended; too fragile
18551     nixops_unstable_full;
18553   # Useful with ofborg, e.g. commit prefix `nixops_unstablePlugins.nixops-digitalocean: ...` to trigger automatically.
18554   nixops_unstablePlugins = recurseIntoAttrs nixops_unstable_minimal.availablePlugins;
18556   /*
18557     Evaluate a NixOS configuration using this evaluation of Nixpkgs.
18559     With this function you can write, for example, a package that
18560     depends on a custom virtual machine image.
18562     Parameter:  A module, path or list of those that represent the
18563                 configuration of the NixOS system to be constructed.
18565     Result: An attribute set containing packages produced by this
18566             evaluation of NixOS, such as toplevel, kernel and
18567             initialRamdisk.
18568             The result can be extended in the modules by defining
18569             extra attributes in system.build.
18570             Alternatively, you may use the result's config and
18571             options attributes to query any option.
18573     Example:
18575         let
18576           myOS = pkgs.nixos ({ lib, pkgs, config, ... }: {
18578             config.services.nginx = {
18579               enable = true;
18580               # ...
18581             };
18583             # Use config.system.build to exports relevant parts of a
18584             # configuration. The runner attribute should not be
18585             # considered a fully general replacement for systemd
18586             # functionality.
18587             config.system.build.run-nginx = config.systemd.services.nginx.runner;
18588           });
18589         in
18590           myOS.run-nginx
18592     Unlike in plain NixOS, the nixpkgs.config and
18593     nixpkgs.system options will be ignored by default. Instead,
18594     nixpkgs.pkgs will have the default value of pkgs as it was
18595     constructed right after invoking the nixpkgs function (e.g. the
18596     value of import <nixpkgs> { overlays = [./my-overlay.nix]; }
18597     but not the value of (import <nixpkgs> {} // { extra = ...; }).
18599     If you do want to use the config.nixpkgs options, you are
18600     probably better off by calling nixos/lib/eval-config.nix
18601     directly, even though it is possible to set config.nixpkgs.pkgs.
18603     For more information about writing NixOS modules, see
18604     https://nixos.org/nixos/manual/index.html#sec-writing-modules
18606     Note that you will need to have called Nixpkgs with the system
18607     parameter set to the right value for your deployment target.
18608   */
18609   nixos =
18610     configuration:
18611       let
18612         c = import (path + "/nixos/lib/eval-config.nix") {
18613               modules =
18614                 [(
18615                   { lib, ... }: {
18616                     config.nixpkgs.pkgs = lib.mkDefault pkgs;
18617                     config.nixpkgs.localSystem = lib.mkDefault stdenv.hostPlatform;
18618                   }
18619                 )] ++ (
18620                   if builtins.isList configuration
18621                   then configuration
18622                   else [configuration]
18623                 );
18625                 # The system is inherited from the current pkgs above.
18626                 # Set it to null, to remove the "legacy" entrypoint's non-hermetic default.
18627                 system = null;
18628             };
18629       in
18630         c.config.system.build // c;
18632   /*
18633     A NixOS/home-manager/arion/... module that sets the `pkgs` module argument.
18634    */
18635   pkgsModule = { options, ... }: {
18636     config =
18637       if options?nixpkgs.pkgs then {
18638         # legacy / nixpkgs.nix style
18639         nixpkgs.pkgs = pkgs;
18640       }
18641       else {
18642         # minimal
18643         _module.args.pkgs = pkgs;
18644       };
18645   };
18647   nixosOptionsDoc = attrs:
18648     (import ../../nixos/lib/make-options-doc)
18649     ({ inherit pkgs lib; } // attrs);
18651   nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs {
18652     nix = nixVersions.nix_2_24;
18653   };
18655   nix-delegate = haskell.lib.compose.justStaticExecutables haskellPackages.nix-delegate;
18656   nix-deploy = haskell.lib.compose.justStaticExecutables haskellPackages.nix-deploy;
18657   nix-derivation = haskell.lib.compose.justStaticExecutables haskellPackages.nix-derivation;
18658   nix-diff = haskell.lib.compose.justStaticExecutables haskellPackages.nix-diff;
18660   nix-du = callPackage ../tools/package-management/nix-du {
18661     inherit (darwin.apple_sdk.frameworks) Security;
18662   };
18664   nix-info = callPackage ../tools/nix/info { };
18665   nix-info-tested = nix-info.override { doCheck = true; };
18667   nix-index-unwrapped = callPackage ../tools/package-management/nix-index {
18668     inherit (darwin.apple_sdk.frameworks) Security;
18669   };
18670   nix-index = callPackage ../tools/package-management/nix-index/wrapper.nix { };
18672   nix-linter = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-linter);
18674   nixos-option = callPackage ../tools/nix/nixos-option { };
18676   nix-pin = callPackage ../tools/package-management/nix-pin { };
18678   nix-prefetch-github = with python3Packages;
18679     toPythonApplication nix-prefetch-github;
18681   inherit (callPackages ../tools/package-management/nix-prefetch-scripts { })
18682     nix-prefetch-bzr
18683     nix-prefetch-cvs
18684     nix-prefetch-git
18685     nix-prefetch-hg
18686     nix-prefetch-svn
18687     nix-prefetch-scripts;
18689   nix-update-source = callPackage ../tools/package-management/nix-update-source { };
18691   nix-tree = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-tree);
18693   nix-serve-ng = haskell.lib.compose.justStaticExecutables haskellPackages.nix-serve-ng;
18695   nix-visualize = python3.pkgs.callPackage ../tools/package-management/nix-visualize { };
18697   nixci = callPackage ../tools/nix/nixci {
18698     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration IOKit;
18699   };
18701   nixfmt-classic = haskellPackages.nixfmt.bin;
18703   nixpkgs-manual = callPackage ../../doc/doc-support/package.nix { };
18705   nixos-artwork = callPackage ../data/misc/nixos-artwork { };
18706   nixos-icons = callPackage ../data/misc/nixos-artwork/icons.nix { };
18707   nixos-grub2-theme = callPackage ../data/misc/nixos-artwork/grub2-theme.nix { };
18709   nixos-rebuild = callPackage ../os-specific/linux/nixos-rebuild { };
18711   disnix = callPackage ../tools/package-management/disnix { };
18713   dysnomia = callPackage ../tools/package-management/disnix/dysnomia (config.disnix or {
18714     inherit (python3Packages) supervisor;
18715   });
18717   DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService {
18718     jdk = jdk8;
18719   };
18721   lice = python3Packages.callPackage ../tools/misc/lice { };
18723   mysql-workbench = callPackage ../applications/misc/mysql-workbench (let mysql = mysql80; in {
18724     gdal = gdal.override {
18725       libmysqlclient = mysql;
18726     };
18727     mysql = mysql;
18728     pcre = pcre-cpp;
18729   });
18731   resp-app = libsForQt5.callPackage ../applications/misc/resp-app { };
18733   stork = darwin.apple_sdk_11_0.callPackage ../applications/misc/stork {
18734     inherit (darwin.apple_sdk_11_0.frameworks) Security;
18735   };
18737   pgadmin4 = callPackage ../tools/admin/pgadmin { };
18739   pgadmin4-desktopmode = callPackage ../tools/admin/pgadmin { server-mode = false; };
18741   pgmodeler = qt6Packages.callPackage ../applications/misc/pgmodeler { };
18743   pjsip = darwin.apple_sdk_11_0.callPackage ../applications/networking/pjsip {
18744     inherit (darwin.apple_sdk_11_0.frameworks) AppKit CoreFoundation Security;
18745   };
18747   pt = callPackage ../applications/misc/pt { };
18749   pyupgrade = with python3Packages; toPythonApplication pyupgrade;
18751   pwntools = with python3Packages; toPythonApplication pwntools;
18753   putty = callPackage ../applications/networking/remote/putty {
18754     gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
18755   };
18757   qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { };
18759   qMasterPassword-wayland = qt6Packages.callPackage ../applications/misc/qMasterPassword {
18760     x11Support = false;
18761     waylandSupport = true;
18762   };
18764   qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { };
18766   qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { };
18768   qzdl = libsForQt5.callPackage ../games/qzdl { };
18770   rates = callPackage ../tools/misc/rates {
18771     inherit (darwin.apple_sdk.frameworks) Security;
18772   };
18774   rbspy = darwin.apple_sdk_11_0.callPackage ../development/tools/rbspy { };
18776   pick-colour-picker = python3Packages.callPackage ../applications/graphics/pick-colour-picker {
18777     inherit glib gtk3 gobject-introspection wrapGAppsHook3;
18778   };
18780   romdirfs = callPackage ../tools/filesystems/romdirfs {
18781     stdenv = gccStdenv;
18782   };
18784   xdragon = lowPrio (callPackage ../tools/X11/xdragon { });
18786   sail-riscv-rv32 = callPackage ../applications/virtualization/sail-riscv {
18787     arch = "RV32";
18788   };
18790   sail-riscv-rv64 = callPackage ../applications/virtualization/sail-riscv {
18791     arch = "RV64";
18792   };
18794   timeloop = pkgs.darwin.apple_sdk_11_0.callPackage ../applications/science/computer-architecture/timeloop { };
18796   mfcj470dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj470dwlpr { };
18798   mfcj6510dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj6510dwlpr { };
18800   mfcl2700dnlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcl2700dnlpr { };
18802   # This driver is only available as a 32 bit proprietary binary driver
18803   mfcl3770cdwlpr = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).driver;
18804   mfcl3770cdwcupswrapper = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).cupswrapper;
18806   samsung-unified-linux-driver_1_00_37 = callPackage ../misc/cups/drivers/samsung/1.00.37.nix { };
18807   samsung-unified-linux-driver_4_01_17 = callPackage ../misc/cups/drivers/samsung/4.01.17.nix { };
18808   samsung-unified-linux-driver = res.samsung-unified-linux-driver_4_01_17;
18810   sane-backends = callPackage ../applications/graphics/sane/backends (config.sane or {});
18812   sane-drivers = callPackage ../applications/graphics/sane/drivers.nix { };
18814   mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { };
18816   sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { };
18818   satysfi = callPackage ../tools/typesetting/satysfi {
18819     ocamlPackages = ocaml-ng.ocamlPackages_4_14;
18820   };
18822   sc-controller = python3Packages.callPackage ../misc/drivers/sc-controller {
18823     inherit libusb1; # Shadow python.pkgs.libusb1.
18824   };
18826   slock = callPackage ../misc/screensavers/slock {
18827     conf = config.slock.conf or null;
18828   };
18830   snscrape = with python3Packages; toPythonApplication snscrape;
18832   sourceAndTags = callPackage ../misc/source-and-tags {
18833     hasktags = haskellPackages.hasktags;
18834   };
18836   spacenavd = callPackage ../misc/drivers/spacenavd {
18837     inherit (darwin.apple_sdk.frameworks) IOKit;
18838   };
18840   tellico = libsForQt5.callPackage ../applications/misc/tellico { };
18842   termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py { };
18844   inherit (callPackage ../applications/networking/cluster/terraform { })
18845     mkTerraform
18846     terraform_1
18847     terraform_plugins_test
18848     ;
18850   terraform = terraform_1;
18852   terraform-providers = recurseIntoAttrs (
18853     callPackage ../applications/networking/cluster/terraform-providers { }
18854   );
18856   terraforming = callPackage ../applications/networking/cluster/terraforming { };
18858   terraform-landscape = callPackage ../applications/networking/cluster/terraform-landscape { };
18860   terraspace = callPackage ../applications/networking/cluster/terraspace { };
18862   tftui = python3Packages.callPackage ../applications/networking/cluster/tftui { };
18864   touchosc = callPackage ../applications/audio/touchosc { };
18866   trufflehog = callPackage ../tools/security/trufflehog {
18867     buildGoModule = buildGo123Module;
18868   };
18870   unityhub = callPackage ../development/tools/unityhub { };
18872   urbit = callPackage ../misc/urbit { };
18874   unixcw = libsForQt5.callPackage ../applications/radio/unixcw { };
18876   vaultenv = haskell.lib.justStaticExecutables haskellPackages.vaultenv;
18878   vaultwarden = callPackage ../tools/security/vaultwarden {
18879     inherit (darwin.apple_sdk.frameworks) Security CoreServices SystemConfiguration;
18880   };
18881   vaultwarden-sqlite = vaultwarden;
18882   vaultwarden-mysql = vaultwarden.override { dbBackend = "mysql"; };
18883   vaultwarden-postgresql = vaultwarden.override { dbBackend = "postgresql"; };
18885   veilid = darwin.apple_sdk_11_0.callPackage ../tools/networking/veilid {
18886     inherit (darwin.apple_sdk.frameworks) AppKit Security;
18887   };
18889   vimUtils = callPackage ../applications/editors/vim/plugins/vim-utils.nix { };
18891   vimPlugins = recurseIntoAttrs (callPackage ../applications/editors/vim/plugins { });
18893   vimb = wrapFirefox vimb-unwrapped { };
18895   vips = callPackage ../by-name/vi/vips/package.nix {
18896     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
18897   };
18899   vivisect = with python3Packages; toPythonApplication (vivisect.override { withGui = true; });
18901   vokoscreen = libsForQt5.callPackage ../applications/video/vokoscreen {
18902     ffmpeg = ffmpeg-full;
18903   };
18905   vokoscreen-ng = libsForQt5.callPackage ../applications/video/vokoscreen-ng {
18906     inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly;
18907   };
18909   wacomtablet = libsForQt5.callPackage ../tools/misc/wacomtablet { };
18911   wamr = darwin.apple_sdk_11_0.callPackage ../development/interpreters/wamr { };
18913   wasmer = callPackage ../development/interpreters/wasmer {
18914     llvmPackages = llvmPackages_18;
18915   };
18917   wavm = callPackage ../development/interpreters/wavm {
18918     llvmPackages = llvmPackages_12;
18919   };
18921   webkit2-sharp = callPackage ../development/libraries/webkit2-sharp {
18922     webkitgtk = webkitgtk_4_0;
18923   };
18925   wibo = pkgsi686Linux.callPackage ../applications/emulators/wibo { };
18927   wikicurses = callPackage ../applications/misc/wikicurses {
18928     pythonPackages = python3Packages;
18929   };
18931   wiki-js = callPackage ../servers/web-apps/wiki-js { };
18933   wiki-tui = callPackage ../misc/wiki-tui {
18934     inherit (darwin.apple_sdk.frameworks) Security;
18935   };
18937   winePackagesFor = wineBuild: lib.makeExtensible (self: with self; {
18938     callPackage = newScope self;
18940     inherit wineBuild;
18942     inherit (callPackage ./wine-packages.nix {})
18943       minimal base full stable stableFull unstable unstableFull staging stagingFull wayland waylandFull fonts;
18944   });
18946   winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32"));
18947   wine64Packages = recurseIntoAttrs (winePackagesFor "wine64");
18948   wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow");
18949   wineWow64Packages = recurseIntoAttrs (winePackagesFor "wineWow64");
18951   wine = winePackages.full;
18952   wine64 = wine64Packages.full;
18954   wine-staging = lowPrio (winePackages.full.override {
18955     wineRelease = "staging";
18956   });
18958   wine-wayland = lowPrio (winePackages.full.override {
18959     wineRelease = "wayland";
18960   });
18962   inherit (callPackage ../servers/web-apps/wordpress {})
18963     wordpress wordpress_6_6;
18965   wordpressPackages = ( callPackage ../servers/web-apps/wordpress/packages {
18966     plugins = lib.importJSON ../servers/web-apps/wordpress/packages/plugins.json;
18967     themes = lib.importJSON ../servers/web-apps/wordpress/packages/themes.json;
18968     languages = lib.importJSON ../servers/web-apps/wordpress/packages/languages.json;
18969   });
18971   wraith = callPackage ../applications/networking/irc/wraith {
18972     openssl = openssl_1_1;
18973   };
18975   wxsqlite3 = callPackage ../development/libraries/wxsqlite3 {
18976     wxGTK = wxGTK32;
18977     inherit (darwin.apple_sdk.frameworks) Cocoa;
18978     inherit (darwin.stubs) setfile rez derez;
18979   };
18981   wxsqliteplus = callPackage ../development/libraries/wxsqliteplus {
18982     wxGTK = wxGTK32;
18983     inherit (darwin.apple_sdk.frameworks) Cocoa;
18984     inherit (darwin.stubs) setfile;
18985   };
18987   xhyve = callPackage ../applications/virtualization/xhyve {
18988     inherit (darwin.apple_sdk.frameworks) Hypervisor vmnet;
18989     inherit (darwin.apple_sdk.libs) xpc;
18990     inherit (darwin) libobjc;
18991   };
18993   xsane = callPackage ../applications/graphics/sane/xsane.nix { };
18995   xsw = callPackage ../applications/misc/xsw {
18996     # Enable the next line to use this in terminal.
18997     # Note that it requires sixel capable terminals such as mlterm
18998     # or xterm -ti 340
18999     SDL = SDL_sixel;
19000   };
19002   yacreader = libsForQt5.callPackage ../applications/graphics/yacreader { };
19004   yamale = with python3Packages; toPythonApplication yamale;
19006   yandex-browser-beta = yandex-browser.override { edition = "beta"; };
19008   yandex-browser-corporate = yandex-browser.override { edition = "corporate"; };
19010   zap-chip-gui = zap-chip.override { withGui = true; };
19012   myEnvFun = callPackage ../misc/my-env {
19013     inherit (stdenv) mkDerivation;
19014   };
19016   znc = callPackage ../applications/networking/znc { };
19018   zncModules = recurseIntoAttrs (
19019     callPackage ../applications/networking/znc/modules.nix { }
19020   );
19022   zrok = callPackage ../tools/networking/zrok { };
19024   bullet = callPackage ../development/libraries/bullet {
19025     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
19026   };
19028   bullet-roboschool = callPackage ../development/libraries/bullet/roboschool-fork.nix {
19029     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
19030   };
19032   dart = callPackage ../development/compilers/dart { };
19034   pub2nix = recurseIntoAttrs (callPackage ../build-support/dart/pub2nix { });
19036   buildDartApplication = callPackage ../build-support/dart/build-dart-application { };
19038   dartHooks = callPackage ../build-support/dart/build-dart-application/hooks { };
19040   httrack = callPackage ../tools/backup/httrack { };
19042   httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { };
19044   # Overriding does not work when using callPackage on discord using import instead. (https://github.com/NixOS/nixpkgs/pull/179906)
19045   discord = import ../applications/networking/instant-messengers/discord {
19046     inherit lib stdenv;
19047     inherit (pkgs) callPackage fetchurl;
19048     branch = "stable";
19049   };
19051   discord-ptb = import ../applications/networking/instant-messengers/discord {
19052     inherit lib stdenv;
19053     inherit (pkgs) callPackage fetchurl;
19054     branch = "ptb";
19055   };
19057   discord-canary = import ../applications/networking/instant-messengers/discord {
19058     inherit lib stdenv;
19059     inherit (pkgs) callPackage fetchurl;
19060     branch = "canary";
19061   };
19063   discord-development = import ../applications/networking/instant-messengers/discord {
19064     inherit lib stdenv;
19065     inherit (pkgs) callPackage fetchurl;
19066     branch = "development";
19067   };
19070   discord-screenaudio = qt6Packages.callPackage ../applications/networking/instant-messengers/discord-screenaudio { };
19072   discordo = callPackage ../applications/networking/discordo/default.nix { };
19074   golden-cheetah = libsForQt5.callPackage ../applications/misc/golden-cheetah { };
19076   tomb = callPackage ../by-name/to/tomb/package.nix {
19077     pinentry = pinentry-curses;
19078   };
19080   serial-studio = libsForQt5.callPackage ../applications/misc/serial-studio { };
19082   maphosts = callPackage ../tools/networking/maphosts { };
19084   tora = libsForQt5.callPackage ../development/tools/tora { };
19086   nitrokey-app = libsForQt5.callPackage ../tools/security/nitrokey-app { };
19088   nitrokey-app2 = qt6Packages.callPackage ../tools/security/nitrokey-app2 { };
19090   hy = with python3Packages; toPythonApplication hy;
19092   ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { };
19094   vdr = callPackage ../applications/video/vdr { };
19095   vdrPlugins = recurseIntoAttrs (callPackage ../applications/video/vdr/plugins.nix { });
19096   wrapVdr = callPackage ../applications/video/vdr/wrapper.nix { };
19098   chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing { };
19100   linode-cli = python3Packages.callPackage ../tools/virtualization/linode-cli { };
19102   phonetisaurus = callPackage ../development/libraries/phonetisaurus {
19103     # https://github.com/AdolfVonKleist/Phonetisaurus/issues/70
19104     openfst = openfst.overrideAttrs rec {
19105       version = "1.7.9";
19106       src = fetchurl {
19107         url = "http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-${version}.tar.gz";
19108         hash = "sha256-kxmusx0eKVCuJUSYhOJVzCvJ36+Yf2AVkHY+YaEPvd4=";
19109       };
19110     };
19111   };
19113   compressDrv = callPackage ../build-support/compress-drv { };
19115   compressDrvWeb = callPackage ../build-support/compress-drv/web.nix { };
19117   duti = callPackage ../os-specific/darwin/duti {
19118     inherit (darwin.apple_sdk.frameworks) ApplicationServices;
19119   };
19121   dnstracer = callPackage ../tools/networking/dnstracer {
19122     inherit (darwin) libresolv;
19123   };
19125   diceware = with python3Packages; toPythonApplication diceware;
19127   xml2rfc = with python3Packages; toPythonApplication xml2rfc;
19129   ape = callPackage ../applications/misc/ape { };
19130   attemptoClex = callPackage ../applications/misc/ape/clex.nix { };
19131   apeClex = callPackage ../applications/misc/ape/apeclex.nix { };
19133   # Unix tools
19134   unixtools = recurseIntoAttrs (callPackages ./unixtools.nix { });
19135   inherit (unixtools) hexdump ps logger eject umount
19136                       mount wall hostname more sysctl getconf
19137                       getent locale killall xxd watch;
19139   fts = if stdenv.hostPlatform.isMusl then musl-fts else null;
19141   bsdSetupHook = makeSetupHook {
19142     name = "bsd-setup-hook";
19143   } ../os-specific/bsd/setup-hook.sh;
19145   freebsd = callPackage ../os-specific/bsd/freebsd { };
19147   netbsd = callPackage ../os-specific/bsd/netbsd { };
19149   openbsd = callPackage ../os-specific/bsd/openbsd { };
19151   doing = callPackage ../applications/misc/doing  { };
19153   alibuild = callPackage ../development/tools/build-managers/alibuild {
19154     python = python3;
19155   };
19157   bcompare = libsForQt5.callPackage ../applications/version-management/bcompare { };
19159   xp-pen-deco-01-v2-driver = libsForQt5.xp-pen-deco-01-v2-driver;
19161   xp-pen-g430-driver = libsForQt5.xp-pen-g430-driver;
19163   newlib = callPackage ../development/misc/newlib {
19164     stdenv = stdenvNoLibc;
19165   };
19167   newlib-nano = callPackage ../development/misc/newlib {
19168     stdenv = stdenvNoLibc;
19169     nanoizeNewlib = true;
19170   };
19172   wasmtime = callPackage ../development/interpreters/wasmtime {
19173     inherit (darwin.apple_sdk.frameworks) Security;
19174   };
19176   wfuzz = with python3Packages; toPythonApplication wfuzz;
19178   zfs-replicate = python3Packages.callPackage ../tools/backup/zfs-replicate { };
19180   kodelife = callPackage ../applications/graphics/kodelife {
19181     inherit (gst_all_1) gstreamer gst-plugins-base;
19182   };
19184   weasis = callPackage ../by-name/we/weasis/package.nix {
19185     jre = jdk21;
19186   };
19188   sieveshell = with python3.pkgs; toPythonApplication managesieve;
19190   sunshine = callPackage ../servers/sunshine { };
19192   jami = qt6Packages.callPackage ../applications/networking/instant-messengers/jami {
19193     # TODO: remove once `udev` is `systemdMinimal` everywhere.
19194     udev = systemdMinimal;
19195     jack = libjack2;
19196   };
19198   gpio-utils = callPackage ../os-specific/linux/kernel/gpio-utils.nix { };
19200   inherit (callPackage ../applications/misc/zettlr { }) zettlr;
19202   fac-build = callPackage ../development/tools/build-managers/fac {
19203     inherit (darwin.apple_sdk.frameworks) CoreServices;
19204   };
19206   bottom = darwin.apple_sdk_11_0.callPackage ../tools/system/bottom { };
19208   cagebreak = callPackage ../applications/window-managers/cagebreak {
19209     wlroots = wlroots_0_17;
19210   };
19212   ldid = callPackage ../development/tools/ldid {
19213     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
19214   };
19216   zram-generator = callPackage ../tools/system/zram-generator { };
19218   zrythm = callPackage ../applications/audio/zrythm {
19219     inherit (plasma5Packages) breeze-icons;
19220   };
19222   honeymarker = callPackage ../servers/tracing/honeycomb/honeymarker { };
19224   honeytail = callPackage ../servers/tracing/honeycomb/honeytail { };
19226   honeyvent = callPackage ../servers/tracing/honeycomb/honeyvent { };
19228   swift-corelibs-libdispatch = swiftPackages.Dispatch;
19230   aitrack = libsForQt5.callPackage ../applications/misc/aitrack { };
19232   widevine-cdm = callPackage ../applications/networking/browsers/misc/widevine-cdm.nix { };
19234   tidal-dl = python3Packages.callPackage ../tools/audio/tidal-dl { };
19236   tubekit = callPackage ../applications/networking/cluster/tubekit/wrapper.nix { };
19238   tubekit-unwrapped = callPackage ../applications/networking/cluster/tubekit { };
19240   duden = python3Packages.toPythonApplication python3Packages.duden;
19242   tremotesf = libsForQt5.callPackage ../applications/networking/p2p/tremotesf { };
19244   yazi-unwrapped = callPackage ../by-name/ya/yazi-unwrapped/package.nix { inherit (darwin.apple_sdk.frameworks) Foundation; };
19246   animdl = python3Packages.callPackage ../applications/video/animdl { };
19248   dillo = callPackage ../by-name/di/dillo/package.nix {
19249     fltk = fltk13;
19250   };
19252   cantata = callPackage ../by-name/ca/cantata/package.nix {
19253     ffmpeg = ffmpeg_6;
19254   };
19256   tree-from-tags = callPackage ../by-name/tr/tree-from-tags/package.nix {
19257     ruby = ruby_3_1;
19258   };