1/*
2 The top-level package collection of nixpkgs.
3 It is sorted by categories corresponding to the folder names in the /pkgs
4 folder. Inside the categories packages are roughly sorted by alphabet, but
5 strict sorting has been long lost due to merges. Please use the full-text
6 search of your editor. ;)
7 Hint: ### starts category names.
8*/
9{
10 lib,
11 noSysDirs,
12 config,
13 overlays,
14}:
15res: pkgs: super:
16
17with pkgs;
18
19{
20 # A module system style type tag
21 #
22 # Allows the nixpkgs fixpoint, usually known as `pkgs` to be distinguished
23 # nominally.
24 #
25 # pkgs._type == "pkgs"
26 # pkgs.pkgsStatic._type == "pkgs"
27 #
28 # Design note:
29 # While earlier stages of nixpkgs fixpoint construction are supertypes of this
30 # stage, they're generally not usable in places where a `pkgs` is expected.
31 # (earlier stages being the various `super` variables that precede
32 # all-packages.nix)
33 _type = "pkgs";
34
35 # A stdenv capable of building 32-bit binaries.
36 # On x86_64-linux, it uses GCC compiled with multilib support; on i686-linux,
37 # it's just the plain stdenv.
38 stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv);
39
40 mkStdenvNoLibs =
41 stdenv:
42 let
43 bintools = stdenv.cc.bintools.override {
44 libc = null;
45 noLibc = true;
46 };
47 in
48 stdenv.override {
49 cc = stdenv.cc.override {
50 libc = null;
51 noLibc = true;
52 extraPackages = [ ];
53 inherit bintools;
54 };
55 allowedRequisites = lib.mapNullable (rs: rs ++ [ bintools ]) (stdenv.allowedRequisites or null);
56 };
57
58 stdenvNoLibs =
59 if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform then
60 # We cannot touch binutils or cc themselves, because that will cause
61 # infinite recursion. So instead, we just choose a libc based on the
62 # current platform. That means we won't respect whatever compiler was
63 # passed in with the stdenv stage argument.
64 #
65 # TODO It would be much better to pass the `stdenvNoCC` and *unwrapped*
66 # cc, bintools, compiler-rt equivalent, etc. and create all final stdenvs
67 # as part of the stage. Then we would never be tempted to override a later
68 # thing to to create an earlier thing (leading to infinite recursion) and
69 # we also would still respect the stage arguments choices for these
70 # things.
71 (
72 if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false then
73 overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoCompilerRt
74 else
75 gccCrossLibcStdenv
76 )
77 else
78 mkStdenvNoLibs stdenv;
79
80 stdenvNoLibc =
81 if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform then
82 (
83 if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false then
84 overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoLibc
85 else
86 gccCrossLibcStdenv
87 )
88 else
89 mkStdenvNoLibs stdenv;
90
91 gccStdenvNoLibs = mkStdenvNoLibs gccStdenv;
92 clangStdenvNoLibs = mkStdenvNoLibs clangStdenv;
93
94 # For convenience, allow callers to get the path to Nixpkgs.
95 path = ../..;
96
97 ### Helper functions.
98 inherit lib config overlays;
99
100 # do not import 'appendToName' to get consistent package-names with the same
101 # set of package-parameters: https://github.com/NixOS/nixpkgs/issues/68519
102 inherit (lib) lowPrio hiPrio makeOverridable;
103
104 inherit (lib) recurseIntoAttrs;
105
106 # This is intended to be the reverse of recurseIntoAttrs, as it is
107 # defined now it exists mainly for documentation purposes, but you
108 # can also override this with recurseIntoAttrs to recurseInto all
109 # the Attrs which is useful for testing massive changes. Ideally,
110 # every package subset not marked with recurseIntoAttrs should be
111 # marked with this.
112 inherit (lib) dontRecurseIntoAttrs;
113
114 stringsWithDeps = lib.stringsWithDeps;
115
116 ### Evaluating the entire Nixpkgs naively will likely fail, make failure fast
117 AAAAAASomeThingsFailToEvaluate = throw ''
118 This pseudo-package is likely not the only part of Nixpkgs that fails to evaluate.
119 You should not evaluate entire Nixpkgs without measures to handle failing packages.
120 '';
121
122 tests = lib.recurseIntoAttrs (callPackages ../test { });
123
124 defaultPkgConfigPackages =
125 # We don't want nix-env -q to enter this, because all of these are aliases.
126 dontRecurseIntoAttrs (import ./pkg-config/defaultPkgConfigPackages.nix pkgs);
127
128 ### Nixpkgs maintainer tools
129
130 nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { };
131
132 nixpkgs-lint = callPackage ../../maintainers/scripts/nixpkgs-lint.nix { };
133
134 common-updater-scripts = callPackage ../common-updater/scripts.nix { };
135
136 vimPluginsUpdater = callPackage ../applications/editors/vim/plugins/utils/updater.nix {
137 inherit (python3Packages) buildPythonApplication;
138 };
139
140 genericUpdater = callPackage ../common-updater/generic-updater.nix { };
141
142 _experimental-update-script-combinators = callPackage ../common-updater/combinators.nix { };
143
144 directoryListingUpdater = callPackage ../common-updater/directory-listing-updater.nix { };
145
146 gitUpdater = callPackage ../common-updater/git-updater.nix { };
147
148 httpTwoLevelsUpdater = callPackage ../common-updater/http-two-levels-updater.nix { };
149
150 unstableGitUpdater = callPackage ../common-updater/unstable-updater.nix { };
151
152 inherit (nix-update) nix-update-script;
153
154 ### Push NixOS tests inside the fixed point
155
156 # See also allTestsForSystem in nixos/release.nix
157 nixosTests =
158 import ../../nixos/tests/all-tests.nix {
159 inherit pkgs;
160 system = stdenv.hostPlatform.system;
161 callTest = config: config.test;
162 }
163 // {
164 # for typechecking of the scripts and evaluation of
165 # the nodes, without running VMs.
166 allDrivers = import ../../nixos/tests/all-tests.nix {
167 inherit pkgs;
168 system = stdenv.hostPlatform.system;
169 callTest = config: config.test.driver;
170 };
171 };
172
173 ### BUILD SUPPORT
174
175 __flattenIncludeHackHook = callPackage ../build-support/setup-hooks/flatten-include-hack { };
176
177 arrayUtilities =
178 let
179 arrayUtilitiesPackages = makeScopeWithSplicing' {
180 otherSplices = generateSplicesForMkScope "arrayUtilities";
181 f =
182 finalArrayUtilities:
183 {
184 callPackages = lib.callPackagesWith (pkgs // finalArrayUtilities);
185 }
186 // lib.packagesFromDirectoryRecursive {
187 inherit (finalArrayUtilities) callPackage;
188 directory = ../build-support/setup-hooks/arrayUtilities;
189 };
190 };
191 in
192 recurseIntoAttrs arrayUtilitiesPackages;
193
194 addBinToPathHook = callPackage (
195 { makeSetupHook }:
196 makeSetupHook {
197 name = "add-bin-to-path-hook";
198 } ../build-support/setup-hooks/add-bin-to-path.sh
199 ) { };
200
201 aider-chat-with-playwright = aider-chat.withOptional { withPlaywright = true; };
202
203 aider-chat-with-browser = aider-chat.withOptional { withBrowser = true; };
204
205 aider-chat-with-help = aider-chat.withOptional { withHelp = true; };
206
207 aider-chat-with-bedrock = aider-chat.withOptional { withBedrock = true; };
208
209 aider-chat-full = aider-chat.withOptional { withAll = true; };
210
211 autoreconfHook = callPackage (
212 {
213 makeSetupHook,
214 autoconf,
215 automake,
216 gettext,
217 libtool,
218 }:
219 makeSetupHook {
220 name = "autoreconf-hook";
221 propagatedBuildInputs = [
222 autoconf
223 automake
224 gettext
225 libtool
226 ];
227 } ../build-support/setup-hooks/autoreconf.sh
228 ) { };
229
230 autoreconfHook269 = autoreconfHook.override {
231 autoconf = autoconf269;
232 };
233 autoreconfHook271 = autoreconfHook.override {
234 autoconf = autoconf271;
235 };
236
237 autoPatchelfHook = makeSetupHook {
238 name = "auto-patchelf-hook";
239 propagatedBuildInputs = [
240 auto-patchelf
241 bintools
242 ];
243 substitutions = {
244 hostPlatform = stdenv.hostPlatform.config;
245 };
246 } ../build-support/setup-hooks/auto-patchelf.sh;
247
248 appimageTools = callPackage ../build-support/appimage { };
249
250 appimageupdate-qt = appimageupdate.override { withQtUI = true; };
251
252 stripJavaArchivesHook = makeSetupHook {
253 name = "strip-java-archives-hook";
254 propagatedBuildInputs = [ strip-nondeterminism ];
255 } ../build-support/setup-hooks/strip-java-archives.sh;
256
257 ensureNewerSourcesHook =
258 { year }:
259 makeSetupHook
260 {
261 name = "ensure-newer-sources-hook";
262 }
263 (
264 writeScript "ensure-newer-sources-hook.sh" ''
265 postUnpackHooks+=(_ensureNewerSources)
266 _ensureNewerSources() {
267 local r=$sourceRoot
268 # Avoid passing option-looking directory to find. The example is diffoscope-269:
269 # https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/378
270 [[ $r == -* ]] && r="./$r"
271 '${findutils}/bin/find' "$r" \
272 '!' -newermt '${year}-01-01' -exec touch -h -d '${year}-01-02' '{}' '+'
273 }
274 ''
275 );
276
277 alacritty-graphics = callPackage ../by-name/al/alacritty/package.nix { withGraphics = true; };
278
279 # addDriverRunpath is the preferred package name, as this enables
280 # many more scenarios than just opengl now.
281 aocd = with python3Packages; toPythonApplication aocd;
282
283 cve = with python3Packages; toPythonApplication cvelib;
284
285 basalt-monado = callPackage ../by-name/ba/basalt-monado/package.nix {
286 tbb = tbb_2022;
287 cereal = cereal_1_3_2;
288 opencv = opencv.override { enableGtk3 = true; };
289 };
290
291 bloodhound-py = with python3Packages; toPythonApplication bloodhound-py;
292
293 # Zip file format only allows times after year 1980, which makes e.g. Python
294 # wheel building fail with:
295 # ValueError: ZIP does not support timestamps before 1980
296 ensureNewerSourcesForZipFilesHook = ensureNewerSourcesHook { year = "1980"; };
297
298 updateAutotoolsGnuConfigScriptsHook = makeSetupHook {
299 name = "update-autotools-gnu-config-scripts-hook";
300 substitutions = {
301 gnu_config = gnu-config;
302 };
303 } ../build-support/setup-hooks/update-autotools-gnu-config-scripts.sh;
304
305 gogUnpackHook = makeSetupHook {
306 name = "gog-unpack-hook";
307 propagatedBuildInputs = [
308 innoextract
309 file-rename
310 ];
311 } ../build-support/setup-hooks/gog-unpack.sh;
312
313 buildEnv = callPackage ../build-support/buildenv { }; # not actually a package
314
315 buildFHSEnv = buildFHSEnvBubblewrap;
316 buildFHSEnvChroot = callPackage ../build-support/build-fhsenv-chroot { }; # Deprecated; use buildFHSEnv/buildFHSEnvBubblewrap
317 buildFHSEnvBubblewrap = callPackage ../build-support/build-fhsenv-bubblewrap { };
318
319 cameractrls-gtk4 = cameractrls.override { withGtk = 4; };
320
321 cameractrls-gtk3 = cameractrls.override { withGtk = 3; };
322
323 cgal_5 = callPackage ../by-name/cg/cgal/5.nix { };
324
325 checkpointBuildTools = callPackage ../build-support/checkpoint-build.nix { };
326
327 celeste-classic-pm = pkgs.celeste-classic.override {
328 practiceMod = true;
329 };
330
331 cereal = cereal_1_3_0;
332
333 chef-cli = callPackage ../tools/misc/chef-cli { };
334
335 clang-uml = callPackage ../by-name/cl/clang-uml/package.nix {
336 stdenv = clangStdenv;
337 };
338
339 cope = callPackage ../by-name/co/cope/package.nix {
340 perl = perl538;
341 perlPackages = perl538Packages;
342 };
343
344 coolercontrol = recurseIntoAttrs (callPackage ../applications/system/coolercontrol { });
345
346 cup-docker-noserver = cup-docker.override { withServer = false; };
347
348 dhallDirectoryToNix = callPackage ../build-support/dhall/directory-to-nix.nix { };
349
350 dhallPackageToNix = callPackage ../build-support/dhall/package-to-nix.nix { };
351
352 dhallToNix = callPackage ../build-support/dhall/to-nix.nix { };
353
354 dinghy = with python3Packages; toPythonApplication dinghy;
355
356 djgpp = djgpp_i586;
357 djgpp_i586 = callPackage ../development/compilers/djgpp {
358 targetArchitecture = "i586";
359 stdenv = gccStdenv;
360 };
361 djgpp_i686 = lowPrio (
362 callPackage ../development/compilers/djgpp {
363 targetArchitecture = "i686";
364 stdenv = gccStdenv;
365 }
366 );
367
368 dnf-plugins-core = with python3Packages; toPythonApplication dnf-plugins-core;
369
370 dnf4 = python3Packages.callPackage ../development/python-modules/dnf4/wrapper.nix { };
371
372 ebpf-verifier = callPackage ../tools/networking/ebpf-verifier {
373 catch2 = catch2_3;
374 };
375
376 eff = callPackage ../by-name/ef/eff/package.nix { ocamlPackages = ocaml-ng.ocamlPackages_5_2; };
377
378 enochecker-test = with python3Packages; callPackage ../development/tools/enochecker-test { };
379
380 inherit (gridlock) nyarr;
381
382 lshw-gui = lshw.override { withGUI = true; };
383
384 kdePackages = callPackage ../kde { };
385
386 buildcatrust = with python3.pkgs; toPythonApplication buildcatrust;
387
388 mumps-mpi = callPackage ../by-name/mu/mumps/package.nix { mpiSupport = true; };
389
390 protoc-gen-grpc-web = callPackage ../development/tools/protoc-gen-grpc-web {
391 protobuf = protobuf_21;
392 };
393
394 vcpkg-tool = callPackage ../by-name/vc/vcpkg-tool/package.nix {
395 fmt = fmt_11;
396 };
397
398 r3ctl = qt5.callPackage ../tools/misc/r3ctl { };
399
400 deviceTree = callPackage ../os-specific/linux/device-tree { };
401
402 octodns-providers = octodns.providers;
403
404 oletools = with python3.pkgs; toPythonApplication oletools;
405
406 ollama-rocm = callPackage ../by-name/ol/ollama/package.nix { acceleration = "rocm"; };
407 ollama-cuda = callPackage ../by-name/ol/ollama/package.nix { acceleration = "cuda"; };
408
409 device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix { };
410
411 diffPlugins = (callPackage ../build-support/plugins.nix { }).diffPlugins;
412
413 dieHook = makeSetupHook {
414 name = "die-hook";
415 } ../build-support/setup-hooks/die.sh;
416
417 digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox { };
418
419 devShellTools = callPackage ../build-support/dev-shell-tools { };
420
421 dockerTools = callPackage ../build-support/docker {
422 writePython3 = buildPackages.writers.writePython3;
423 };
424
425 tarsum = callPackage ../build-support/docker/tarsum.nix { };
426
427 nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { };
428
429 # Dotnet
430
431 dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet { });
432
433 dotnet-sdk_6 = dotnetCorePackages.sdk_6_0-bin;
434 dotnet-sdk_7 = dotnetCorePackages.sdk_7_0-bin;
435 dotnet-sdk_8 = dotnetCorePackages.sdk_8_0;
436 dotnet-sdk_9 = dotnetCorePackages.sdk_9_0;
437 dotnet-sdk_10 = dotnetCorePackages.sdk_10_0;
438
439 dotnet-runtime_6 = dotnetCorePackages.runtime_6_0-bin;
440 dotnet-runtime_7 = dotnetCorePackages.runtime_7_0-bin;
441 dotnet-runtime_8 = dotnetCorePackages.runtime_8_0;
442 dotnet-runtime_9 = dotnetCorePackages.runtime_9_0;
443 dotnet-runtime_10 = dotnetCorePackages.runtime_10_0;
444
445 dotnet-aspnetcore_6 = dotnetCorePackages.aspnetcore_6_0-bin;
446 dotnet-aspnetcore_7 = dotnetCorePackages.aspnetcore_7_0-bin;
447 dotnet-aspnetcore_8 = dotnetCorePackages.aspnetcore_8_0;
448 dotnet-aspnetcore_9 = dotnetCorePackages.aspnetcore_9_0;
449 dotnet-aspnetcore_10 = dotnetCorePackages.aspnetcore_10_0;
450
451 dotnet-sdk = dotnetCorePackages.sdk_8_0;
452 dotnet-runtime = dotnetCorePackages.runtime_8_0;
453 dotnet-aspnetcore = dotnetCorePackages.aspnetcore_8_0;
454
455 inherit (dotnetCorePackages)
456 buildDotnetModule
457 buildDotnetGlobalTool
458 mkNugetSource
459 mkNugetDeps
460 autoPatchcilHook
461 ;
462
463 buildDotnetPackage = callPackage ../build-support/dotnet/build-dotnet-package { };
464 fetchNuGet = callPackage ../build-support/dotnet/fetchnuget { };
465 dupeguru = callPackage ../applications/misc/dupeguru {
466 python3Packages = python311Packages;
467 };
468
469 fetchbzr = callPackage ../build-support/fetchbzr { };
470
471 fetchcvs =
472 if
473 stdenv.buildPlatform != stdenv.hostPlatform
474 # hack around splicing being crummy with things that (correctly) don't eval.
475 then
476 buildPackages.fetchcvs
477 else
478 callPackage ../build-support/fetchcvs { };
479
480 fetchdarcs = callPackage ../build-support/fetchdarcs { };
481
482 fetchdocker = callPackage ../build-support/fetchdocker { };
483
484 fetchDockerConfig = callPackage ../build-support/fetchdocker/fetchDockerConfig.nix { };
485
486 fetchDockerLayer = callPackage ../build-support/fetchdocker/fetchDockerLayer.nix { };
487
488 fetchfossil = callPackage ../build-support/fetchfossil { };
489
490 fetchgit =
491 (callPackage ../build-support/fetchgit {
492 git = buildPackages.gitMinimal;
493 cacert = buildPackages.cacert;
494 git-lfs = buildPackages.git-lfs;
495 })
496 // {
497 # fetchgit is a function, so we use // instead of passthru.
498 tests = pkgs.tests.fetchgit;
499 };
500
501 fetchgitLocal = callPackage ../build-support/fetchgitlocal { };
502
503 fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or { });
504
505 fetchMavenArtifact = callPackage ../build-support/fetchmavenartifact { };
506
507 fetchpijul = callPackage ../build-support/fetchpijul { };
508
509 inherit (callPackages ../build-support/node/fetch-yarn-deps { })
510 fixup-yarn-lock
511 prefetch-yarn-deps
512 yarnConfigHook
513 yarnBuildHook
514 yarnInstallHook
515 fetchYarnDeps
516 ;
517
518 prefer-remote-fetch = import ../build-support/prefer-remote-fetch;
519
520 pe-bear = libsForQt5.callPackage ../applications/misc/pe-bear { };
521
522 magika = with python3Packages; toPythonApplication magika;
523
524 mysql-shell = mysql-shell_8;
525
526 inherit
527 ({
528 mysql-shell_8 = callPackage ../development/tools/mysql-shell/8.nix {
529 antlr = antlr4_10;
530 icu = icu77;
531 protobuf = protobuf_25.override {
532 abseil-cpp = abseil-cpp_202407;
533 };
534 };
535 })
536 mysql-shell_8
537 ;
538
539 mysql-shell-innovation = callPackage ../development/tools/mysql-shell/innovation.nix {
540 antlr = antlr4_10;
541 icu = icu77;
542 protobuf = protobuf_25.override {
543 abseil-cpp = abseil-cpp_202407;
544 };
545 };
546
547 # this is used by most `fetch*` functions
548 repoRevToNameMaybe = lib.repoRevToName config.fetchedSourceNameDefault;
549
550 fetchpatch =
551 callPackage ../build-support/fetchpatch {
552 # 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154
553 patchutils = __splicedPackages.patchutils_0_3_3;
554 }
555 // {
556 tests = pkgs.tests.fetchpatch;
557 version = 1;
558 };
559
560 fetchpatch2 =
561 callPackage ../build-support/fetchpatch {
562 patchutils = __splicedPackages.patchutils_0_4_2;
563 }
564 // {
565 tests = pkgs.tests.fetchpatch2;
566 version = 2;
567 };
568
569 fetchs3 = callPackage ../build-support/fetchs3 { };
570
571 fetchtorrent = callPackage ../build-support/fetchtorrent { };
572
573 fetchsvn =
574 if
575 stdenv.buildPlatform != stdenv.hostPlatform
576 # hack around splicing being crummy with things that (correctly) don't eval.
577 then
578 buildPackages.fetchsvn
579 else
580 callPackage ../build-support/fetchsvn { };
581
582 fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion;
583
584 fetchsvnssh = callPackage ../build-support/fetchsvnssh { };
585
586 fetchhg = callPackage ../build-support/fetchhg { };
587
588 fetchFirefoxAddon = callPackage ../build-support/fetchfirefoxaddon { } // {
589 tests = pkgs.tests.fetchFirefoxAddon;
590 };
591
592 fetchNextcloudApp = callPackage ../build-support/fetchnextcloudapp { };
593
594 # `fetchurl' downloads a file from the network.
595 fetchurl =
596 if stdenv.buildPlatform != stdenv.hostPlatform then
597 buildPackages.fetchurl # No need to do special overrides twice,
598 else
599 makeOverridable (import ../build-support/fetchurl) {
600 inherit lib stdenvNoCC buildPackages;
601 inherit cacert;
602 inherit (config) rewriteURL;
603 curl = buildPackages.curlMinimal.override (old: rec {
604 # break dependency cycles
605 fetchurl = stdenv.fetchurlBoot;
606 zlib = buildPackages.zlib.override { fetchurl = stdenv.fetchurlBoot; };
607 pkg-config = buildPackages.pkg-config.override (old: {
608 pkg-config = old.pkg-config.override {
609 fetchurl = stdenv.fetchurlBoot;
610 };
611 });
612 perl = buildPackages.perl.override {
613 inherit zlib;
614 fetchurl = stdenv.fetchurlBoot;
615 };
616 openssl = buildPackages.openssl.override {
617 fetchurl = stdenv.fetchurlBoot;
618 buildPackages = {
619 coreutils = buildPackages.coreutils.override {
620 fetchurl = stdenv.fetchurlBoot;
621 inherit perl;
622 xz = buildPackages.xz.override { fetchurl = stdenv.fetchurlBoot; };
623 gmpSupport = false;
624 aclSupport = false;
625 attrSupport = false;
626 };
627 inherit perl;
628 };
629 inherit perl;
630 };
631 libssh2 = buildPackages.libssh2.override {
632 fetchurl = stdenv.fetchurlBoot;
633 inherit zlib openssl;
634 };
635 # On darwin, libkrb5 needs bootstrap_cmds which would require
636 # converting many packages to fetchurl_boot to avoid evaluation cycles.
637 # So turn gssSupport off there, and on Windows.
638 # On other platforms, keep the previous value.
639 gssSupport =
640 if stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWindows then
641 false
642 else
643 old.gssSupport or true; # `? true` is the default
644 libkrb5 = buildPackages.krb5.override {
645 fetchurl = stdenv.fetchurlBoot;
646 inherit pkg-config perl openssl;
647 withLibedit = false;
648 byacc = buildPackages.byacc.override { fetchurl = stdenv.fetchurlBoot; };
649 keyutils = buildPackages.keyutils.override { fetchurl = stdenv.fetchurlBoot; };
650 };
651 nghttp2 = buildPackages.nghttp2.override {
652 fetchurl = stdenv.fetchurlBoot;
653 inherit pkg-config;
654 enableApp = false; # curl just needs libnghttp2
655 enableTests = false; # avoids bringing `cunit` and `tzdata` into scope
656 };
657 });
658 };
659
660 fetchRepoProject = callPackage ../build-support/fetchrepoproject { };
661
662 fetchipfs = callPackage ../build-support/fetchipfs { };
663
664 fetchzip = callPackage ../build-support/fetchzip { } // {
665 tests = pkgs.tests.fetchzip;
666 };
667
668 fetchDebianPatch = callPackage ../build-support/fetchdebianpatch { } // {
669 tests = pkgs.tests.fetchDebianPatch;
670 };
671
672 fetchCrate = callPackage ../build-support/rust/fetchcrate.nix { };
673
674 fetchFromGitea = callPackage ../build-support/fetchgitea { };
675
676 fetchFromGitHub = callPackage ../build-support/fetchgithub { };
677
678 fetchFromBitbucket = callPackage ../build-support/fetchbitbucket { };
679
680 fetchFromSavannah = callPackage ../build-support/fetchsavannah { };
681
682 fetchFromSourcehut = callPackage ../build-support/fetchsourcehut { };
683
684 fetchFromGitLab = callPackage ../build-support/fetchgitlab { };
685
686 fetchFromGitiles = callPackage ../build-support/fetchgitiles { };
687
688 fetchFrom9Front = callPackage ../build-support/fetch9front { };
689
690 fetchFromRepoOrCz = callPackage ../build-support/fetchrepoorcz { };
691
692 fetchFromRadicle = callPackage ../build-support/fetchradicle { };
693 fetchRadiclePatch = callPackage ../build-support/fetchradiclepatch { };
694
695 fetchgx = callPackage ../build-support/fetchgx { };
696
697 fetchPypi = callPackage ../build-support/fetchpypi { };
698
699 fetchPypiLegacy = callPackage ../build-support/fetchpypilegacy { };
700
701 resolveMirrorURLs =
702 { url }:
703 fetchurl {
704 showURLs = true;
705 inherit url;
706 };
707
708 ld-is-cc-hook = makeSetupHook {
709 name = "ld-is-cc-hook";
710 } ../build-support/setup-hooks/ld-is-cc-hook.sh;
711
712 copyDesktopItems = makeSetupHook {
713 name = "copy-desktop-items-hook";
714 } ../build-support/setup-hooks/copy-desktop-items.sh;
715
716 makeDesktopItem = callPackage ../build-support/make-desktopitem { };
717
718 copyPkgconfigItems = makeSetupHook {
719 name = "copy-pkg-config-items-hook";
720 } ../build-support/setup-hooks/copy-pkgconfig-items.sh;
721
722 makePkgconfigItem = callPackage ../build-support/make-pkgconfigitem { };
723
724 makeDarwinBundle = callPackage ../build-support/make-darwin-bundle { };
725
726 makeAutostartItem = callPackage ../build-support/make-startupitem { };
727
728 makeImpureTest = callPackage ../build-support/make-impure-test.nix;
729
730 makeInitrd = callPackage ../build-support/kernel/make-initrd.nix; # Args intentionally left out
731
732 makeInitrdNG = callPackage ../build-support/kernel/make-initrd-ng.nix;
733 makeInitrdNGTool = callPackage ../build-support/kernel/make-initrd-ng-tool.nix { };
734
735 makeWrapper = makeShellWrapper;
736
737 makeShellWrapper = makeSetupHook {
738 name = "make-shell-wrapper-hook";
739 propagatedBuildInputs = [ dieHook ];
740 substitutions = {
741 # targetPackages.runtimeShell only exists when pkgs == targetPackages (when targetPackages is not __raw)
742 shell =
743 if targetPackages ? runtimeShell then
744 targetPackages.runtimeShell
745 else
746 throw "makeWrapper/makeShellWrapper must be in nativeBuildInputs";
747 };
748 passthru = {
749 tests = tests.makeWrapper;
750 };
751 } ../build-support/setup-hooks/make-wrapper.sh;
752
753 compressFirmwareXz = callPackage ../build-support/kernel/compress-firmware.nix { type = "xz"; };
754
755 compressFirmwareZstd = callPackage ../build-support/kernel/compress-firmware.nix { type = "zstd"; };
756
757 makeModulesClosure =
758 {
759 kernel,
760 firmware,
761 rootModules,
762 allowMissing ? false,
763 extraFirmwarePaths ? [ ],
764 }:
765 callPackage ../build-support/kernel/modules-closure.nix {
766 inherit
767 kernel
768 firmware
769 rootModules
770 allowMissing
771 extraFirmwarePaths
772 ;
773 };
774
775 mkBinaryCache = callPackage ../build-support/binary-cache { };
776
777 mkShell = callPackage ../build-support/mkshell { };
778 mkShellNoCC = mkShell.override { stdenv = stdenvNoCC; };
779
780 mpsolve = libsForQt5.callPackage ../applications/science/math/mpsolve { };
781
782 nixBufferBuilders = import ../applications/editors/emacs/build-support/buffer.nix {
783 inherit lib writeText;
784 inherit (emacs.pkgs) inherit-local;
785 };
786
787 nix-gitignore = callPackage ../build-support/nix-gitignore { };
788
789 ociTools = callPackage ../build-support/oci-tools { };
790
791 inherit (callPackages ../build-support/setup-hooks/patch-rc-path-hooks { })
792 patchRcPathBash
793 patchRcPathCsh
794 patchRcPathFish
795 patchRcPathPosix
796 ;
797
798 pruneLibtoolFiles = makeSetupHook {
799 name = "prune-libtool-files";
800 } ../build-support/setup-hooks/prune-libtool-files.sh;
801
802 closureInfo = callPackage ../build-support/closure-info.nix { };
803
804 setupSystemdUnits = callPackage ../build-support/setup-systemd-units.nix { };
805
806 shortenPerlShebang = makeSetupHook {
807 name = "shorten-perl-shebang-hook";
808 propagatedBuildInputs = [ dieHook ];
809 } ../build-support/setup-hooks/shorten-perl-shebang.sh;
810
811 sile = callPackage ../by-name/si/sile/package.nix {
812 lua = luajit;
813 };
814
815 singularity-tools = callPackage ../build-support/singularity-tools { };
816
817 srcOnly = callPackage ../build-support/src-only { };
818
819 substitute = callPackage ../build-support/substitute/substitute.nix { };
820
821 replaceDependencies = callPackage ../build-support/replace-dependencies.nix { };
822
823 replaceDependency =
824 {
825 drv,
826 oldDependency,
827 newDependency,
828 verbose ? true,
829 }:
830 replaceDependencies {
831 inherit drv verbose;
832 replacements = [
833 {
834 inherit oldDependency newDependency;
835 }
836 ];
837 # When newDependency depends on drv, instead of causing infinite recursion, keep it as is.
838 cutoffPackages = [ newDependency ];
839 };
840
841 replaceVarsWith = callPackage ../build-support/replace-vars/replace-vars-with.nix { };
842
843 replaceVars = callPackage ../build-support/replace-vars/replace-vars.nix { };
844
845 replaceDirectDependencies = callPackage ../build-support/replace-direct-dependencies.nix { };
846
847 nukeReferences = callPackage ../build-support/nuke-references {
848 inherit (darwin) signingUtils;
849 };
850
851 referencesByPopularity = callPackage ../build-support/references-by-popularity { };
852
853 dockerAutoLayer = callPackage ../build-support/docker/auto-layer.nix { };
854
855 dockerMakeLayers = callPackage ../build-support/docker/make-layers.nix { };
856
857 removeReferencesTo = callPackage ../build-support/remove-references-to {
858 inherit (darwin) signingUtils;
859 };
860
861 # No callPackage. In particular, we don't want `img` *package* in parameters.
862 vmTools = makeOverridable (import ../build-support/vm) { inherit pkgs lib; };
863
864 releaseTools = callPackage ../build-support/release { };
865
866 inherit (lib.systems) platforms;
867
868 setJavaClassPath = makeSetupHook {
869 name = "set-java-classpath-hook";
870 } ../build-support/setup-hooks/set-java-classpath.sh;
871
872 fixDarwinDylibNames = callPackage (
873 {
874 lib,
875 targetPackages,
876 makeSetupHook,
877 }:
878 makeSetupHook {
879 name = "fix-darwin-dylib-names-hook";
880 substitutions = { inherit (targetPackages.stdenv.cc) targetPrefix; };
881 meta.platforms = lib.platforms.darwin;
882 } ../build-support/setup-hooks/fix-darwin-dylib-names.sh
883 ) { };
884
885 writeDarwinBundle = callPackage ../build-support/make-darwin-bundle/write-darwin-bundle.nix { };
886
887 desktopToDarwinBundle = makeSetupHook {
888 name = "desktop-to-darwin-bundle-hook";
889 propagatedBuildInputs = [
890 writeDarwinBundle
891 librsvg
892 imagemagick
893 (onlyBin python3Packages.icnsutil)
894 ];
895 } ../build-support/setup-hooks/desktop-to-darwin-bundle.sh;
896
897 keepBuildTree = makeSetupHook {
898 name = "keep-build-tree-hook";
899 } ../build-support/setup-hooks/keep-build-tree.sh;
900
901 moveBuildTree = makeSetupHook {
902 name = "move-build-tree-hook";
903 } ../build-support/setup-hooks/move-build-tree.sh;
904
905 enableGCOVInstrumentation = makeSetupHook {
906 name = "enable-gcov-instrumentation-hook";
907 } ../build-support/setup-hooks/enable-coverage-instrumentation.sh;
908
909 makeGCOVReport = makeSetupHook {
910 name = "make-gcov-report-hook";
911 propagatedBuildInputs = [
912 lcov
913 enableGCOVInstrumentation
914 ];
915 } ../build-support/setup-hooks/make-coverage-analysis-report.sh;
916
917 makeHardcodeGsettingsPatch = callPackage ../build-support/make-hardcode-gsettings-patch { };
918
919 # intended to be used like nix-build -E 'with import <nixpkgs> { }; enableDebugging fooPackage'
920 enableDebugging = pkg: pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; };
921
922 findXMLCatalogs = makeSetupHook {
923 name = "find-xml-catalogs-hook";
924 } ../build-support/setup-hooks/find-xml-catalogs.sh;
925
926 wrapGAppsHook3 = wrapGAppsNoGuiHook.override {
927 isGraphical = true;
928 };
929
930 wrapGAppsHook4 = wrapGAppsNoGuiHook.override {
931 isGraphical = true;
932 gtk3 = __splicedPackages.gtk4;
933 };
934
935 wrapGAppsNoGuiHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook {
936 makeWrapper = makeBinaryWrapper;
937 };
938
939 separateDebugInfo = makeSetupHook {
940 name = "separate-debug-info-hook";
941 } ../build-support/setup-hooks/separate-debug-info.sh;
942
943 setupDebugInfoDirs = makeSetupHook {
944 name = "setup-debug-info-dirs-hook";
945 } ../build-support/setup-hooks/setup-debug-info-dirs.sh;
946
947 writableTmpDirAsHomeHook = callPackage (
948 { makeSetupHook }:
949 makeSetupHook {
950 name = "writable-tmpdir-as-home-hook";
951 } ../build-support/setup-hooks/writable-tmpdir-as-home.sh
952 ) { };
953
954 useOldCXXAbi = makeSetupHook {
955 name = "use-old-cxx-abi-hook";
956 } ../build-support/setup-hooks/use-old-cxx-abi.sh;
957
958 validatePkgConfig = makeSetupHook {
959 name = "validate-pkg-config";
960 propagatedBuildInputs = [
961 findutils
962 pkg-config
963 ];
964 } ../build-support/setup-hooks/validate-pkg-config.sh;
965
966 #package writers
967 writers = callPackage ../build-support/writers { };
968
969 # lib functions depending on pkgs
970 inherit
971 (import ../pkgs-lib {
972 # The `lib` variable in this scope doesn't include any applied lib overlays,
973 # `pkgs.lib` does.
974 inherit (pkgs) lib;
975 inherit pkgs;
976 })
977 formats
978 ;
979
980 testers = callPackage ../build-support/testers { };
981
982 ### TOOLS
983
984 _3llo = callPackage ../tools/misc/3llo { };
985
986 _7zz-rar = _7zz.override { enableUnfree = true; };
987
988 acquire = with python3Packages; toPythonApplication acquire;
989
990 actdiag = with python3.pkgs; toPythonApplication actdiag;
991
992 opnplug = adlplug.override { type = "OPN"; };
993
994 akkoma = callPackage ../by-name/ak/akkoma/package.nix {
995 beamPackages = beam_minimal.packages.erlang_26.extend (
996 self: super: {
997 elixir = self.elixir_1_16;
998 rebar3 = self.rebar3WithPlugins {
999 plugins = with self; [ pc ];
1000 };
1001 }
1002 );
1003 };
1004
1005 akkoma-admin-fe = callPackage ../by-name/ak/akkoma-admin-fe/package.nix {
1006 python3 = python311;
1007 };
1008
1009 aegisub = callPackage ../by-name/ae/aegisub/package.nix (
1010 {
1011 luajit = luajit.override { enable52Compat = true; };
1012 }
1013 // (config.aegisub or { })
1014 );
1015
1016 acme-client = callPackage ../tools/networking/acme-client {
1017 stdenv = gccStdenv;
1018 };
1019
1020 aflplusplus = callPackage ../tools/security/aflplusplus { wine = null; };
1021
1022 libdislocator = callPackage ../tools/security/aflplusplus/libdislocator.nix { };
1023
1024 aioblescan = with python3Packages; toPythonApplication aioblescan;
1025
1026 inherit (recurseIntoAttrs (callPackage ../tools/package-management/akku { }))
1027 akku
1028 akkuPackages
1029 ;
1030
1031 alice-tools = callPackage ../tools/games/alice-tools {
1032 withGUI = false;
1033 };
1034
1035 alice-tools-qt5 = libsForQt5.callPackage ../tools/games/alice-tools { };
1036
1037 alice-tools-qt6 = qt6Packages.callPackage ../tools/games/alice-tools { };
1038
1039 auditwheel = with python3Packages; toPythonApplication auditwheel;
1040
1041 davinci-resolve-studio = callPackage ../by-name/da/davinci-resolve/package.nix {
1042 studioVariant = true;
1043 };
1044
1045 dehinter = with python3Packages; toPythonApplication dehinter;
1046
1047 gamemode = callPackage ../tools/games/gamemode {
1048 libgamemode32 = pkgsi686Linux.gamemode.lib;
1049 };
1050
1051 gamescope = callPackage ../by-name/ga/gamescope/package.nix {
1052 enableExecutable = true;
1053 enableWsi = false;
1054
1055 wlroots = wlroots_0_17;
1056 };
1057
1058 gamescope-wsi = callPackage ../by-name/ga/gamescope/package.nix {
1059 enableExecutable = false;
1060 enableWsi = true;
1061
1062 wlroots = wlroots_0_17;
1063 };
1064
1065 font-v = with python3Packages; toPythonApplication font-v;
1066
1067 fontbakery = with python3Packages; toPythonApplication fontbakery;
1068
1069 genealogos-api = genealogos-cli.override {
1070 crate = "api";
1071 };
1072
1073 # This is to workaround gfal2-python broken against Python 3.12 or later.
1074 # TODO: Remove these lines after solving the breakage.
1075 gfal2-util = callPackage ../by-name/gf/gfal2-util/package.nix (
1076 lib.optionalAttrs python3Packages.gfal2-python.meta.broken {
1077 python3Packages = python311Packages;
1078 }
1079 );
1080
1081 inherit (callPackages ../tools/networking/ivpn/default.nix { })
1082 ivpn
1083 ivpn-service
1084 ;
1085
1086 kanata-with-cmd = kanata.override { withCmd = true; };
1087
1088 linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
1089
1090 makehuman = libsForQt5.callPackage ../applications/misc/makehuman { };
1091
1092 mkosi = callPackage ../tools/virtualization/mkosi { };
1093
1094 mkosi-full = mkosi.override { withQemu = true; };
1095
1096 mpy-utils = python3Packages.callPackage ../tools/misc/mpy-utils { };
1097
1098 networkd-notify = python3Packages.callPackage ../tools/networking/networkd-notify {
1099 systemd = pkgs.systemd;
1100 };
1101
1102 ocs-url = libsForQt5.callPackage ../tools/misc/ocs-url { };
1103
1104 openbugs = pkgsi686Linux.callPackage ../applications/science/machine-learning/openbugs { };
1105
1106 openusd = python3Packages.openusd.override {
1107 withTools = true;
1108 withUsdView = true;
1109 };
1110
1111 py7zr = with python3Packages; toPythonApplication py7zr;
1112
1113 qFlipper = libsForQt5.callPackage ../tools/misc/qflipper { };
1114
1115 inherit (callPackage ../development/libraries/sdbus-cpp { }) sdbus-cpp sdbus-cpp_2;
1116
1117 sdkmanager = with python3Packages; toPythonApplication sdkmanager;
1118
1119 shaperglot = with python3Packages; toPythonApplication shaperglot;
1120
1121 supermin = callPackage ../tools/virtualization/supermin {
1122 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
1123 };
1124
1125 ufolint = with python3Packages; toPythonApplication ufolint;
1126
1127 veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { };
1128
1129 ventoy-full = ventoy.override {
1130 withCryptsetup = true;
1131 withXfs = true;
1132 withExt4 = true;
1133 withNtfs = true;
1134 };
1135
1136 ventoy-full-gtk = ventoy-full.override {
1137 defaultGuiType = "gtk3";
1138 };
1139
1140 ventoy-full-qt = ventoy-full.override {
1141 defaultGuiType = "qt5";
1142 };
1143
1144 vprof = with python3Packages; toPythonApplication vprof;
1145
1146 winbox = winbox3;
1147 winbox3 = callPackage ../tools/admin/winbox {
1148 wine = wineWowPackages.stable;
1149 };
1150
1151 x2t = callPackage ../by-name/x2/x2t/package.nix {
1152 openssl = openssl.override {
1153 enableMD2 = true;
1154 static = true;
1155 };
1156 };
1157
1158 yabridge = callPackage ../tools/audio/yabridge {
1159 wine = wineWowPackages.yabridge;
1160 };
1161
1162 yabridgectl = callPackage ../tools/audio/yabridgectl {
1163 wine = wineWowPackages.yabridge;
1164 };
1165
1166 yafetch = callPackage ../tools/misc/yafetch {
1167 stdenv = clangStdenv;
1168 };
1169
1170 ### APPLICATIONS/VERSION-MANAGEMENT
1171
1172 git = callPackage ../applications/version-management/git {
1173 perlLibs = [
1174 perlPackages.LWP
1175 perlPackages.URI
1176 perlPackages.TermReadKey
1177 ];
1178 smtpPerlLibs = [
1179 perlPackages.libnet
1180 perlPackages.NetSMTPSSL
1181 perlPackages.IOSocketSSL
1182 perlPackages.NetSSLeay
1183 perlPackages.AuthenSASL
1184 perlPackages.DigestHMAC
1185 ];
1186 };
1187
1188 # The full-featured Git.
1189 gitFull = git.override {
1190 svnSupport = stdenv.buildPlatform == stdenv.hostPlatform;
1191 guiSupport = true;
1192 sendEmailSupport = stdenv.buildPlatform == stdenv.hostPlatform;
1193 withSsh = true;
1194 withLibsecret = !stdenv.hostPlatform.isDarwin;
1195 };
1196
1197 # Git with SVN support, but without GUI.
1198 gitSVN = lowPrio (git.override { svnSupport = true; });
1199
1200 git-doc = lib.addMetaAttrs {
1201 description = "Additional documentation for Git";
1202 longDescription = ''
1203 This package contains additional documentation (HTML and text files) that
1204 is referenced in the man pages of Git.
1205 '';
1206 } gitFull.doc;
1207
1208 gitMinimal = git.override {
1209 withManual = false;
1210 osxkeychainSupport = false;
1211 pythonSupport = false;
1212 perlSupport = false;
1213 withpcre2 = false;
1214 };
1215
1216 bump2version = with python3Packages; toPythonApplication bump2version;
1217
1218 cgit = callPackage ../applications/version-management/cgit { };
1219
1220 cgit-pink = callPackage ../applications/version-management/cgit/pink.nix { };
1221
1222 commitlint = nodePackages."@commitlint/cli";
1223
1224 datalad = with python3Packages; toPythonApplication datalad;
1225
1226 datalad-gooey = with python3Packages; toPythonApplication datalad-gooey;
1227
1228 forgejo-lts = callPackage ../by-name/fo/forgejo/lts.nix { };
1229
1230 gita = python3Packages.callPackage ../applications/version-management/gita { };
1231
1232 github-cli = gh;
1233
1234 git-annex-metadata-gui =
1235 libsForQt5.callPackage ../applications/version-management/git-annex-metadata-gui
1236 {
1237 inherit (python3Packages) buildPythonApplication pyqt5 git-annex-adapter;
1238 };
1239
1240 git-annex-remote-dbx = callPackage ../applications/version-management/git-annex-remote-dbx {
1241 inherit (python3Packages)
1242 buildPythonApplication
1243 dropbox
1244 annexremote
1245 humanfriendly
1246 ;
1247 };
1248
1249 git-annex-remote-googledrive =
1250 python3Packages.callPackage ../applications/version-management/git-annex-remote-googledrive
1251 { };
1252
1253 git-credential-manager = callPackage ../applications/version-management/git-credential-manager { };
1254
1255 gitRepo = git-repo;
1256
1257 gittyup = libsForQt5.callPackage ../applications/version-management/gittyup { };
1258
1259 merge-fmt = callPackage ../applications/version-management/merge-fmt {
1260 inherit (ocamlPackages)
1261 buildDunePackage
1262 cmdliner
1263 base
1264 stdio
1265 ;
1266 };
1267
1268 pass-git-helper =
1269 python3Packages.callPackage ../applications/version-management/pass-git-helper
1270 { };
1271
1272 qgit = qt5.callPackage ../applications/version-management/qgit { };
1273
1274 silver-platter = python3Packages.callPackage ../applications/version-management/silver-platter { };
1275
1276 svn-all-fast-export =
1277 libsForQt5.callPackage ../applications/version-management/svn-all-fast-export
1278 { };
1279
1280 svn2git = callPackage ../applications/version-management/svn2git {
1281 git = gitSVN;
1282 };
1283
1284 inherit (haskellPackages) git-annex;
1285
1286 inherit (haskellPackages) git-brunch;
1287
1288 git-autofixup = perlPackages.GitAutofixup;
1289
1290 ghrepo-stats = with python3Packages; toPythonApplication ghrepo-stats;
1291
1292 git-filter-repo = with python3Packages; toPythonApplication git-filter-repo;
1293
1294 git-revise = with python3Packages; toPythonApplication git-revise;
1295
1296 ### APPLICATIONS/EMULATORS
1297
1298 _86Box-with-roms = _86Box.override {
1299 unfreeEnableRoms = true;
1300 unfreeEnableDiscord = true;
1301 };
1302
1303 box64 = callPackage ../applications/emulators/box64 {
1304 hello-x86_64 = if stdenv.hostPlatform.isx86_64 then hello else pkgsCross.gnu64.hello;
1305 };
1306
1307 box86 =
1308 let
1309 args = {
1310 hello-x86_32 = if stdenv.hostPlatform.isx86_32 then hello else pkgsCross.gnu32.hello;
1311 };
1312 in
1313 if stdenv.hostPlatform.is32bit then
1314 callPackage ../applications/emulators/box86 args
1315 else if stdenv.hostPlatform.isx86_64 then
1316 pkgsCross.gnu32.callPackage ../applications/emulators/box86 args
1317 else if stdenv.hostPlatform.isAarch64 then
1318 pkgsCross.armv7l-hf-multiplatform.callPackage ../applications/emulators/box86 args
1319 else if stdenv.hostPlatform.isRiscV64 then
1320 pkgsCross.riscv32.callPackage ../applications/emulators/box86 args
1321 else
1322 throw "Don't know 32-bit platform for cross from: ${stdenv.hostPlatform.stdenv}";
1323
1324 cdemu-client = callPackage ../applications/emulators/cdemu/client.nix { };
1325
1326 cdemu-daemon = callPackage ../applications/emulators/cdemu/daemon.nix { };
1327
1328 dosbox = callPackage ../applications/emulators/dosbox {
1329 SDL = if stdenv.hostPlatform.isDarwin then SDL else SDL_compat;
1330 };
1331
1332 fceux-qt5 = fceux.override { ___qtVersion = "5"; };
1333 fceux-qt6 = fceux.override { ___qtVersion = "6"; };
1334
1335 firebird-emu = libsForQt5.callPackage ../applications/emulators/firebird-emu { };
1336
1337 fusesoc = python3Packages.callPackage ../tools/package-management/fusesoc { };
1338
1339 gcdemu = callPackage ../applications/emulators/cdemu/gui.nix { };
1340
1341 gensgs = pkgsi686Linux.callPackage ../applications/emulators/gens-gs { };
1342
1343 goldberg-emu = callPackage ../applications/emulators/goldberg-emu {
1344 protobuf = protobuf_21;
1345 };
1346
1347 image-analyzer = callPackage ../applications/emulators/cdemu/analyzer.nix { };
1348
1349 kega-fusion = pkgsi686Linux.callPackage ../applications/emulators/kega-fusion { };
1350
1351 libmirage = callPackage ../applications/emulators/cdemu/libmirage.nix { };
1352
1353 mame = libsForQt5.callPackage ../applications/emulators/mame { };
1354
1355 mame-tools = lib.addMetaAttrs {
1356 description = mame.meta.description + " (tools only)";
1357 } (lib.getOutput "tools" mame);
1358
1359 ppsspp-sdl =
1360 let
1361 argset = {
1362 enableQt = false;
1363 enableVulkan = true;
1364 forceWayland = false;
1365 };
1366 in
1367 ppsspp.override argset;
1368
1369 ppsspp-sdl-wayland =
1370 let
1371 argset = {
1372 enableQt = false;
1373 enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/13845
1374 forceWayland = true;
1375 };
1376 in
1377 ppsspp.override argset;
1378
1379 ppsspp-qt =
1380 let
1381 argset = {
1382 enableQt = true;
1383 enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/11628
1384 forceWayland = false;
1385 };
1386 in
1387 ppsspp.override argset;
1388
1389 py65 = with python3.pkgs; toPythonApplication py65;
1390
1391 rmg-wayland = callPackage ../by-name/rm/rmg/package.nix {
1392 withWayland = true;
1393 };
1394
1395 shadps4 = callPackage ../by-name/sh/shadps4/package.nix {
1396 # relies on std::sinf & co, which was broken in GCC until GCC 14: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79700
1397 stdenv = gcc14Stdenv;
1398 };
1399
1400 winetricks = callPackage ../applications/emulators/wine/winetricks.nix { };
1401
1402 zsnes = pkgsi686Linux.callPackage ../applications/emulators/zsnes { };
1403 zsnes2 = pkgsi686Linux.callPackage ../applications/emulators/zsnes/2.x.nix { };
1404
1405 ### APPLICATIONS/EMULATORS/RETROARCH
1406
1407 libretro = recurseIntoAttrs (callPackage ../applications/emulators/libretro { });
1408
1409 retroarch = wrapRetroArch { };
1410
1411 # includes only cores for platform with free licenses
1412 retroarch-free = retroarch.withCores (
1413 cores:
1414 lib.filter (
1415 c: (c ? libretroCore) && (lib.meta.availableOn stdenv.hostPlatform c) && (!c.meta.unfree)
1416 ) (lib.attrValues cores)
1417 );
1418
1419 # includes all cores for platform (including ones with non-free licenses)
1420 retroarch-full = retroarch.withCores (
1421 cores:
1422 lib.filter (c: (c ? libretroCore) && (lib.meta.availableOn stdenv.hostPlatform c)) (
1423 lib.attrValues cores
1424 )
1425 );
1426
1427 wrapRetroArch = retroarch-bare.wrapper;
1428
1429 # Aliases kept here because they are easier to use
1430 x16-emulator = x16.emulator;
1431 x16-rom = x16.rom;
1432 x16-run = x16.run;
1433
1434 yabause = libsForQt5.callPackage ../applications/emulators/yabause {
1435 libglut = null;
1436 openal = null;
1437 };
1438
1439 ### APPLICATIONS/FILE-MANAGERS
1440
1441 vifm-full = vifm.override {
1442 mediaSupport = true;
1443 inherit lib udisks2 python3;
1444 };
1445
1446 xfe = callPackage ../by-name/xf/xfe/package.nix {
1447 fox = fox_1_6;
1448 };
1449
1450 johnny-reborn-engine = callPackage ../applications/misc/johnny-reborn { };
1451
1452 johnny-reborn = callPackage ../applications/misc/johnny-reborn/with-data.nix { };
1453
1454 ### APPLICATIONS/TERMINAL-EMULATORS
1455
1456 cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
1457
1458 kitty = callPackage ../by-name/ki/kitty/package.nix {
1459 inherit (darwin) autoSignDarwinBinariesHook;
1460 };
1461
1462 mlterm-wayland = mlterm.override {
1463 enableX11 = false;
1464 };
1465
1466 rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { };
1467
1468 rxvt-unicode-emoji = rxvt-unicode.override {
1469 rxvt-unicode-unwrapped = rxvt-unicode-unwrapped-emoji;
1470 };
1471
1472 rxvt-unicode-plugins = import ../applications/terminal-emulators/rxvt-unicode-plugins {
1473 inherit callPackage;
1474 };
1475
1476 rxvt-unicode-unwrapped = callPackage ../applications/terminal-emulators/rxvt-unicode { };
1477
1478 rxvt-unicode-unwrapped-emoji = rxvt-unicode-unwrapped.override {
1479 emojiSupport = true;
1480 };
1481
1482 termite = callPackage ../applications/terminal-emulators/termite/wrapper.nix {
1483 termite = termite-unwrapped;
1484 };
1485 termite-unwrapped = callPackage ../applications/terminal-emulators/termite { };
1486
1487 twine = with python3Packages; toPythonApplication twine;
1488
1489 inherit (callPackages ../development/tools/ammonite { })
1490 ammonite_2_12
1491 ammonite_2_13
1492 ammonite_3_3
1493 ;
1494 ammonite = ammonite_3_3;
1495
1496 android-tools = lowPrio (callPackage ../tools/misc/android-tools { });
1497
1498 angie = callPackage ../servers/http/angie {
1499 zlib-ng = zlib-ng.override { withZlibCompat = true; };
1500 withPerl = false;
1501 # We don't use `with` statement here on purpose!
1502 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1503 modules = [
1504 nginxModules.rtmp
1505 nginxModules.dav
1506 nginxModules.moreheaders
1507 ];
1508 };
1509
1510 angieQuic = callPackage ../servers/http/angie {
1511 zlib-ng = zlib-ng.override { withZlibCompat = true; };
1512 withPerl = false;
1513 withQuic = true;
1514 # We don't use `with` statement here on purpose!
1515 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1516 modules = [
1517 nginxModules.rtmp
1518 nginxModules.dav
1519 nginxModules.moreheaders
1520 ];
1521 # Use latest quictls to allow http3 support
1522 openssl = quictls;
1523 };
1524
1525 angie-console-light = callPackage ../servers/http/angie/console-light.nix { };
1526
1527 apk-tools = callPackage ../tools/package-management/apk-tools {
1528 lua = lua5_3;
1529 };
1530
1531 appimage-run = callPackage ../tools/package-management/appimage-run { };
1532 appimage-run-tests = callPackage ../tools/package-management/appimage-run/test.nix {
1533 appimage-run = appimage-run.override {
1534 appimage-run-tests = null; # break boostrap cycle for passthru.tests
1535 };
1536 };
1537
1538 ArchiSteamFarm = callPackage ../applications/misc/ArchiSteamFarm { };
1539
1540 arduino = arduino-core.override { withGui = true; };
1541
1542 arduino-core = callPackage ../development/embedded/arduino/arduino-core/chrootenv.nix { };
1543 arduino-core-unwrapped = callPackage ../development/embedded/arduino/arduino-core { };
1544
1545 apitrace = libsForQt5.callPackage ../applications/graphics/apitrace { };
1546
1547 arpack-mpi = arpack.override { useMpi = true; };
1548
1549 asymptote = libsForQt5.callPackage ../tools/graphics/asymptote { };
1550
1551 authelia = callPackage ../servers/authelia {
1552 buildGoModule = buildGo124Module;
1553 pnpm = pnpm_10;
1554 };
1555
1556 authentik-outposts = recurseIntoAttrs (callPackages ../by-name/au/authentik/outposts.nix { });
1557
1558 autoflake = with python3.pkgs; toPythonApplication autoflake;
1559
1560 aws-mfa = python3Packages.callPackage ../tools/admin/aws-mfa { };
1561
1562 azure-cli-extensions = recurseIntoAttrs azure-cli.extensions;
1563
1564 # Derivation's result is not used by nixpkgs. Useful for validation for
1565 # regressions of bootstrapTools on hydra and on ofborg. Example:
1566 # pkgsCross.aarch64-multiplatform.freshBootstrapTools.build
1567 freshBootstrapTools =
1568 if stdenv.hostPlatform.isDarwin then
1569 callPackage ../stdenv/darwin/make-bootstrap-tools.nix {
1570 localSystem = stdenv.buildPlatform;
1571 crossSystem = if stdenv.buildPlatform == stdenv.hostPlatform then null else stdenv.hostPlatform;
1572 }
1573 else if stdenv.hostPlatform.isLinux then
1574 callPackage ../stdenv/linux/make-bootstrap-tools.nix { }
1575 else if stdenv.hostPlatform.isFreeBSD then
1576 callPackage ../stdenv/freebsd/make-bootstrap-tools.nix { }
1577 else
1578 throw "freshBootstrapTools: unknown hostPlatform ${stdenv.hostPlatform.config}";
1579
1580 crystfel = callPackage ../applications/science/physics/crystfel { };
1581
1582 crystfel-headless = callPackage ../applications/science/physics/crystfel { withGui = false; };
1583
1584 amule-daemon = amule.override {
1585 monolithic = false;
1586 enableDaemon = true;
1587 };
1588
1589 amule-gui = amule.override {
1590 monolithic = false;
1591 client = true;
1592 };
1593
1594 amule-web = amule.override {
1595 monolithic = false;
1596 httpServer = true;
1597 };
1598
1599 inherit (callPackages ../tools/security/bitwarden-directory-connector { })
1600 bitwarden-directory-connector-cli
1601 bitwarden-directory-connector
1602 ;
1603
1604 bitwarden-menu = python3Packages.callPackage ../applications/misc/bitwarden-menu { };
1605
1606 blocksat-cli = with python3Packages; toPythonApplication blocksat-cli;
1607
1608 bucklespring = bucklespring-x11;
1609 bucklespring-libinput = callPackage ../applications/audio/bucklespring { };
1610 bucklespring-x11 = callPackage ../applications/audio/bucklespring { legacy = true; };
1611
1612 buildbotPackages = recurseIntoAttrs (
1613 callPackage ../development/tools/continuous-integration/buildbot { }
1614 );
1615 inherit (buildbotPackages)
1616 buildbot
1617 buildbot-ui
1618 buildbot-full
1619 buildbot-plugins
1620 buildbot-worker
1621 ;
1622
1623 certipy = with python3Packages; toPythonApplication certipy-ad;
1624
1625 chipsec = callPackage ../tools/security/chipsec {
1626 kernel = null;
1627 withDriver = false;
1628 };
1629
1630 fedora-backgrounds = callPackage ../data/misc/fedora-backgrounds { };
1631
1632 coconut = with python312Packages; toPythonApplication coconut;
1633
1634 coolreader = libsForQt5.callPackage ../applications/misc/coolreader { };
1635
1636 corsair = with python3Packages; toPythonApplication corsair-scan;
1637
1638 inherit (cue) writeCueValidator;
1639
1640 cyclonedx-gomod = callPackage ../tools/security/cyclonedx-gomod { };
1641
1642 dazel = python3Packages.callPackage ../development/tools/dazel { };
1643
1644 detect-secrets = with python3Packages; toPythonApplication detect-secrets;
1645
1646 deterministic-host-uname = deterministic-uname.override {
1647 forPlatform = stdenv.targetPlatform; # offset by 1 so it works in nativeBuildInputs
1648 };
1649
1650 dkimpy = with python3Packages; toPythonApplication dkimpy;
1651
1652 esbuild = callPackage ../development/tools/esbuild { };
1653
1654 esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { };
1655
1656 libfx2 = with python3Packages; toPythonApplication fx2;
1657
1658 flirc = libsForQt5.callPackage ../applications/video/flirc {
1659 readline = readline70;
1660 };
1661
1662 foxdot = with python3Packages; toPythonApplication foxdot;
1663
1664 fluffychat-web = fluffychat.override { targetFlutterPlatform = "web"; };
1665
1666 gammaray = qt6Packages.callPackage ../development/tools/gammaray { };
1667
1668 gams = callPackage ../tools/misc/gams (config.gams or { });
1669
1670 gancioPlugins = recurseIntoAttrs (
1671 callPackage ../by-name/ga/gancio/plugins.nix { inherit (gancio) nodejs; }
1672 );
1673
1674 github-changelog-generator = callPackage ../development/tools/github-changelog-generator { };
1675
1676 github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite;
1677
1678 gistyc = with python3Packages; toPythonApplication gistyc;
1679
1680 glances = python3Packages.callPackage ../applications/system/glances { };
1681
1682 go2tv-lite = go2tv.override { withGui = false; };
1683
1684 guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { };
1685
1686 hinit = haskell.lib.compose.justStaticExecutables haskellPackages.hinit;
1687
1688 hwi = with python3Packages; toPythonApplication hwi;
1689
1690 pass = callPackage ../tools/security/pass { };
1691
1692 pass-nodmenu = callPackage ../tools/security/pass {
1693 dmenuSupport = false;
1694 pass = pass-nodmenu;
1695 };
1696
1697 pass-wayland = callPackage ../tools/security/pass {
1698 waylandSupport = true;
1699 pass = pass-wayland;
1700 };
1701
1702 passExtensions = recurseIntoAttrs pass.extensions;
1703
1704 gopass = callPackage ../tools/security/gopass { };
1705
1706 gopass-hibp = callPackage ../tools/security/gopass/hibp.nix { };
1707
1708 git-credential-gopass = callPackage ../tools/security/gopass/git-credential.nix { };
1709
1710 gopass-summon-provider = callPackage ../tools/security/gopass/summon.nix { };
1711
1712 kerf = kerf_1; # kerf2 is WIP
1713 kerf_1 = callPackage ../development/interpreters/kerf {
1714 stdenv = clangStdenv;
1715 };
1716
1717 kjv = callPackage ../applications/misc/kjv { };
1718
1719 lukesmithxyz-bible-kjv = callPackage ../applications/misc/kjv/lukesmithxyz-kjv.nix { };
1720
1721 plausible = callPackage ../by-name/pl/plausible/package.nix {
1722 elixir = elixir_1_18;
1723 beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_18; });
1724 };
1725
1726 reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace { };
1727
1728 xcodeenv = callPackage ../development/mobile/xcodeenv { };
1729
1730 gomobile = callPackage ../development/mobile/gomobile { };
1731
1732 adb-sync = callPackage ../development/mobile/adb-sync {
1733 inherit (androidenv.androidPkgs) platform-tools;
1734 };
1735
1736 androidenv = callPackage ../development/mobile/androidenv { };
1737
1738 androidndkPkgs = androidndkPkgs_27;
1739 androidndkPkgs_27 = (callPackage ../development/androidndk-pkgs { })."27";
1740 androidndkPkgs_28 = (callPackage ../development/androidndk-pkgs { })."28";
1741
1742 androidsdk = androidenv.androidPkgs.androidsdk;
1743
1744 webos = recurseIntoAttrs {
1745 cmake-modules = callPackage ../development/mobile/webos/cmake-modules.nix { };
1746
1747 novacom = callPackage ../development/mobile/webos/novacom.nix { };
1748 novacomd = callPackage ../development/mobile/webos/novacomd.nix { };
1749 };
1750
1751 apprise = with python3Packages; toPythonApplication apprise;
1752
1753 asmrepl = callPackage ../development/interpreters/asmrepl { };
1754
1755 avahi = callPackage ../development/libraries/avahi { };
1756
1757 avahi-compat = callPackage ../development/libraries/avahi {
1758 withLibdnssdCompat = true;
1759 };
1760
1761 axel = callPackage ../tools/networking/axel {
1762 libssl = openssl;
1763 };
1764
1765 babelfish = callPackage ../shells/fish/babelfish.nix { };
1766
1767 bat-extras = recurseIntoAttrs (lib.makeScope newScope (import ../tools/misc/bat-extras));
1768
1769 beauty-line-icon-theme = callPackage ../data/icons/beauty-line-icon-theme {
1770 inherit (plasma5Packages) breeze-icons;
1771 };
1772
1773 beautysh = with python3.pkgs; toPythonApplication beautysh;
1774
1775 inherit (callPackages ../misc/logging/beats/7.x.nix { })
1776 auditbeat7
1777 filebeat7
1778 heartbeat7
1779 metricbeat7
1780 packetbeat7
1781 ;
1782
1783 auditbeat = auditbeat7;
1784 filebeat = filebeat7;
1785 heartbeat = heartbeat7;
1786 metricbeat = metricbeat7;
1787 packetbeat = packetbeat7;
1788
1789 biliass = with python3.pkgs; toPythonApplication biliass;
1790
1791 birdtray = libsForQt5.callPackage ../applications/misc/birdtray { };
1792
1793 charles = charles5;
1794 inherit (callPackages ../applications/networking/charles { })
1795 charles3
1796 charles4
1797 charles5
1798 ;
1799
1800 quaternion-qt6 =
1801 qt6Packages.callPackage ../applications/networking/instant-messengers/quaternion
1802 { };
1803 quaternion = quaternion-qt6;
1804
1805 tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
1806
1807 libtensorflow = python3.pkgs.tensorflow-build.libtensorflow;
1808
1809 libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix { };
1810
1811 behave = with python3Packages; toPythonApplication behave;
1812
1813 blockdiag = with python3Packages; toPythonApplication blockdiag;
1814
1815 boomerang = libsForQt5.callPackage ../development/tools/boomerang { };
1816
1817 bozohttpd-minimal = bozohttpd.override { minimal = true; };
1818
1819 brasero-unwrapped = callPackage ../tools/cd-dvd/brasero { };
1820
1821 brasero = callPackage ../tools/cd-dvd/brasero/wrapper.nix { };
1822
1823 bsh = fetchurl {
1824 url = "http://www.beanshell.org/bsh-2.0b5.jar";
1825 hash = "sha256-YjIZlWOAc1SzvLWs6z3BNlAvAixrDvdDmHqD9m/uWlw=";
1826 };
1827
1828 buildah = callPackage ../development/tools/buildah/wrapper.nix { };
1829 buildah-unwrapped = callPackage ../development/tools/buildah { };
1830
1831 cabal2nix-unwrapped = haskell.lib.compose.justStaticExecutables (
1832 haskellPackages.generateOptparseApplicativeCompletions [ "cabal2nix" ] haskellPackages.cabal2nix
1833 );
1834
1835 cabal2nix = symlinkJoin {
1836 inherit (cabal2nix-unwrapped) name meta;
1837 nativeBuildInputs = [ buildPackages.makeWrapper ];
1838 paths = [ cabal2nix-unwrapped ];
1839 postBuild = ''
1840 wrapProgram $out/bin/cabal2nix \
1841 --prefix PATH ":" "${
1842 lib.makeBinPath [
1843 nix
1844 nix-prefetch-scripts
1845 ]
1846 }"
1847 '';
1848 };
1849
1850 stack2nix =
1851 with haskell.lib;
1852 overrideCabal (justStaticExecutables haskellPackages.stack2nix) (_: {
1853 executableToolDepends = [ makeWrapper ];
1854 postInstall = ''
1855 wrapProgram $out/bin/stack2nix \
1856 --prefix PATH ":" "${git}/bin:${cabal-install}/bin"
1857 '';
1858 });
1859
1860 capstone = callPackage ../development/libraries/capstone { };
1861 capstone_4 = callPackage ../development/libraries/capstone/4.nix { };
1862
1863 catch2 = callPackage ../development/libraries/catch2 { };
1864
1865 catch2_3 = callPackage ../development/libraries/catch2/3.nix { };
1866
1867 ceres-solver = callPackage ../development/libraries/ceres-solver {
1868 gflags = null; # only required for examples/tests
1869 };
1870
1871 cedille = callPackage ../applications/science/logic/cedille {
1872 inherit (haskellPackages)
1873 alex
1874 happy
1875 Agda
1876 ghcWithPackages
1877 ;
1878 };
1879
1880 clevercsv = with python3Packages; toPythonApplication clevercsv;
1881
1882 cleanit = with python3Packages; toPythonApplication cleanit;
1883
1884 clickgen = with python3Packages; toPythonApplication clickgen;
1885
1886 cloud-init = callPackage ../tools/virtualization/cloud-init { inherit systemd; };
1887
1888 coloredlogs = with python3Packages; toPythonApplication coloredlogs;
1889
1890 czkawka-full = czkawka.wrapper.override {
1891 extraPackages = [ ffmpeg ];
1892 };
1893
1894 compactor = callPackage ../applications/networking/compactor {
1895 protobuf = protobuf_21;
1896 };
1897
1898 inherit (callPackages ../tools/misc/coreboot-utils { })
1899 msrtool
1900 cbmem
1901 ifdtool
1902 intelmetool
1903 cbfstool
1904 nvramtool
1905 superiotool
1906 ectool
1907 inteltool
1908 amdfwtool
1909 acpidump-all
1910 coreboot-utils
1911 ;
1912
1913 coreboot-configurator = libsForQt5.callPackage ../tools/misc/coreboot-configurator { };
1914
1915 sway-unwrapped = callPackage ../by-name/sw/sway-unwrapped/package.nix {
1916 wlroots = wlroots_0_19;
1917 };
1918
1919 cambrinary = python3Packages.callPackage ../applications/misc/cambrinary { };
1920
1921 cplex = callPackage ../applications/science/math/cplex (config.cplex or { });
1922
1923 cot = with python3Packages; toPythonApplication cot;
1924
1925 crossplane = with python3Packages; toPythonApplication crossplane;
1926
1927 csv2md = with python3Packages; toPythonApplication csv2md;
1928
1929 csvtool = callPackage ../development/ocaml-modules/csv/csvtool.nix { };
1930
1931 dataclass-wizard = with python3Packages; toPythonApplication dataclass-wizard;
1932
1933 datasette = with python3Packages; toPythonApplication datasette;
1934
1935 datovka = libsForQt5.callPackage ../applications/networking/datovka { };
1936
1937 diagrams-builder = callPackage ../tools/graphics/diagrams-builder {
1938 inherit (haskellPackages) ghcWithPackages diagrams-builder;
1939 };
1940
1941 dialogbox = libsForQt5.callPackage ../tools/misc/dialogbox { };
1942
1943 ding = callPackage ../applications/misc/ding {
1944 aspellDicts_de = aspellDicts.de;
1945 aspellDicts_en = aspellDicts.en;
1946 };
1947
1948 discourse = callPackage ../servers/web-apps/discourse { };
1949
1950 discourseAllPlugins = discourse.override {
1951 plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins);
1952 };
1953
1954 disorderfs = callPackage ../tools/filesystems/disorderfs {
1955 asciidoc = asciidoc-full;
1956 };
1957
1958 dino = callPackage ../applications/networking/instant-messengers/dino {
1959 inherit (gst_all_1)
1960 gstreamer
1961 gst-plugins-base
1962 gst-plugins-bad
1963 gst-vaapi
1964 ;
1965 gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
1966 };
1967
1968 dnschef = python3Packages.callPackage ../tools/networking/dnschef { };
1969
1970 inherit (ocamlPackages) dot-merlin-reader;
1971
1972 inherit (ocaml-ng.ocamlPackages_4_10) dune_1;
1973 inherit (ocamlPackages) dune_2 dune_3 dune-release;
1974
1975 dvc = with python3.pkgs; toPythonApplication dvc;
1976
1977 dvc-with-remotes = dvc.override {
1978 enableGoogle = true;
1979 enableAWS = true;
1980 enableAzure = true;
1981 enableSSH = true;
1982 };
1983
1984 easyaudiosync = qt6Packages.callPackage ../applications/audio/easyaudiosync { };
1985
1986 easycrypt = callPackage ../applications/science/logic/easycrypt {
1987 why3 = pkgs.why3.override {
1988 ideSupport = false;
1989 coqPackages = {
1990 coq = null;
1991 flocq = null;
1992 };
1993 };
1994 };
1995
1996 easycrypt-runtest = callPackage ../applications/science/logic/easycrypt/runtest.nix { };
1997
1998 easyocr = with python3.pkgs; toPythonApplication easyocr;
1999
2000 element-web = callPackage ../by-name/el/element-web/package.nix {
2001 conf = config.element-web.conf or { };
2002 };
2003
2004 espanso-wayland = espanso.override {
2005 x11Support = false;
2006 waylandSupport = !stdenv.hostPlatform.isDarwin;
2007 };
2008
2009 fast-cli = nodePackages.fast-cli;
2010
2011 ### TOOLS/TYPESETTING/TEX
2012
2013 advi = callPackage ../tools/typesetting/tex/advi {
2014 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
2015 };
2016
2017 dblatexFull = dblatex.override { enableAllFeatures = true; };
2018
2019 latex2mathml = with python3Packages; toPythonApplication latex2mathml;
2020
2021 pgf = pgf2;
2022
2023 tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; };
2024
2025 texFunctions = callPackage ../tools/typesetting/tex/nix pkgs;
2026
2027 # TeX Live; see https://nixos.org/nixpkgs/manual/#sec-language-texlive
2028 texlive = callPackage ../tools/typesetting/tex/texlive { };
2029 inherit (texlive.schemes)
2030 texliveBasic
2031 texliveBookPub
2032 texliveConTeXt
2033 texliveFull
2034 texliveGUST
2035 texliveInfraOnly
2036 texliveMedium
2037 texliveMinimal
2038 texliveSmall
2039 texliveTeTeX
2040 ;
2041 texlivePackages = recurseIntoAttrs (lib.mapAttrs (_: v: v.build) texlive.pkgs);
2042
2043 futhark = haskell.lib.compose.justStaticExecutables haskellPackages.futhark;
2044
2045 g2o = libsForQt5.callPackage ../development/libraries/g2o { };
2046
2047 inherit (go-containerregistry) crane gcrane;
2048
2049 geekbench_4 = callPackage ../tools/misc/geekbench/4.nix { };
2050 geekbench_5 = callPackage ../tools/misc/geekbench/5.nix { };
2051 geekbench_6 = callPackage ../tools/misc/geekbench/6.nix { };
2052 geekbench = geekbench_6;
2053
2054 ghidra = callPackage ../tools/security/ghidra/build.nix {
2055 protobuf = protobuf_21;
2056 };
2057
2058 ghidra-extensions = recurseIntoAttrs (callPackage ../tools/security/ghidra/extensions.nix { });
2059
2060 ghidra-bin = callPackage ../tools/security/ghidra { };
2061
2062 gpg-tui = callPackage ../tools/security/gpg-tui {
2063 inherit (darwin) libresolv;
2064 };
2065
2066 greg = callPackage ../applications/audio/greg {
2067 pythonPackages = python3Packages;
2068 };
2069
2070 hocr-tools = with python3Packages; toPythonApplication hocr-tools;
2071
2072 hopper = qt5.callPackage ../development/tools/analysis/hopper { };
2073
2074 hypr = callPackage ../applications/window-managers/hyprwm/hypr {
2075 cairo = cairo.override { xcbSupport = true; };
2076 };
2077
2078 aquamarine = callPackage ../by-name/aq/aquamarine/package.nix {
2079 stdenv = gcc15Stdenv;
2080 };
2081
2082 hyprcursor = callPackage ../by-name/hy/hyprcursor/package.nix {
2083 stdenv = gcc15Stdenv;
2084 };
2085
2086 hyprgraphics = callPackage ../by-name/hy/hyprgraphics/package.nix {
2087 stdenv = gcc15Stdenv;
2088 };
2089
2090 hypridle = callPackage ../by-name/hy/hypridle/package.nix {
2091 stdenv = gcc15Stdenv;
2092 };
2093
2094 hyprland = callPackage ../by-name/hy/hyprland/package.nix {
2095 stdenv = gcc15Stdenv;
2096 };
2097
2098 hyprland-protocols = callPackage ../by-name/hy/hyprland-protocols/package.nix {
2099 stdenv = gcc15Stdenv;
2100 };
2101
2102 hyprland-qt-support = callPackage ../by-name/hy/hyprland-qt-support/package.nix {
2103 stdenv = gcc15Stdenv;
2104 };
2105
2106 hyprland-qtutils = callPackage ../by-name/hy/hyprland-qtutils/package.nix {
2107 stdenv = gcc15Stdenv;
2108 };
2109
2110 hyprlang = callPackage ../by-name/hy/hyprlang/package.nix {
2111 stdenv = gcc15Stdenv;
2112 };
2113
2114 hyprlock = callPackage ../by-name/hy/hyprlock/package.nix {
2115 stdenv = gcc15Stdenv;
2116 };
2117
2118 hyprpaper = callPackage ../by-name/hy/hyprpaper/package.nix {
2119 stdenv = gcc15Stdenv;
2120 };
2121
2122 hyprpicker = callPackage ../by-name/hy/hyprpicker/package.nix {
2123 stdenv = gcc15Stdenv;
2124 };
2125
2126 hyprpolkitagent = callPackage ../by-name/hy/hyprpolkitagent/package.nix {
2127 stdenv = gcc15Stdenv;
2128 };
2129
2130 hyprsunset = callPackage ../by-name/hy/hyprsunset/package.nix {
2131 stdenv = gcc15Stdenv;
2132 };
2133
2134 hyprsysteminfo = callPackage ../by-name/hy/hyprsysteminfo/package.nix {
2135 stdenv = gcc15Stdenv;
2136 };
2137
2138 hyprutils = callPackage ../by-name/hy/hyprutils/package.nix {
2139 stdenv = gcc15Stdenv;
2140 };
2141
2142 hyprwayland-scanner = callPackage ../by-name/hy/hyprwayland-scanner/package.nix {
2143 stdenv = gcc15Stdenv;
2144 };
2145
2146 hyprshade = python3Packages.callPackage ../applications/window-managers/hyprwm/hyprshade { };
2147
2148 hyprlandPlugins = recurseIntoAttrs (
2149 callPackage ../applications/window-managers/hyprwm/hyprland-plugins { }
2150 );
2151
2152 intensity-normalization = with python3Packages; toPythonApplication intensity-normalization;
2153
2154 jellyfin-media-player = libsForQt5.callPackage ../applications/video/jellyfin-media-player { };
2155
2156 jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { };
2157
2158 klaus = with python3Packages; toPythonApplication klaus;
2159
2160 klipper = callPackage ../servers/klipper { };
2161
2162 klipper-firmware = callPackage ../servers/klipper/klipper-firmware.nix { };
2163
2164 klipper-flash = callPackage ../servers/klipper/klipper-flash.nix { };
2165
2166 klipper-genconf = callPackage ../servers/klipper/klipper-genconf.nix { };
2167
2168 klog = qt5.callPackage ../applications/radio/klog { };
2169
2170 lexicon = with python3Packages; toPythonApplication dns-lexicon;
2171
2172 lgogdownloader-gui = callPackage ../by-name/lg/lgogdownloader/package.nix { enableGui = true; };
2173
2174 # Less secure variant of lowdown for use inside Nix builds.
2175 lowdown-unsandboxed = lowdown.override {
2176 enableDarwinSandbox = false;
2177 };
2178
2179 kaggle = with python3Packages; toPythonApplication kaggle;
2180
2181 maliit-framework = libsForQt5.callPackage ../applications/misc/maliit-framework { };
2182
2183 maliit-keyboard = libsForQt5.callPackage ../applications/misc/maliit-keyboard { };
2184
2185 materialx = with python3Packages; toPythonApplication materialx;
2186
2187 # while building documentation meson may want to run binaries for host
2188 # which needs an emulator
2189 # example of an error which this fixes
2190 # [Errno 8] Exec format error: './gdk3-scan'
2191 mesonEmulatorHook =
2192 makeSetupHook
2193 {
2194 name = "mesonEmulatorHook";
2195 substitutions = {
2196 crossFile = writeText "cross-file.conf" ''
2197 [binaries]
2198 exe_wrapper = '${lib.escape [ "'" "\\" ] (stdenv.targetPlatform.emulator pkgs)}'
2199 '';
2200 };
2201 }
2202 # The throw is moved into the `makeSetupHook` derivation, so that its
2203 # outer level, but not its outPath can still be evaluated if the condition
2204 # doesn't hold. This ensures that splicing still can work correctly.
2205 (
2206 if (!stdenv.hostPlatform.canExecute stdenv.targetPlatform) then
2207 ../by-name/me/meson/emulator-hook.sh
2208 else
2209 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."
2210 );
2211
2212 mkspiffs = callPackage ../tools/filesystems/mkspiffs { };
2213
2214 mkspiffs-presets = recurseIntoAttrs (callPackages ../tools/filesystems/mkspiffs/presets.nix { });
2215
2216 mobilizon = callPackage ../servers/mobilizon {
2217 elixir = beam.packages.erlang_26.elixir_1_15;
2218 beamPackages = beam.packages.erlang_26.extend (self: super: { elixir = self.elixir_1_15; });
2219 mobilizon-frontend = callPackage ../servers/mobilizon/frontend.nix { };
2220 };
2221
2222 monado = callPackage ../by-name/mo/monado/package.nix {
2223 inherit (gst_all_1) gstreamer gst-plugins-base;
2224 };
2225
2226 mpd-sima = python3Packages.callPackage ../tools/audio/mpd-sima { };
2227
2228 nltk-data = lib.recurseIntoAttrs (callPackage ../tools/text/nltk-data { });
2229
2230 seabios-coreboot = seabios.override { ___build-type = "coreboot"; };
2231 seabios-csm = seabios.override { ___build-type = "csm"; };
2232 seabios-qemu = seabios.override { ___build-type = "qemu"; };
2233
2234 seaborn-data = callPackage ../tools/misc/seaborn-data { };
2235
2236 nodepy-runtime = with python3.pkgs; toPythonApplication nodepy-runtime;
2237
2238 nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools;
2239
2240 nsz = with python3.pkgs; toPythonApplication nsz;
2241
2242 ocrmypdf = with python3.pkgs; toPythonApplication ocrmypdf;
2243
2244 online-judge-template-generator =
2245 python3Packages.callPackage ../tools/misc/online-judge-template-generator
2246 { };
2247
2248 online-judge-tools = with python3.pkgs; toPythonApplication online-judge-tools;
2249
2250 inherit (ocamlPackages) patdiff;
2251
2252 patool = with python3Packages; toPythonApplication patool;
2253
2254 pixcat = with python3Packages; toPythonApplication pixcat;
2255
2256 pyznap = python3Packages.callPackage ../tools/backup/pyznap { };
2257
2258 psrecord = python3Packages.callPackage ../tools/misc/psrecord { };
2259
2260 rare = python3Packages.callPackage ../games/rare { };
2261
2262 renpy = callPackage ../by-name/re/renpy/package.nix { python3 = python312; };
2263
2264 rmview = libsForQt5.callPackage ../applications/misc/remarkable/rmview { };
2265
2266 remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { };
2267
2268 ropgadget = with python3Packages; toPythonApplication ropgadget;
2269
2270 scour = with python3Packages; toPythonApplication scour;
2271
2272 steampipePackages = recurseIntoAttrs (callPackage ../tools/misc/steampipe-packages { });
2273
2274 inherit (callPackages ../servers/rainloop { })
2275 rainloop-community
2276 rainloop-standard
2277 ;
2278
2279 razergenie = libsForQt5.callPackage ../applications/misc/razergenie { };
2280
2281 roundcube = callPackage ../servers/roundcube { };
2282
2283 roundcubePlugins = recurseIntoAttrs (callPackage ../servers/roundcube/plugins { });
2284
2285 rsyslog = callPackage ../tools/system/rsyslog {
2286 withHadoop = false; # Currently Broken
2287 withKsi = false; # Currently Broken
2288 };
2289
2290 rsyslog-light = rsyslog.override {
2291 withKrb5 = false;
2292 withSystemd = false;
2293 withJemalloc = false;
2294 withMysql = false;
2295 withPostgres = false;
2296 withDbi = false;
2297 withNetSnmp = false;
2298 withUuid = false;
2299 withCurl = false;
2300 withGnutls = false;
2301 withGcrypt = false;
2302 withLognorm = false;
2303 withMaxminddb = false;
2304 withOpenssl = false;
2305 withRelp = false;
2306 withKsi = false;
2307 withLogging = false;
2308 withNet = false;
2309 withHadoop = false;
2310 withRdkafka = false;
2311 withMongo = false;
2312 withCzmq = false;
2313 withRabbitmq = false;
2314 withHiredis = false;
2315 };
2316
2317 xmlsort = perlPackages.XMLFilterSort;
2318
2319 mcelog = callPackage ../os-specific/linux/mcelog {
2320 util-linux = util-linuxMinimal;
2321 };
2322
2323 apc-temp-fetch = with python3.pkgs; callPackage ../tools/networking/apc-temp-fetch { };
2324
2325 asciidoc = callPackage ../tools/typesetting/asciidoc {
2326 inherit (python3.pkgs)
2327 pygments
2328 matplotlib
2329 numpy
2330 aafigure
2331 recursive-pth-loader
2332 ;
2333 w3m = w3m-batch;
2334 enableStandardFeatures = false;
2335 };
2336
2337 asciidoc-full = asciidoc.override {
2338 enableStandardFeatures = true;
2339 };
2340
2341 asciidoc-full-with-plugins = asciidoc.override {
2342 enableStandardFeatures = true;
2343 enableExtraPlugins = true;
2344 };
2345
2346 asciidoctor = callPackage ../tools/typesetting/asciidoctor { };
2347
2348 asciidoctor-with-extensions = callPackage ../tools/typesetting/asciidoctor-with-extensions { };
2349
2350 b2sum = callPackage ../tools/security/b2sum {
2351 inherit (llvmPackages) openmp;
2352 };
2353
2354 beamerpresenter = beamerpresenter-mupdf;
2355
2356 beamerpresenter-mupdf = qt6Packages.callPackage ../applications/office/beamerpresenter {
2357 useMupdf = true;
2358 usePoppler = false;
2359 };
2360
2361 beamerpresenter-poppler = qt6Packages.callPackage ../applications/office/beamerpresenter {
2362 useMupdf = false;
2363 usePoppler = true;
2364 };
2365
2366 beetsPackages = lib.recurseIntoAttrs (callPackage ../tools/audio/beets { });
2367 inherit (beetsPackages) beets beets-unstable;
2368
2369 binlore = callPackage ../development/tools/analysis/binlore { };
2370
2371 birdfont = callPackage ../tools/misc/birdfont { };
2372 xmlbird = callPackage ../tools/misc/birdfont/xmlbird.nix { stdenv = gccStdenv; };
2373
2374 bmrsa = callPackage ../tools/security/bmrsa/11.nix { };
2375
2376 anystyle-cli = callPackage ../tools/misc/anystyle-cli { };
2377
2378 bzip2 = callPackage ../tools/compression/bzip2 { };
2379
2380 bzip2_1_1 = callPackage ../tools/compression/bzip2/1_1.nix { };
2381
2382 davix-copy = davix.override { enableThirdPartyCopy = true; };
2383
2384 cdist = python3Packages.callPackage ../tools/admin/cdist { };
2385
2386 cemu-ti = qt5.callPackage ../applications/science/math/cemu-ti { };
2387
2388 libceph = ceph.lib;
2389 inherit
2390 (callPackages ../tools/filesystems/ceph {
2391 lua = lua5_4; # Ceph currently requires >= 5.3
2392
2393 # To see which `fmt` version Ceph upstream recommends, check its `src/fmt` submodule.
2394 #
2395 # Ceph does not currently build with `fmt_10`; see https://github.com/NixOS/nixpkgs/issues/281027#issuecomment-1899128557
2396 # If we want to switch for that before upstream fixes it, use this patch:
2397 # https://github.com/NixOS/nixpkgs/pull/281858#issuecomment-1899648638
2398 fmt = fmt_9;
2399
2400 # Remove once Ceph supports arrow-cpp >= 20, see:
2401 # * https://tracker.ceph.com/issues/71269
2402 # * https://github.com/NixOS/nixpkgs/issues/406306
2403 arrow-cpp = callPackage ../tools/filesystems/ceph/arrow-cpp-19.nix { };
2404 })
2405 ceph
2406 ceph-client
2407 ;
2408 ceph-dev = ceph;
2409
2410 clementine = libsForQt5.callPackage ../applications/audio/clementine {
2411 gst_plugins = with gst_all_1; [
2412 gst-plugins-base
2413 gst-plugins-good
2414 gst-plugins-ugly
2415 gst-libav
2416 ];
2417 protobuf = protobuf_21;
2418 };
2419
2420 mellowplayer = libsForQt5.callPackage ../applications/audio/mellowplayer { };
2421
2422 circus = with python310Packages; toPythonApplication circus;
2423
2424 inherit (callPackage ../applications/networking/remote/citrix-workspace { })
2425 citrix_workspace_23_11_0
2426 citrix_workspace_24_02_0
2427 citrix_workspace_24_05_0
2428 citrix_workspace_24_08_0
2429 citrix_workspace_24_11_0
2430 citrix_workspace_25_03_0
2431 citrix_workspace_25_05_0
2432 ;
2433 citrix_workspace = citrix_workspace_25_05_0;
2434
2435 cmst = libsForQt5.callPackage ../tools/networking/cmst { };
2436
2437 colord-gtk4 = colord-gtk.override { withGtk4 = true; };
2438
2439 connmanFull = connman.override {
2440 # TODO: Why is this in `connmanFull` and not the default build? See TODO in
2441 # nixos/modules/services/networking/connman.nix (near the assertions)
2442 enableNetworkManagerCompatibility = true;
2443 enableHh2serialGps = true;
2444 enableL2tp = true;
2445 enableIospm = true;
2446 enableTist = true;
2447 };
2448
2449 connmanMinimal = connman.override {
2450 # enableDatafiles = false; # If disabled, configuration and data files are not installed
2451 # enableEthernet = false; # If disabled no ethernet connection can be performed
2452 # enableWifi = false; # If disabled no WiFi connection can be performed
2453 enableBluetooth = false;
2454 enableClient = false;
2455 enableDundee = false;
2456 enableGadget = false;
2457 enableLoopback = false;
2458 enableNeard = false;
2459 enableOfono = false;
2460 enableOpenconnect = false;
2461 enableOpenvpn = false;
2462 enablePacrunner = false;
2463 enablePolkit = false;
2464 enablePptp = false;
2465 enableStats = false;
2466 enableTools = false;
2467 enableVpnc = false;
2468 enableWireguard = false;
2469 enableWispr = false;
2470 };
2471
2472 collectd = callPackage ../tools/system/collectd { };
2473
2474 collectd-data = callPackage ../tools/system/collectd/data.nix { };
2475
2476 unify = with python3Packages; toPythonApplication unify;
2477
2478 inherit (nodePackages) uppy-companion;
2479
2480 usb-modeswitch-data = callPackage ../by-name/us/usb-modeswitch/data.nix { };
2481
2482 persistent-evdev = python3Packages.callPackage ../servers/persistent-evdev { };
2483
2484 inherit (import ../development/libraries/libsbsms pkgs)
2485 libsbsms
2486 libsbsms_2_0_2
2487 libsbsms_2_3_0
2488 ;
2489
2490 m17n_lib = callPackage ../tools/inputmethods/m17n-lib { };
2491
2492 libotf = callPackage ../tools/inputmethods/m17n-lib/otf.nix { };
2493
2494 skkDictionaries = callPackages ../tools/inputmethods/skk/skk-dicts { };
2495
2496 ibus = callPackage ../tools/inputmethods/ibus { };
2497
2498 ibus-engines = recurseIntoAttrs {
2499 anthy = callPackage ../tools/inputmethods/ibus-engines/ibus-anthy { };
2500
2501 bamboo = callPackage ../tools/inputmethods/ibus-engines/ibus-bamboo { };
2502
2503 cangjie = callPackage ../tools/inputmethods/ibus-engines/ibus-cangjie { };
2504
2505 chewing = callPackage ../tools/inputmethods/ibus-engines/ibus-chewing { };
2506
2507 hangul = callPackage ../tools/inputmethods/ibus-engines/ibus-hangul { };
2508
2509 kkc = callPackage ../tools/inputmethods/ibus-engines/ibus-kkc { };
2510
2511 libpinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-libpinyin { };
2512
2513 libthai = callPackage ../tools/inputmethods/ibus-engines/ibus-libthai { };
2514
2515 m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { };
2516
2517 inherit mozc mozc-ut;
2518
2519 openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard {
2520 withIbusSupport = true;
2521 };
2522
2523 pinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-pinyin { };
2524
2525 rime = callPackage ../tools/inputmethods/ibus-engines/ibus-rime { };
2526
2527 table = callPackage ../tools/inputmethods/ibus-engines/ibus-table { };
2528
2529 table-chinese = callPackage ../tools/inputmethods/ibus-engines/ibus-table-chinese {
2530 ibus-table = ibus-engines.table;
2531 };
2532
2533 table-others = callPackage ../tools/inputmethods/ibus-engines/ibus-table-others {
2534 ibus-table = ibus-engines.table;
2535 };
2536
2537 uniemoji = callPackage ../tools/inputmethods/ibus-engines/ibus-uniemoji { };
2538
2539 typing-booster-unwrapped = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster { };
2540
2541 typing-booster = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster/wrapper.nix {
2542 typing-booster = ibus-engines.typing-booster-unwrapped;
2543 };
2544 };
2545
2546 ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix { };
2547
2548 interception-tools = callPackage ../tools/inputmethods/interception-tools { };
2549 interception-tools-plugins = recurseIntoAttrs {
2550 caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { };
2551 dual-function-keys =
2552 callPackage ../tools/inputmethods/interception-tools/dual-function-keys.nix
2553 { };
2554 };
2555
2556 blacken-docs = with python3Packages; toPythonApplication blacken-docs;
2557
2558 bluetooth_battery = python3Packages.callPackage ../applications/misc/bluetooth_battery { };
2559
2560 calyx-vpn = qt6Packages.callPackage ../tools/networking/bitmask-vpn {
2561 provider = "calyx";
2562 };
2563
2564 cask-server = libsForQt5.callPackage ../applications/misc/cask-server { };
2565
2566 cffconvert = python3Packages.toPythonApplication python3Packages.cffconvert;
2567
2568 ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { };
2569
2570 clickhouse-lts = callPackage ../by-name/cl/clickhouse/lts.nix { };
2571
2572 cmdpack = callPackages ../tools/misc/cmdpack { };
2573
2574 cocoapods = callPackage ../development/tools/cocoapods { };
2575
2576 cocoapods-beta = lowPrio (callPackage ../development/tools/cocoapods { beta = true; });
2577
2578 comet-gog_heroic = callPackage ../by-name/co/comet-gog/package.nix { comet-gog_kind = "heroic"; };
2579
2580 compass = callPackage ../development/tools/compass { };
2581
2582 coreutils = callPackage ../tools/misc/coreutils { };
2583
2584 # The coreutils above are built with dependencies from
2585 # bootstrapping. We cannot override it here, because that pulls in
2586 # openssl from the previous stage as well.
2587 coreutils-full = callPackage ../tools/misc/coreutils { minimal = false; };
2588 coreutils-prefixed = coreutils.override {
2589 withPrefix = true;
2590 singleBinary = false;
2591 };
2592
2593 create-cycle-app = nodePackages.create-cycle-app;
2594
2595 cron = isc-cron;
2596
2597 # Top-level fix-point used in `cudaPackages`' internals
2598 _cuda = import ../development/cuda-modules/_cuda;
2599
2600 cudaPackages_12_6 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.6"; };
2601 cudaPackages_12_8 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.8"; };
2602 cudaPackages_12_9 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.9"; };
2603 cudaPackages_12 = cudaPackages_12_8; # Latest supported by cudnn
2604
2605 cudaPackages = recurseIntoAttrs cudaPackages_12;
2606
2607 # TODO: move to alias
2608 cudatoolkit = cudaPackages.cudatoolkit;
2609
2610 curlFull = curl.override {
2611 ldapSupport = true;
2612 gsaslSupport = true;
2613 rtmpSupport = true;
2614 pslSupport = true;
2615 websocketSupport = true;
2616 };
2617
2618 curlHTTP3 = curl.override {
2619 http3Support = true;
2620 };
2621
2622 curl = curlMinimal.override (
2623 {
2624 idnSupport = true;
2625 pslSupport = true;
2626 zstdSupport = true;
2627 }
2628 // lib.optionalAttrs (!stdenv.hostPlatform.isStatic) {
2629 brotliSupport = true;
2630 }
2631 );
2632
2633 curlWithGnuTls = curl.override {
2634 gnutlsSupport = true;
2635 opensslSupport = false;
2636 };
2637
2638 curl-impersonate-ff = curl-impersonate.curl-impersonate-ff;
2639 curl-impersonate-chrome = curl-impersonate.curl-impersonate-chrome;
2640
2641 cve-bin-tool = python3Packages.callPackage ../tools/security/cve-bin-tool { };
2642
2643 dconf2nix = callPackage ../development/tools/haskell/dconf2nix { };
2644
2645 ddcui = libsForQt5.callPackage ../applications/misc/ddcui { };
2646
2647 inherit (callPackages ../applications/networking/p2p/deluge { })
2648 deluge-gtk
2649 deluged
2650 deluge
2651 ;
2652
2653 deluge-2_x = deluge;
2654
2655 diffoscopeMinimal = diffoscope.override {
2656 enableBloat = false;
2657 };
2658
2659 diffutils = callPackage ../tools/text/diffutils { };
2660
2661 dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { };
2662
2663 dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { };
2664
2665 drone = callPackage ../development/tools/continuous-integration/drone { };
2666 drone-oss = callPackage ../development/tools/continuous-integration/drone {
2667 enableUnfree = false;
2668 };
2669
2670 dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { };
2671
2672 inherit (import ../build-support/dlang/dub-support.nix { inherit callPackage; })
2673 dub-to-nix
2674 importDubLock
2675 buildDubPackage
2676 dubSetupHook
2677 dubBuildHook
2678 dubCheckHook
2679 ;
2680
2681 dvtm = callPackage ../tools/misc/dvtm {
2682 # if you prefer a custom config, write the config.h in dvtm.config.h
2683 # and enable
2684 # customConfig = builtins.readFile ./dvtm.config.h;
2685 };
2686
2687 dvtm-unstable = callPackage ../tools/misc/dvtm/unstable.nix { };
2688
2689 engauge-digitizer = libsForQt5.callPackage ../applications/science/math/engauge-digitizer { };
2690
2691 kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { };
2692
2693 rocmPackages = rocmPackages_6;
2694 rocmPackages_6 = recurseIntoAttrs (callPackage ../development/rocm-modules/6 { });
2695
2696 tsm-client-withGui = callPackage ../by-name/ts/tsm-client/package.nix { enableGui = true; };
2697
2698 tracy = callPackage ../by-name/tr/tracy/package.nix { withWayland = stdenv.hostPlatform.isLinux; };
2699 tracy-glfw = callPackage ../by-name/tr/tracy/package.nix { withWayland = false; };
2700 tracy-wayland = callPackage ../by-name/tr/tracy/package.nix { withWayland = true; };
2701
2702 uusi = haskell.lib.compose.justStaticExecutables haskellPackages.uusi;
2703
2704 uutils-coreutils-noprefix = uutils-coreutils.override { prefix = null; };
2705
2706 xkcdpass = with python3Packages; toPythonApplication xkcdpass;
2707
2708 zonemaster-cli = perlPackages.ZonemasterCLI;
2709
2710 ### DEVELOPMENT / EMSCRIPTEN
2711
2712 buildEmscriptenPackage = callPackage ../development/em-modules/generic { };
2713
2714 emscripten = callPackage ../development/compilers/emscripten {
2715 llvmPackages = llvmPackages_21;
2716 };
2717
2718 emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
2719
2720 emscriptenStdenv = stdenv // {
2721 mkDerivation = buildEmscriptenPackage;
2722 };
2723
2724 # The latest version used by elasticsearch, logstash, kibana and the the beats from elastic.
2725 # When updating make sure to update all plugins or they will break!
2726 elk7Version = "7.17.27";
2727
2728 elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix {
2729 util-linux = util-linuxMinimal;
2730 jre_headless = jdk11_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
2731 };
2732 elasticsearch = elasticsearch7;
2733
2734 elasticsearchPlugins = recurseIntoAttrs (
2735 callPackage ../servers/search/elasticsearch/plugins.nix { }
2736 );
2737
2738 embree = callPackage ../development/libraries/embree { };
2739 embree2 = callPackage ../development/libraries/embree/2.x.nix { };
2740
2741 emborg = python3Packages.callPackage ../development/python-modules/emborg { };
2742
2743 encfs = callPackage ../tools/filesystems/encfs {
2744 tinyxml2 = tinyxml-2;
2745 };
2746
2747 ethercalc = callPackage ../servers/web-apps/ethercalc { };
2748
2749 evtest-qt = libsForQt5.callPackage ../applications/misc/evtest-qt { };
2750
2751 executor = with python3Packages; toPythonApplication executor;
2752
2753 exiftool = perlPackages.ImageExifTool;
2754
2755 expect = tclPackages.expect;
2756
2757 Fabric = with python3Packages; toPythonApplication fabric;
2758
2759 chewing-editor = libsForQt5.callPackage ../applications/misc/chewing-editor { };
2760
2761 fcitx5 = callPackage ../tools/inputmethods/fcitx5 { };
2762
2763 fcitx5-bamboo = callPackage ../tools/inputmethods/fcitx5/fcitx5-bamboo.nix { };
2764
2765 fcitx5-skk = qt6Packages.callPackage ../tools/inputmethods/fcitx5/fcitx5-skk.nix { };
2766
2767 fcitx5-anthy = callPackage ../tools/inputmethods/fcitx5/fcitx5-anthy.nix { };
2768
2769 fcitx5-chewing = callPackage ../tools/inputmethods/fcitx5/fcitx5-chewing.nix { };
2770
2771 fcitx5-lua = callPackage ../tools/inputmethods/fcitx5/fcitx5-lua.nix { lua = lua5_3; };
2772
2773 fcitx5-m17n = callPackage ../tools/inputmethods/fcitx5/fcitx5-m17n.nix { };
2774
2775 fcitx5-openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard {
2776 withFcitx5Support = true;
2777 };
2778
2779 fcitx5-gtk = callPackage ../tools/inputmethods/fcitx5/fcitx5-gtk.nix { };
2780
2781 fcitx5-hangul = callPackage ../tools/inputmethods/fcitx5/fcitx5-hangul.nix { };
2782
2783 fcitx5-rime = callPackage ../tools/inputmethods/fcitx5/fcitx5-rime.nix { };
2784
2785 fcitx5-table-extra = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-extra.nix { };
2786
2787 fcitx5-table-other = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-other.nix { };
2788
2789 flannel = callPackage ../tools/networking/flannel { };
2790 cni-plugin-flannel = callPackage ../tools/networking/flannel/plugin.nix { };
2791
2792 flatpak-builder = callPackage ../development/tools/flatpak-builder {
2793 binutils = binutils-unwrapped;
2794 };
2795
2796 fltrdr = callPackage ../tools/misc/fltrdr {
2797 icu = icu63;
2798 };
2799
2800 file = callPackage ../tools/misc/file {
2801 inherit (windows) libgnurx;
2802 };
2803
2804 findutils = callPackage ../tools/misc/findutils { };
2805
2806 bsd-fingerd = bsd-finger.override {
2807 buildProduct = "daemon";
2808 };
2809
2810 iprange = callPackage ../applications/networking/firehol/iprange.nix { };
2811
2812 firehol = callPackage ../applications/networking/firehol { };
2813
2814 fluentd = callPackage ../tools/misc/fluentd { };
2815
2816 gemstash = callPackage ../development/tools/gemstash { };
2817
2818 lpd8editor = libsForQt5.callPackage ../applications/audio/lpd8editor { };
2819
2820 lp_solve = callPackage ../applications/science/math/lp_solve {
2821 inherit (darwin) autoSignDarwinBinariesHook;
2822 };
2823
2824 fox = callPackage ../development/libraries/fox { };
2825
2826 fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { };
2827
2828 fpm = callPackage ../tools/package-management/fpm { };
2829
2830 ferdium = callPackage ../applications/networking/instant-messengers/ferdium {
2831 mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
2832 };
2833
2834 franz = callPackage ../applications/networking/instant-messengers/franz {
2835 mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
2836 };
2837
2838 freqtweak = callPackage ../applications/audio/freqtweak {
2839 wxGTK = wxGTK32;
2840 };
2841
2842 frostwire-bin = callPackage ../applications/networking/p2p/frostwire/frostwire-bin.nix { };
2843
2844 uniscribe = callPackage ../tools/text/uniscribe { };
2845
2846 gandi-cli = python3Packages.callPackage ../tools/networking/gandi-cli { };
2847
2848 inherit (callPackages ../tools/filesystems/garage { })
2849 garage
2850 garage_1
2851 garage_2
2852 ;
2853
2854 gaugePlugins = recurseIntoAttrs (callPackage ../by-name/ga/gauge/plugins { });
2855
2856 gawd = python3Packages.toPythonApplication python3Packages.gawd;
2857
2858 gawk = callPackage ../tools/text/gawk {
2859 inherit (darwin) locale;
2860 };
2861
2862 gawk-with-extensions = callPackage ../tools/text/gawk/gawk-with-extensions.nix {
2863 extensions = gawkextlib.full;
2864 };
2865 gawkextlib = callPackage ../tools/text/gawk/gawkextlib.nix { };
2866
2867 gawkInteractive = gawk.override { interactive = true; };
2868
2869 ggshield = callPackage ../tools/security/ggshield {
2870 python3 = python311;
2871 };
2872
2873 gibberish-detector = with python3Packages; toPythonApplication gibberish-detector;
2874
2875 gitlab-ee = callPackage ../by-name/gi/gitlab/package.nix {
2876 gitlabEnterprise = true;
2877 };
2878
2879 gitlab-workhorse = callPackage ../by-name/gi/gitlab/gitlab-workhorse { };
2880
2881 glogg = libsForQt5.callPackage ../tools/text/glogg { };
2882
2883 gmrender-resurrect = callPackage ../tools/networking/gmrender-resurrect {
2884 inherit (gst_all_1)
2885 gstreamer
2886 gst-plugins-base
2887 gst-plugins-good
2888 gst-plugins-bad
2889 gst-plugins-ugly
2890 gst-libav
2891 ;
2892 };
2893
2894 gnome-panel-with-modules = callPackage ../by-name/gn/gnome-panel/wrapper.nix { };
2895
2896 dapl = callPackage ../development/interpreters/dzaima-apl {
2897 buildNativeImage = false;
2898 stdenv = stdenvNoCC;
2899 jdk = jre;
2900 };
2901 dapl-native = callPackage ../development/interpreters/dzaima-apl {
2902 buildNativeImage = true;
2903 jdk = graalvmPackages.graalvm-ce;
2904 };
2905
2906 gnucap-full = gnucap.withPlugins (p: [ p.verilog ]);
2907
2908 gnugrep = callPackage ../tools/text/gnugrep { };
2909
2910 gnupatch = callPackage ../tools/text/gnupatch { };
2911
2912 gnupg1compat = callPackage ../tools/security/gnupg/1compat.nix { };
2913 gnupg1 = gnupg1compat; # use config.packageOverrides if you prefer original gnupg1
2914
2915 gnupg24 = callPackage ../tools/security/gnupg/24.nix {
2916 pinentry = if stdenv.hostPlatform.isDarwin then pinentry_mac else pinentry-gtk2;
2917 };
2918 gnupg = gnupg24;
2919
2920 gnuplot = libsForQt5.callPackage ../tools/graphics/gnuplot { };
2921
2922 gnuplot_qt = gnuplot.override { withQt = true; };
2923
2924 # must have AquaTerm installed separately
2925 gnuplot_aquaterm = gnuplot.override { aquaterm = true; };
2926
2927 gnused = callPackage ../tools/text/gnused { };
2928
2929 gnutar = callPackage ../tools/archivers/gnutar { };
2930
2931 inherit (callPackage ../development/tools/godot { })
2932 godot3
2933 godot3-export-templates
2934 godot3-headless
2935 godot3-debug-server
2936 godot3-server
2937 godot3-mono
2938 godot3-mono-export-templates
2939 godot3-mono-headless
2940 godot3-mono-debug-server
2941 godot3-mono-server
2942 godotPackages_4_3
2943 godotPackages_4_4
2944 godotPackages_4_5
2945 godotPackages_4
2946 godotPackages
2947 godot_4_3
2948 godot_4_3-mono
2949 godot_4_3-export-templates-bin
2950 godot_4_4
2951 godot_4_4-mono
2952 godot_4_4-export-templates-bin
2953 godot_4_5
2954 godot_4_5-mono
2955 godot_4_5-export-templates-bin
2956 godot_4
2957 godot_4-mono
2958 godot_4-export-templates-bin
2959 godot
2960 godot-mono
2961 godot-export-templates-bin
2962 ;
2963
2964 goattracker = callPackage ../applications/audio/goattracker { };
2965
2966 goattracker-stereo = callPackage ../applications/audio/goattracker {
2967 isStereo = true;
2968 };
2969
2970 google-cloud-sdk-gce = google-cloud-sdk.override {
2971 with-gce = true;
2972 };
2973
2974 google-compute-engine = with python3.pkgs; toPythonApplication google-compute-engine;
2975
2976 gdown = with python3Packages; toPythonApplication gdown;
2977
2978 gpt4all-cuda = gpt4all.override {
2979 cudaSupport = true;
2980 };
2981
2982 gprof2dot = with python3Packages; toPythonApplication gprof2dot;
2983
2984 grails = callPackage ../development/web/grails { jdk = null; };
2985
2986 graylog-6_0 = callPackage ../tools/misc/graylog/6.0.nix { };
2987
2988 inherit
2989 ({
2990 graylog-6_1 = callPackage ../tools/misc/graylog/6.1.nix { };
2991 })
2992 graylog-6_1
2993 ;
2994
2995 graylogPlugins = recurseIntoAttrs (
2996 callPackage ../tools/misc/graylog/plugins.nix { graylogPackage = graylog-6_0; }
2997 );
2998
2999 graphviz = callPackage ../tools/graphics/graphviz { };
3000
3001 graphviz-nox = callPackage ../tools/graphics/graphviz {
3002 withXorg = false;
3003 };
3004
3005 grub2 = callPackage ../tools/misc/grub/default.nix { };
3006
3007 grub2_efi = grub2.override {
3008 efiSupport = true;
3009 };
3010
3011 grub2_light = grub2.override {
3012 zfsSupport = false;
3013 };
3014
3015 grub2_xen = grub2.override {
3016 xenSupport = true;
3017 };
3018
3019 grub2_xen_pvh = grub2.override {
3020 xenPvhSupport = true;
3021 };
3022
3023 grub2_pvgrub_image = grub2_pvhgrub_image.override {
3024 grubPlatform = "xen";
3025 };
3026
3027 grub4dos = callPackage ../tools/misc/grub4dos {
3028 stdenv = stdenv_32bit;
3029 };
3030
3031 gruut = with python3.pkgs; toPythonApplication gruut;
3032
3033 gruut-ipa = with python3.pkgs; toPythonApplication gruut-ipa;
3034
3035 gsmlib = callPackage ../development/libraries/gsmlib { };
3036
3037 gssdp = callPackage ../development/libraries/gssdp { };
3038
3039 gssdp_1_6 = callPackage ../development/libraries/gssdp/1.6.nix { };
3040
3041 gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
3042
3043 gup = callPackage ../development/tools/build-managers/gup { };
3044
3045 gupnp = callPackage ../development/libraries/gupnp { };
3046
3047 gupnp_1_6 = callPackage ../development/libraries/gupnp/1.6.nix { };
3048
3049 gvm-tools = with python3.pkgs; toPythonApplication gvm-tools;
3050
3051 gzip = callPackage ../tools/compression/gzip { };
3052
3053 haskell-language-server =
3054 callPackage ../development/tools/haskell/haskell-language-server/withWrapper.nix
3055 { };
3056
3057 hassil = with python3Packages; toPythonApplication hassil;
3058
3059 haste-client = callPackage ../tools/misc/haste-client { };
3060
3061 halide = callPackage ../development/compilers/halide {
3062 llvmPackages = llvmPackages_19;
3063 };
3064
3065 hareThirdParty = recurseIntoAttrs (callPackage ./hare-third-party.nix { });
3066
3067 hdf5 = callPackage ../tools/misc/hdf5 {
3068 fortranSupport = false;
3069 fortran = gfortran;
3070 };
3071
3072 hdf5_1_10 = callPackage ../tools/misc/hdf5/1.10.nix { };
3073
3074 hdf5-mpi = hdf5.override {
3075 mpiSupport = true;
3076 cppSupport = false;
3077 };
3078
3079 hdf5-cpp = hdf5.override { cppSupport = true; };
3080
3081 hdf5-fortran = hdf5.override { fortranSupport = true; };
3082
3083 hdf5-fortran-mpi = hdf5.override {
3084 fortranSupport = true;
3085 mpiSupport = true;
3086 cppSupport = false;
3087 };
3088
3089 hdf5-threadsafe = hdf5.override {
3090 cppSupport = false;
3091 threadsafe = true;
3092 };
3093
3094 heaptrack = kdePackages.callPackage ../development/tools/profiling/heaptrack { };
3095
3096 headscale = callPackage ../servers/headscale { };
3097
3098 highlight = callPackage ../tools/text/highlight {
3099 lua = lua5;
3100 };
3101
3102 hockeypuck = callPackage ../servers/hockeypuck/server.nix { };
3103
3104 hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
3105
3106 host = bind.host;
3107
3108 hotdoc = python3Packages.callPackage ../development/tools/hotdoc { };
3109
3110 hpccm = with python3Packages; toPythonApplication hpccm;
3111
3112 hqplayer-desktop = qt6Packages.callPackage ../applications/audio/hqplayer-desktop { };
3113
3114 html-proofer = callPackage ../tools/misc/html-proofer { };
3115
3116 httpie = with python3Packages; toPythonApplication httpie;
3117
3118 hue-plus = libsForQt5.callPackage ../applications/misc/hue-plus { };
3119
3120 humanfriendly = with python3Packages; toPythonApplication humanfriendly;
3121
3122 hw-probe = perlPackages.callPackage ../tools/system/hw-probe { };
3123
3124 hyphen = callPackage ../development/libraries/hyphen { };
3125
3126 hyphenDicts = recurseIntoAttrs (callPackages ../development/libraries/hyphen/dictionaries.nix { });
3127
3128 iannix = libsForQt5.callPackage ../applications/audio/iannix { };
3129
3130 iaito = libsForQt5.callPackage ../tools/security/iaito { };
3131
3132 icemon = libsForQt5.callPackage ../applications/networking/icemon { };
3133
3134 icepeak = haskell.lib.compose.justStaticExecutables haskellPackages.icepeak;
3135
3136 ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix {
3137 inherit (haskellPackages) ghcWithPackages;
3138
3139 jupyter = python3.withPackages (ps: [
3140 ps.jupyter
3141 ps.notebook
3142 ]);
3143
3144 packages = config.ihaskell.packages or (_: [ ]);
3145 };
3146
3147 ilspycmd = callPackage ../development/tools/ilspycmd {
3148 inherit (darwin) autoSignDarwinBinariesHook;
3149 };
3150
3151 in-formant = qt6Packages.callPackage ../applications/audio/in-formant { };
3152
3153 incus-lts = callPackage ../by-name/in/incus/lts.nix { };
3154
3155 indexed-bzip2 = with python3Packages; toPythonApplication indexed-bzip2;
3156
3157 infisical = callPackage ../development/tools/infisical { };
3158
3159 input-remapper = python3Packages.callPackage ../tools/inputmethods/input-remapper { };
3160
3161 internetarchive = with python3Packages; toPythonApplication internetarchive;
3162
3163 iocextract = with python3Packages; toPythonApplication iocextract;
3164
3165 iocsearcher = with python3Packages; toPythonApplication iocsearcher;
3166
3167 iperf2 = callPackage ../tools/networking/iperf/2.nix { };
3168 iperf3 = callPackage ../tools/networking/iperf/3.nix { };
3169 iperf = iperf3;
3170
3171 i-pi = with python3Packages; toPythonApplication i-pi;
3172
3173 # ipscan is commonly known under the name angryipscanner
3174 angryipscanner = ipscan;
3175
3176 inherit
3177 (rec {
3178 isl = isl_0_20;
3179 isl_0_20 = callPackage ../development/libraries/isl/0.20.0.nix { };
3180 isl_0_23 = callPackage ../development/libraries/isl/0.23.0.nix { };
3181 isl_0_24 = callPackage ../development/libraries/isl/0.24.0.nix { };
3182 isl_0_27 = callPackage ../development/libraries/isl/0.27.0.nix { };
3183 })
3184 isl
3185 isl_0_20
3186 isl_0_23
3187 isl_0_24
3188 isl_0_27
3189 ;
3190
3191 jackett = callPackage ../servers/jackett { };
3192
3193 jamesdsp = qt6Packages.callPackage ../applications/audio/jamesdsp { };
3194 jamesdsp-pulse = qt6Packages.callPackage ../applications/audio/jamesdsp {
3195 usePipewire = false;
3196 usePulseaudio = true;
3197 };
3198
3199 jc = with python3Packages; toPythonApplication jc;
3200
3201 jello = with python3Packages; toPythonApplication jello;
3202
3203 jl = haskellPackages.jl;
3204
3205 joplin = nodePackages.joplin;
3206
3207 jpylyzer = with python3Packages; toPythonApplication jpylyzer;
3208
3209 jsbeautifier = with python3Packages; toPythonApplication jsbeautifier;
3210
3211 json-schema-for-humans = with python3Packages; toPythonApplication json-schema-for-humans;
3212
3213 jupyter = callPackage ../applications/editors/jupyter { };
3214
3215 jupyter-all = jupyter.override {
3216 definitions = {
3217 clojure = clojupyter.definition;
3218 octave = octave-kernel.definition;
3219 # wolfram = wolfram-for-jupyter-kernel.definition; # unfree
3220 };
3221 };
3222
3223 jupyter-console = callPackage ../applications/editors/jupyter/console.nix { };
3224
3225 jupyter-kernel = callPackage ../applications/editors/jupyter/kernel.nix { };
3226
3227 wrapKakoune =
3228 kakoune: attrs:
3229 callPackage ../applications/editors/kakoune/wrapper.nix (attrs // { inherit kakoune; });
3230 kakounePlugins = recurseIntoAttrs (callPackage ../applications/editors/kakoune/plugins { });
3231
3232 kakoune-unwrapped = callPackage ../applications/editors/kakoune { };
3233 kakoune = wrapKakoune kakoune-unwrapped {
3234 plugins = [ ]; # override with the list of desired plugins
3235 };
3236 kakouneUtils = callPackage ../applications/editors/kakoune/plugins/kakoune-utils.nix { };
3237
3238 kaffeine = libsForQt5.callPackage ../applications/video/kaffeine { };
3239
3240 kdiskmark = kdePackages.callPackage ../tools/filesystems/kdiskmark { };
3241
3242 keepkey-agent = with python3Packages; toPythonApplication keepkey-agent;
3243
3244 keybase = callPackage ../tools/security/keybase { };
3245
3246 kbfs = callPackage ../tools/security/keybase/kbfs.nix { };
3247
3248 keybase-gui = callPackage ../tools/security/keybase/gui.nix { };
3249
3250 kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { };
3251
3252 krunvm = callPackage ../applications/virtualization/krunvm {
3253 inherit (darwin) sigtool;
3254 };
3255
3256 kronometer = libsForQt5.callPackage ../tools/misc/kronometer { };
3257
3258 kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { };
3259
3260 ksmoothdock = libsForQt5.callPackage ../applications/misc/ksmoothdock { };
3261
3262 libcoap = callPackage ../applications/networking/libcoap { };
3263
3264 libcryptui = callPackage ../development/libraries/libcryptui {
3265 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
3266 };
3267
3268 liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix {
3269 ffmpeg = ffmpeg_6-full;
3270 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
3271 };
3272
3273 loganalyzer = libsForQt5.callPackage ../development/tools/loganalyzer { };
3274
3275 logstash7 = callPackage ../tools/misc/logstash/7.x.nix {
3276 # https://www.elastic.co/support/matrix#logstash-and-jvm
3277 jre = jdk11_headless;
3278 };
3279 logstash7-oss = callPackage ../tools/misc/logstash/7.x.nix {
3280 enableUnfree = false;
3281 # https://www.elastic.co/support/matrix#logstash-and-jvm
3282 jre = jdk11_headless;
3283 };
3284 logstash = logstash7;
3285
3286 logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { };
3287
3288 lolcat = callPackage ../tools/misc/lolcat { };
3289
3290 lsyncd = callPackage ../applications/networking/sync/lsyncd {
3291 lua = lua5_2_compat;
3292 };
3293
3294 kdbg = callPackage ../development/tools/misc/kdbg { };
3295
3296 kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { };
3297
3298 lagrange-tui = lagrange.override { enableTUI = true; };
3299
3300 kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
3301
3302 maskromtool = qt6Packages.callPackage ../tools/graphics/maskromtool { };
3303
3304 matrix-synapse-plugins = recurseIntoAttrs matrix-synapse-unwrapped.plugins;
3305
3306 maubot = with python3Packages; toPythonApplication maubot;
3307
3308 mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { });
3309
3310 m2r = with python3Packages; toPythonApplication m2r;
3311
3312 md2gemini = with python3.pkgs; toPythonApplication md2gemini;
3313
3314 md2pdf = with python3Packages; toPythonApplication md2pdf;
3315
3316 mdcat = callPackage ../tools/text/mdcat {
3317 inherit (python3Packages) ansi2html;
3318 };
3319
3320 medfile = callPackage ../development/libraries/medfile {
3321 hdf5 = hdf5.override { usev110Api = true; };
3322 };
3323
3324 mhonarc = perlPackages.MHonArc;
3325
3326 nanoemoji = with python3Packages; toPythonApplication nanoemoji;
3327
3328 netdata = callPackage ../tools/system/netdata {
3329 protobuf = protobuf_21;
3330 };
3331 netdataCloud = netdata.override {
3332 withCloudUi = true;
3333 };
3334
3335 nyxt = callPackage ../applications/networking/browsers/nyxt {
3336 sbcl = sbcl_2_4_6;
3337 inherit (gst_all_1)
3338 gstreamer
3339 gst-libav
3340 gst-plugins-base
3341 gst-plugins-good
3342 gst-plugins-bad
3343 gst-plugins-ugly
3344 ;
3345 };
3346
3347 nixnote2 = libsForQt5.callPackage ../applications/misc/nixnote2 { };
3348
3349 nodejs = nodejs_22;
3350 nodejs-slim = nodejs-slim_22;
3351 corepack = corepack_22;
3352
3353 nodejs_20 = callPackage ../development/web/nodejs/v20.nix { };
3354 nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { enableNpm = false; };
3355 corepack_20 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_20; };
3356
3357 nodejs_22 = callPackage ../development/web/nodejs/v22.nix { };
3358 nodejs-slim_22 = callPackage ../development/web/nodejs/v22.nix { enableNpm = false; };
3359 corepack_22 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_22; };
3360
3361 nodejs_24 = callPackage ../development/web/nodejs/v24.nix { };
3362 nodejs-slim_24 = callPackage ../development/web/nodejs/v24.nix { enableNpm = false; };
3363 corepack_24 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_24; };
3364
3365 # Update this when adding the newest nodejs major version!
3366 nodejs_latest = nodejs_24;
3367 nodejs-slim_latest = nodejs-slim_24;
3368 corepack_latest = corepack_24;
3369
3370 buildNpmPackage = callPackage ../build-support/node/build-npm-package { };
3371
3372 npmHooks = callPackage ../build-support/node/build-npm-package/hooks { };
3373
3374 inherit (callPackages ../build-support/node/fetch-npm-deps { })
3375 fetchNpmDeps
3376 prefetch-npm-deps
3377 ;
3378
3379 importNpmLock = callPackages ../build-support/node/import-npm-lock { };
3380
3381 nodePackages_latest = recurseIntoAttrs nodejs_latest.pkgs;
3382
3383 nodePackages = recurseIntoAttrs nodejs.pkgs;
3384
3385 node2nix = nodePackages.node2nix;
3386
3387 ktailctl = kdePackages.callPackage ../applications/networking/ktailctl { };
3388
3389 ldapdomaindump = with python3Packages; toPythonApplication ldapdomaindump;
3390
3391 leanblueprint = with python3Packages; toPythonApplication leanblueprint;
3392
3393 inherit (callPackage ../development/tools/lerna { })
3394 lerna_6
3395 lerna_8
3396 ;
3397 lerna = lerna_8;
3398
3399 libhandy = callPackage ../development/libraries/libhandy { };
3400
3401 # Needed for apps that still depend on the unstable version of the library (not libhandy-1)
3402 libhandy_0 = callPackage ../development/libraries/libhandy/0.x.nix { };
3403
3404 libint = callPackage ../development/libraries/libint { };
3405 libintPsi4 = callPackage ../development/libraries/libint {
3406 enableFortran = false;
3407 enableSSE = false;
3408 maxAm = 6;
3409 eriDeriv = 2;
3410 eri3Deriv = 2;
3411 eri2Deriv = 2;
3412 eriAm = [
3413 6
3414 5
3415 4
3416 ];
3417 eri3Am = [
3418 6
3419 5
3420 4
3421 ];
3422 eri2Am = [
3423 6
3424 5
3425 4
3426 ];
3427 eriOptAm = [
3428 3
3429 2
3430 2
3431 ];
3432 eri3OptAm = [
3433 3
3434 2
3435 2
3436 ];
3437 eri2OptAm = [
3438 3
3439 2
3440 2
3441 ];
3442 enableOneBody = true;
3443 oneBodyDerivOrd = 2;
3444 enableGeneric = false;
3445 enableContracted = false;
3446 cartGaussOrd = "standard";
3447 shGaussOrd = "gaussian";
3448 eri2PureSh = false;
3449 eri3PureSh = false;
3450 };
3451
3452 libirc = libsForQt5.callPackage ../development/libraries/libirc { };
3453
3454 libportal-gtk3 = libportal.override { variant = "gtk3"; };
3455 libportal-gtk4 = libportal.override { variant = "gtk4"; };
3456 libportal-qt5 = libportal.override { variant = "qt5"; };
3457 libportal-qt6 = libportal.override { variant = "qt6"; };
3458
3459 jesec-rtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent {
3460 libtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent/libtorrent.nix { };
3461 };
3462
3463 librest = callPackage ../development/libraries/librest { };
3464
3465 librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { };
3466
3467 licensee = callPackage ../tools/package-management/licensee { };
3468
3469 inherit
3470 ({
3471 limesuite = callPackage ../applications/radio/limesuite {
3472 };
3473 limesuiteWithGui = limesuite.override {
3474 withGui = true;
3475 };
3476 })
3477 limesuite
3478 limesuiteWithGui
3479 ;
3480
3481 linux-gpib = callPackage ../applications/science/electronics/linux-gpib/user.nix { };
3482
3483 liquidctl = with python3Packages; toPythonApplication liquidctl;
3484
3485 xz = callPackage ../tools/compression/xz { };
3486
3487 madlang = haskell.lib.compose.justStaticExecutables haskellPackages.madlang;
3488
3489 mailnag = callPackage ../applications/networking/mailreaders/mailnag {
3490 availablePlugins = {
3491 # More are listed here: https://github.com/pulb/mailnag/#desktop-integration
3492 # Use the attributes here as arguments to `plugins` list
3493 goa = callPackage ../applications/networking/mailreaders/mailnag/goa-plugin.nix { };
3494 };
3495 };
3496 mailnagWithPlugins = mailnag.withPlugins (builtins.attrValues mailnag.availablePlugins);
3497
3498 man = man-db;
3499
3500 mangohud = callPackage ../tools/graphics/mangohud {
3501 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
3502 mangohud32 = pkgsi686Linux.mangohud;
3503 };
3504
3505 marimo = with python3Packages; toPythonApplication marimo;
3506
3507 mecab =
3508 let
3509 mecab-nodic = callPackage ../tools/text/mecab/nodic.nix { };
3510 in
3511 callPackage ../tools/text/mecab {
3512 mecab-ipadic = callPackage ../tools/text/mecab/ipadic.nix {
3513 inherit mecab-nodic;
3514 };
3515 };
3516
3517 mbutil = python310Packages.callPackage ../applications/misc/mbutil { };
3518
3519 mcstatus = with python3Packages; toPythonApplication mcstatus;
3520
3521 miniupnpd = callPackage ../tools/networking/miniupnpd { };
3522
3523 miniupnpd-nftables = callPackage ../tools/networking/miniupnpd { firewall = "nftables"; };
3524
3525 minijail = callPackage ../tools/system/minijail { };
3526
3527 minijail-tools = python3.pkgs.callPackage ../tools/system/minijail/tools.nix { };
3528
3529 mir-qualia = callPackage ../tools/text/mir-qualia {
3530 pythonPackages = python3Packages;
3531 };
3532
3533 mitmproxy = with python3Packages; toPythonApplication mitmproxy;
3534
3535 mjpegtoolsFull = mjpegtools.override {
3536 withMinimal = false;
3537 };
3538
3539 mkpasswd = hiPrio (callPackage ../tools/security/mkpasswd { });
3540
3541 molecule = with python3Packages; toPythonApplication molecule;
3542
3543 moreutils = callPackage ../tools/misc/moreutils {
3544 docbook-xsl = docbook_xsl;
3545 };
3546
3547 metasploit = callPackage ../tools/security/metasploit { };
3548
3549 mtr = callPackage ../tools/networking/mtr { };
3550
3551 mtr-gui = callPackage ../tools/networking/mtr { withGtk = true; };
3552
3553 multitran = recurseIntoAttrs (
3554 let
3555 callPackage = newScope pkgs.multitran;
3556 in
3557 {
3558 multitrandata = callPackage ../tools/text/multitran/data { };
3559
3560 libbtree = callPackage ../tools/text/multitran/libbtree { };
3561
3562 libmtsupport = callPackage ../tools/text/multitran/libmtsupport { };
3563
3564 libfacet = callPackage ../tools/text/multitran/libfacet { };
3565
3566 libmtquery = callPackage ../tools/text/multitran/libmtquery { };
3567
3568 mtutils = callPackage ../tools/text/multitran/mtutils { };
3569 }
3570 );
3571
3572 mytetra = libsForQt5.callPackage ../applications/office/mytetra { };
3573
3574 nerd-fonts = recurseIntoAttrs (callPackage ../data/fonts/nerd-fonts { });
3575
3576 maple-mono = recurseIntoAttrs (callPackage ../data/fonts/maple-font { });
3577
3578 netcdf-mpi = netcdf.override {
3579 hdf5 = hdf5-mpi.override { usev110Api = true; };
3580 };
3581
3582 # Not in aliases because it wouldn't get picked up by callPackage
3583 netbox = netbox_4_3;
3584
3585 netcap-nodpi = callPackage ../by-name/ne/netcap/package.nix {
3586 withDpi = false;
3587 };
3588
3589 netcat = libressl.nc.overrideAttrs (old: {
3590 meta = old.meta // {
3591 description = "Utility which reads and writes data across network connections — LibreSSL implementation";
3592 mainProgram = "nc";
3593 };
3594 });
3595
3596 netlify-cli = callPackage ../by-name/ne/netlify-cli/package.nix {
3597 nodejs = nodejs_20;
3598 };
3599
3600 networkmanager = callPackage ../tools/networking/networkmanager { };
3601
3602 libnma-gtk4 = libnma.override { withGtk4 = true; };
3603
3604 inherit (callPackages ../servers/nextcloud { })
3605 nextcloud31
3606 ;
3607
3608 nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; };
3609
3610 nextcloud-notify_push = callPackage ../servers/nextcloud/notify_push.nix { };
3611
3612 inherit (callPackages ../applications/networking/cluster/nomad { })
3613 nomad
3614 nomad_1_9
3615 nomad_1_10
3616 ;
3617
3618 nth = with python3Packages; toPythonApplication name-that-hash;
3619
3620 nvchecker =
3621 with python3Packages;
3622 toPythonApplication (
3623 nvchecker.overridePythonAttrs (oldAttrs: {
3624 propagatedBuildInputs =
3625 oldAttrs.propagatedBuildInputs ++ lib.flatten (builtins.attrValues oldAttrs.optional-dependencies);
3626 })
3627 );
3628
3629 nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher;
3630
3631 mkgmap = callPackage ../applications/misc/mkgmap { };
3632
3633 mkgmap-splitter = callPackage ../applications/misc/mkgmap/splitter { };
3634
3635 op-geth = callPackage ../applications/blockchains/optimism/geth.nix { };
3636
3637 optimism = callPackage ../applications/blockchains/optimism { };
3638
3639 pandoc-acro = python3Packages.callPackage ../tools/misc/pandoc-acro { };
3640
3641 pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { };
3642
3643 pandoc-include = python3Packages.callPackage ../tools/misc/pandoc-include { };
3644
3645 pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { };
3646
3647 pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { };
3648
3649 # pandoc-*nos is a filter suite, where pandoc-xnos has all functionality and the others are used for only specific functionality
3650 pandoc-eqnos = python3Packages.callPackage ../tools/misc/pandoc-eqnos { };
3651 pandoc-fignos = python3Packages.callPackage ../tools/misc/pandoc-fignos { };
3652 pandoc-secnos = python3Packages.callPackage ../tools/misc/pandoc-secnos { };
3653 pandoc-tablenos = python3Packages.callPackage ../tools/misc/pandoc-tablenos { };
3654
3655 pegasus-frontend = libsForQt5.callPackage ../games/pegasus-frontend { };
3656
3657 pgbadger = perlPackages.callPackage ../tools/misc/pgbadger { };
3658
3659 nifskope = libsForQt5.callPackage ../tools/graphics/nifskope { };
3660
3661 nsjail = callPackage ../tools/security/nsjail {
3662 protobuf = protobuf_21;
3663 };
3664
3665 # ntfsprogs are merged into ntfs-3g
3666 ntfsprogs = pkgs.ntfs3g;
3667
3668 nvfancontrol = callPackage ../tools/misc/nvfancontrol {
3669 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
3670 };
3671
3672 nwdiag = with python3Packages; toPythonApplication nwdiag;
3673
3674 nxdomain = python3.pkgs.callPackage ../tools/networking/nxdomain { };
3675
3676 ofono-phonesim = libsForQt5.callPackage ../development/tools/ofono-phonesim { };
3677
3678 ola = callPackage ../applications/misc/ola {
3679 protobuf = protobuf_21;
3680 };
3681
3682 ome_zarr = with python3Packages; toPythonApplication ome-zarr;
3683
3684 onlykey = callPackage ../tools/security/onlykey { };
3685
3686 ophcrack-cli = ophcrack.override { enableGui = false; };
3687
3688 open-interpreter = with python3Packages; toPythonApplication open-interpreter;
3689
3690 openhantek6022 = libsForQt5.callPackage ../applications/science/electronics/openhantek6022 { };
3691
3692 openmvg = callPackage ../applications/science/misc/openmvg {
3693 inherit (llvmPackages) openmp;
3694 };
3695
3696 openmvs = callPackage ../applications/science/misc/openmvs {
3697 inherit (llvmPackages) openmp;
3698 };
3699
3700 openntpd_nixos = openntpd.override {
3701 privsepUser = "ntp";
3702 privsepPath = "/var/empty";
3703 };
3704
3705 openrgb-with-all-plugins = openrgb.withPlugins [
3706 openrgb-plugin-effects
3707 openrgb-plugin-hardwaresync
3708 ];
3709
3710 opensshPackages = dontRecurseIntoAttrs (callPackage ../tools/networking/openssh { });
3711
3712 openssh = opensshPackages.openssh.override {
3713 etcDir = "/etc/ssh";
3714 };
3715
3716 opensshTest = openssh.tests.openssh;
3717
3718 opensshWithKerberos = openssh.override {
3719 withKerberos = true;
3720 };
3721
3722 openssh_hpn = opensshPackages.openssh_hpn.override {
3723 etcDir = "/etc/ssh";
3724 };
3725
3726 openssh_hpnWithKerberos = openssh_hpn.override {
3727 withKerberos = true;
3728 };
3729
3730 openssh_gssapi = opensshPackages.openssh_gssapi.override {
3731 etcDir = "/etc/ssh";
3732 withKerberos = true;
3733 };
3734
3735 ssh-copy-id = callPackage ../tools/networking/openssh/copyid.nix { };
3736
3737 sshd-openpgp-auth = callPackage ../by-name/ss/ssh-openpgp-auth/daemon.nix { };
3738
3739 opentrack = libsForQt5.callPackage ../applications/misc/opentrack { };
3740
3741 openvpn = callPackage ../tools/networking/openvpn { };
3742
3743 openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
3744
3745 openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix {
3746 inherit (llvmPackages) stdenv;
3747 };
3748
3749 namespaced-openvpn = python3Packages.callPackage ../tools/networking/namespaced-openvpn { };
3750
3751 update-dotdee = with python3Packages; toPythonApplication update-dotdee;
3752
3753 update-nix-fetchgit = haskell.lib.compose.justStaticExecutables haskellPackages.update-nix-fetchgit;
3754
3755 update-resolv-conf = callPackage ../tools/networking/openvpn/update-resolv-conf.nix { };
3756
3757 update-systemd-resolved = callPackage ../tools/networking/openvpn/update-systemd-resolved.nix { };
3758
3759 opentelemetry-collector = opentelemetry-collector-releases.otelcol;
3760 opentelemetry-collector-builder = callPackage ../tools/misc/opentelemetry-collector/builder.nix { };
3761 opentelemetry-collector-contrib = opentelemetry-collector-releases.otelcol-contrib;
3762 opentelemetry-collector-releases =
3763 callPackage ../tools/misc/opentelemetry-collector/releases.nix
3764 { };
3765
3766 openvswitch-dpdk = callPackage ../by-name/op/openvswitch/package.nix { withDPDK = true; };
3767
3768 optifinePackages = callPackage ../tools/games/minecraft/optifine { };
3769
3770 optifine = optifinePackages.optifine-latest;
3771
3772 opl3bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor { };
3773 opn2bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor/opn2bankeditor.nix { };
3774
3775 osl = libsForQt5.callPackage ../development/compilers/osl {
3776 libclang = llvmPackages_19.libclang;
3777 clang = clang_19;
3778 llvm = llvm_19;
3779 };
3780
3781 ossec-agent = callPackage ../tools/security/ossec/agent.nix { };
3782
3783 ossec-server = callPackage ../tools/security/ossec/server.nix { };
3784
3785 p4c = callPackage ../development/compilers/p4c {
3786 protobuf = protobuf_21;
3787 };
3788
3789 p7zip = callPackage ../tools/archivers/p7zip { };
3790 p7zip-rar = p7zip.override { enableUnfree = true; };
3791
3792 packagekit = callPackage ../tools/package-management/packagekit { };
3793
3794 padthv1 = libsForQt5.callPackage ../applications/audio/padthv1 { };
3795
3796 pagefind = libsForQt5.callPackage ../applications/misc/pagefind { };
3797
3798 pakcs = callPackage ../development/compilers/pakcs { };
3799
3800 paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { };
3801
3802 parcellite = callPackage ../tools/misc/parcellite { };
3803
3804 patchutils = callPackage ../tools/text/patchutils { };
3805
3806 patchutils_0_3_3 = callPackage ../tools/text/patchutils/0.3.3.nix { };
3807
3808 patchutils_0_4_2 = callPackage ../tools/text/patchutils/0.4.2.nix { };
3809
3810 inherit (import ../servers/sql/percona-server pkgs)
3811 percona-server_8_0
3812 percona-server_8_4
3813 percona-server
3814 ;
3815 inherit (import ../tools/backup/percona-xtrabackup pkgs)
3816 percona-xtrabackup_8_0
3817 percona-xtrabackup_8_4
3818 percona-xtrabackup
3819 ;
3820
3821 pipecontrol = libsForQt5.callPackage ../applications/audio/pipecontrol { };
3822
3823 pulumiPackages = recurseIntoAttrs pulumi.pkgs;
3824
3825 pulumi-bin = callPackage ../tools/admin/pulumi-bin { };
3826
3827 patch = gnupatch;
3828
3829 patchance = python3Packages.callPackage ../applications/audio/patchance { };
3830
3831 pcscliteWithPolkit = pcsclite.override {
3832 pname = "pcsclite-with-polkit";
3833 polkitSupport = true;
3834 };
3835
3836 pdd = python3Packages.callPackage ../tools/misc/pdd { };
3837
3838 pdfminer = with python3Packages; toPythonApplication pdfminer-six;
3839
3840 pdfium-binaries-v8 = pdfium-binaries.override { withV8 = true; };
3841
3842 pdsh = callPackage ../tools/networking/pdsh {
3843 rsh = true; # enable internal rsh implementation
3844 ssh = openssh;
3845 };
3846
3847 pfstools = libsForQt5.callPackage ../tools/graphics/pfstools { };
3848
3849 phosh = callPackage ../applications/window-managers/phosh { };
3850
3851 phosh-mobile-settings =
3852 callPackage ../applications/window-managers/phosh/phosh-mobile-settings.nix
3853 { };
3854
3855 inherit (callPackages ../tools/security/pinentry { })
3856 pinentry-curses
3857 pinentry-emacs
3858 pinentry-gtk2
3859 pinentry-gnome3
3860 pinentry-qt
3861 pinentry-tty
3862 pinentry-all
3863 ;
3864
3865 pinentry_mac = callPackage ../tools/security/pinentry/mac.nix { };
3866
3867 plan9port = callPackage ../tools/system/plan9port {
3868 inherit (darwin) DarwinTools;
3869 };
3870
3871 platformio = if stdenv.hostPlatform.isLinux then platformio-chrootenv else platformio-core;
3872
3873 playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { };
3874
3875 playwright = playwright-driver;
3876 playwright-driver = (callPackage ../development/web/playwright/driver.nix { }).playwright-core;
3877 playwright-test = (callPackage ../development/web/playwright/driver.nix { }).playwright-test;
3878
3879 inherit (callPackage ../servers/plik { })
3880 plik
3881 plikd
3882 ;
3883
3884 plex = callPackage ../servers/plex { };
3885
3886 plexRaw = callPackage ../servers/plex/raw.nix { };
3887
3888 tabview = with python3Packages; toPythonApplication tabview;
3889
3890 tautulli = python3Packages.callPackage ../servers/tautulli { };
3891
3892 pleroma = callPackage ../servers/pleroma {
3893 elixir = elixir_1_17;
3894 beamPackages = beam.packages.erlang_26.extend (self: super: { elixir = elixir_1_17; });
3895 };
3896
3897 plfit = callPackage ../by-name/pl/plfit/package.nix {
3898 python = null;
3899 };
3900
3901 inherit (callPackage ../development/tools/pnpm { })
3902 pnpm_8
3903 pnpm_9
3904 pnpm_10
3905 ;
3906 pnpm = pnpm_10;
3907
3908 po4a = perlPackages.Po4a;
3909
3910 podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose { };
3911
3912 polaris = callPackage ../servers/polaris { };
3913
3914 polaris-web = callPackage ../servers/polaris/web.nix { };
3915
3916 projectm_3 = libsForQt5.callPackage ../applications/audio/projectm_3 { };
3917
3918 proxmark3 = libsForQt5.callPackage ../tools/security/proxmark3/default.nix { };
3919
3920 pycflow2dot = with python3.pkgs; toPythonApplication pycflow2dot;
3921
3922 pyinfra = with python3Packages; toPythonApplication pyinfra;
3923
3924 pylint = with python3Packages; toPythonApplication pylint;
3925
3926 pyocd = with python3Packages; toPythonApplication pyocd;
3927
3928 pypass = with python3Packages; toPythonApplication pypass;
3929
3930 pydeps = with python3Packages; toPythonApplication pydeps;
3931
3932 pywal = with python3Packages; toPythonApplication pywal;
3933
3934 raysession = python3Packages.callPackage ../applications/audio/raysession { };
3935
3936 remarshal = with python3Packages; toPythonApplication remarshal;
3937
3938 riseup-vpn = qt6Packages.callPackage ../tools/networking/bitmask-vpn {
3939 provider = "riseup";
3940 };
3941
3942 rocket = libsForQt5.callPackage ../tools/graphics/rocket { };
3943
3944 rtaudio = callPackage ../development/libraries/audio/rtaudio {
3945 jack = libjack2;
3946 };
3947
3948 rtmidi = callPackage ../development/libraries/audio/rtmidi {
3949 jack = libjack2;
3950 };
3951
3952 mpi = openmpi; # this attribute should used to build MPI applications
3953 openmodelica = recurseIntoAttrs (callPackage ../applications/science/misc/openmodelica { });
3954
3955 qarte = libsForQt5.callPackage ../applications/video/qarte { };
3956
3957 qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { };
3958
3959 qdigidoc = callPackage ../tools/security/qdigidoc { };
3960
3961 qjournalctl = libsForQt5.callPackage ../applications/system/qjournalctl { };
3962
3963 qjoypad = libsForQt5.callPackage ../tools/misc/qjoypad { };
3964
3965 qmarkdowntextedit = libsForQt5.callPackage ../development/libraries/qmarkdowntextedit { };
3966
3967 qtspim = libsForQt5.callPackage ../development/tools/misc/qtspim { };
3968
3969 quictls = callPackage ../development/libraries/quictls { };
3970
3971 quota = if stdenv.hostPlatform.isLinux then linuxquota else unixtools.quota;
3972
3973 radeon-profile = libsForQt5.callPackage ../tools/misc/radeon-profile { };
3974
3975 rainbowstream = with python3.pkgs; toPythonApplication rainbowstream;
3976
3977 rapidgzip = with python3Packages; toPythonApplication rapidgzip;
3978
3979 ratarmount = with python3Packages; toPythonApplication ratarmount;
3980
3981 retext = qt6Packages.callPackage ../applications/editors/retext { };
3982
3983 inherit (callPackage ../tools/security/rekor { })
3984 rekor-cli
3985 rekor-server
3986 ;
3987
3988 rst2pdf = with python3Packages; toPythonApplication rst2pdf;
3989
3990 rstcheck = with python3Packages; toPythonApplication rstcheck;
3991
3992 rstcheckWithSphinx = rstcheck.overridePythonAttrs (oldAttrs: {
3993 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.sphinx;
3994 });
3995
3996 rtmpdump_gnutls = rtmpdump.override {
3997 gnutlsSupport = true;
3998 opensslSupport = false;
3999 };
4000
4001 qt-box-editor = libsForQt5.callPackage ../applications/misc/qt-box-editor { };
4002
4003 recoll = libsForQt5.callPackage ../applications/search/recoll { };
4004
4005 recoll-nox = recoll.override { withGui = false; };
4006
4007 remote-exec = python3Packages.callPackage ../tools/misc/remote-exec { };
4008
4009 reptor = with python3.pkgs; toPythonApplication reptor;
4010
4011 rescuetime = libsForQt5.callPackage ../applications/misc/rescuetime { };
4012
4013 inherit (callPackage ../development/misc/resholve { })
4014 resholve
4015 ;
4016
4017 reuse = with python3.pkgs; toPythonApplication reuse;
4018
4019 rmlint = callPackage ../tools/misc/rmlint {
4020 inherit (python3Packages) sphinx;
4021 };
4022
4023 rpm = callPackage ../tools/package-management/rpm {
4024 lua = lua5_4;
4025 };
4026
4027 rsibreak = libsForQt5.callPackage ../applications/misc/rsibreak { };
4028
4029 rucio = callPackage ../by-name/ru/rucio/package.nix {
4030 # Pinned to python 3.12 while python313Packages.future does not evaluate and
4031 # until https://github.com/CZ-NIC/pyoidc/issues/649 is resolved
4032 python3Packages = python312Packages;
4033 };
4034
4035 rubocop = rubyPackages.rubocop;
4036
4037 ruby-lsp = rubyPackages.ruby-lsp;
4038
4039 s3cmd = python3Packages.callPackage ../tools/networking/s3cmd { };
4040
4041 s3-credentials = with python3Packages; toPythonApplication s3-credentials;
4042
4043 safety-cli = with python3.pkgs; toPythonApplication safety;
4044
4045 sasview = libsForQt5.callPackage ../applications/science/misc/sasview { };
4046
4047 saunafs = callPackage ../by-name/sa/saunafs/package.nix {
4048 fmt = fmt_11;
4049 spdlog = spdlog.override {
4050 fmt = fmt_11;
4051 };
4052 };
4053
4054 scfbuild = python3.pkgs.callPackage ../tools/misc/scfbuild { };
4055
4056 segger-jlink-headless = callPackage ../by-name/se/segger-jlink/package.nix { headless = true; };
4057
4058 selectdefaultapplication = libsForQt5.callPackage ../applications/misc/selectdefaultapplication { };
4059
4060 semgrep = python3.pkgs.toPythonApplication python3.pkgs.semgrep;
4061 inherit (semgrep.passthru) semgrep-core;
4062
4063 seqdiag = with python3Packages; toPythonApplication seqdiag;
4064
4065 shellify = haskellPackages.shellify.bin;
4066
4067 shiv = with python3Packages; toPythonApplication shiv;
4068
4069 slither-analyzer = with python3Packages; toPythonApplication slither-analyzer;
4070
4071 # aka., pgp-tools
4072 simplescreenrecorder = libsForQt5.callPackage ../applications/video/simplescreenrecorder { };
4073
4074 sks = callPackage ../servers/sks {
4075 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
4076 };
4077
4078 smpq = callPackage ../by-name/sm/smpq/package.nix {
4079 stormlib = stormlib.overrideAttrs (old: {
4080 version = "9.22";
4081 src = fetchFromGitHub {
4082 owner = "ladislav-zezula";
4083 repo = "StormLib";
4084 rev = "v9.22";
4085 hash = "sha256-jFUfxLzuRHAvFE+q19i6HfGcL6GX4vKL1g7l7LOhjeU=";
4086 };
4087 });
4088 };
4089
4090 snapcast = callPackage ../applications/audio/snapcast {
4091 pulseaudioSupport = config.pulseaudio or stdenv.hostPlatform.isLinux;
4092 };
4093
4094 specup = haskellPackages.specup.bin;
4095
4096 spglib = callPackage ../development/libraries/spglib {
4097 inherit (llvmPackages) openmp;
4098 };
4099
4100 # to match naming of other package repositories
4101 spire-agent = spire.agent;
4102 spire-server = spire.server;
4103
4104 spoof-mac = python3Packages.callPackage ../tools/networking/spoof-mac { };
4105
4106 stm32loader = with python3Packages; toPythonApplication stm32loader;
4107
4108 solc-select = with python3Packages; toPythonApplication solc-select;
4109
4110 splot = haskell.lib.compose.justStaticExecutables haskellPackages.splot;
4111
4112 sshfs = sshfs-fuse; # added 2017-08-14
4113
4114 inherit (callPackages ../tools/misc/sshx { })
4115 sshx
4116 sshx-server
4117 ;
4118
4119 strip-nondeterminism = perlPackages.strip-nondeterminism;
4120
4121 subsurface = libsForQt5.callPackage ../applications/misc/subsurface { };
4122
4123 sumorobot-manager =
4124 python3Packages.callPackage ../applications/science/robotics/sumorobot-manager
4125 { };
4126
4127 sslscan = callPackage ../tools/security/sslscan {
4128 openssl = openssl.override { withZlib = true; };
4129 };
4130
4131 stacer = libsForQt5.callPackage ../tools/system/stacer { };
4132
4133 staticjinja = with python3.pkgs; toPythonApplication staticjinja;
4134
4135 stoken = callPackage ../tools/security/stoken (config.stoken or { });
4136
4137 stutter = haskell.lib.compose.justStaticExecutables haskellPackages.stutter;
4138
4139 strongswanTNC = strongswan.override { enableTNC = true; };
4140 strongswanTPM = strongswan.override { enableTPM2 = true; };
4141 strongswanNM = strongswan.override { enableNetworkManager = true; };
4142
4143 stylish-haskell = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-haskell;
4144
4145 su = shadow.su;
4146
4147 subzerod = with python3Packages; toPythonApplication subzerod;
4148
4149 system-config-printer = callPackage ../tools/misc/system-config-printer {
4150 libxml2 = libxml2Python;
4151 };
4152
4153 privoxy = callPackage ../tools/networking/privoxy {
4154 w3m = w3m-batch;
4155 };
4156
4157 systemdgenie = libsForQt5.callPackage ../applications/system/systemdgenie { };
4158
4159 tartube = callPackage ../applications/video/tartube { };
4160
4161 tartube-yt-dlp = callPackage ../applications/video/tartube {
4162 youtube-dl = yt-dlp;
4163 };
4164
4165 teamviewer = libsForQt5.callPackage ../applications/networking/remote/teamviewer { };
4166
4167 buildTeleport = callPackage ../build-support/teleport { };
4168
4169 telepresence = callPackage ../tools/networking/telepresence {
4170 pythonPackages = python3Packages;
4171 };
4172
4173 texmacs = libsForQt5.callPackage ../applications/editors/texmacs {
4174 extraFonts = true;
4175 };
4176
4177 texmaker = qt6Packages.callPackage ../applications/editors/texmaker { };
4178
4179 texworks = qt6Packages.callPackage ../applications/editors/texworks { };
4180
4181 theLoungePlugins =
4182 let
4183 pkgs = lib.filterAttrs (name: _: lib.hasPrefix "thelounge-" name) nodePackages;
4184 getPackagesWithPrefix =
4185 prefix:
4186 lib.mapAttrs' (
4187 name: pkg: lib.nameValuePair (lib.removePrefix ("thelounge-" + prefix + "-") name) pkg
4188 ) (lib.filterAttrs (name: _: lib.hasPrefix ("thelounge-" + prefix + "-") name) pkgs);
4189 in
4190 lib.recurseIntoAttrs {
4191 plugins = lib.recurseIntoAttrs (getPackagesWithPrefix "plugin");
4192 themes = lib.recurseIntoAttrs (getPackagesWithPrefix "theme");
4193 };
4194
4195 thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { };
4196
4197 tiled = libsForQt5.callPackage ../applications/editors/tiled { };
4198
4199 tinc = callPackage ../tools/networking/tinc { };
4200
4201 tikzit = libsForQt5.callPackage ../tools/typesetting/tikzit { };
4202
4203 tinc_pre = callPackage ../tools/networking/tinc/pre.nix { };
4204
4205 tldr-hs = haskellPackages.tldr;
4206
4207 tmuxPlugins = recurseIntoAttrs (
4208 callPackage ../misc/tmux-plugins {
4209 pkgs = pkgs.__splicedPackages;
4210 }
4211 );
4212
4213 tpm2-totp-with-plymouth = tpm2-totp.override {
4214 withPlymouth = true;
4215 };
4216
4217 trackma-curses = trackma.override { withCurses = true; };
4218
4219 trackma-gtk = trackma.override { withGTK = true; };
4220
4221 trackma-qt = trackma.override { withQT = true; };
4222
4223 tpmmanager = libsForQt5.callPackage ../applications/misc/tpmmanager { };
4224
4225 trezorctl = with python3Packages; toPythonApplication trezor;
4226
4227 trezor-agent = with python3Packages; toPythonApplication trezor-agent;
4228
4229 ttp = with python3.pkgs; toPythonApplication ttp;
4230
4231 trace-cmd = callPackage ../os-specific/linux/trace-cmd { };
4232
4233 kernelshark = qt6Packages.callPackage ../os-specific/linux/trace-cmd/kernelshark.nix { };
4234
4235 translatelocally-models = recurseIntoAttrs (callPackages ../misc/translatelocally-models { });
4236
4237 translatepy = with python3.pkgs; toPythonApplication translatepy;
4238
4239 trytond = with python3Packages; toPythonApplication trytond;
4240
4241 ttfautohint = callPackage ../tools/misc/ttfautohint { };
4242 ttfautohint-nox = ttfautohint.override { enableGUI = false; };
4243
4244 twilight = callPackage ../tools/graphics/twilight {
4245 libX11 = xorg.libX11;
4246 };
4247
4248 twitch-chat-downloader =
4249 python3Packages.callPackage ../applications/misc/twitch-chat-downloader
4250 { };
4251
4252 ubpm = libsForQt5.callPackage ../applications/misc/ubpm { };
4253
4254 uftraceFull = uftrace.override {
4255 withLuaJIT = true;
4256 withPython = true;
4257 };
4258
4259 unetbootin = libsForQt5.callPackage ../tools/cd-dvd/unetbootin { };
4260
4261 unrpa = with python3Packages; toPythonApplication unrpa;
4262
4263 usort = with python3Packages; toPythonApplication usort;
4264
4265 vacuum = libsForQt5.callPackage ../applications/networking/instant-messengers/vacuum { };
4266
4267 vampire = callPackage ../applications/science/logic/vampire { };
4268
4269 vcmi = libsForQt5.callPackage ../games/vcmi { };
4270
4271 video2midi = callPackage ../tools/audio/video2midi {
4272 pythonPackages = python3Packages;
4273 };
4274
4275 vikunja = callPackage ../by-name/vi/vikunja/package.nix { pnpm = pnpm_9; };
4276
4277 vimpager = callPackage ../tools/misc/vimpager { };
4278 vimpager-latest = callPackage ../tools/misc/vimpager/latest.nix { };
4279
4280 vimwiki-markdown = python3Packages.callPackage ../tools/misc/vimwiki-markdown { };
4281
4282 vkbasalt = callPackage ../tools/graphics/vkbasalt {
4283 vkbasalt32 = pkgsi686Linux.vkbasalt;
4284 };
4285
4286 vpn-slice = python3Packages.callPackage ../tools/networking/vpn-slice { };
4287
4288 vpWithSixel = vp.override {
4289 # Enable next line for console graphics. Note that it requires `sixel`
4290 # enabled terminals such as mlterm or xterm -ti 340
4291 SDL = SDL_sixel;
4292 SDL_image = SDL_image.override { SDL = SDL_sixel; };
4293 };
4294
4295 openconnectPackages = callPackage ../tools/networking/openconnect { };
4296
4297 inherit (openconnectPackages) openconnect openconnect_openssl;
4298
4299 globalprotect-openconnect =
4300 libsForQt5.callPackage ../tools/networking/globalprotect-openconnect
4301 { };
4302
4303 sssd = callPackage ../os-specific/linux/sssd {
4304 # NOTE: freeipa and sssd need to be built with the same version of python
4305 inherit (perlPackages) Po4a;
4306 };
4307
4308 webassemblyjs-cli = nodePackages."@webassemblyjs/cli-1.11.1";
4309 webassemblyjs-repl = nodePackages."@webassemblyjs/repl-1.11.1";
4310
4311 buildWasmBindgenCli = callPackage ../build-support/wasm-bindgen-cli { };
4312
4313 wasm-strip = nodePackages."@webassemblyjs/wasm-strip";
4314 wasm-text-gen = nodePackages."@webassemblyjs/wasm-text-gen-1.11.1";
4315 wast-refmt = nodePackages."@webassemblyjs/wast-refmt-1.11.1";
4316
4317 wasmedge = callPackage ../development/tools/wasmedge {
4318 stdenv = clangStdenv;
4319 };
4320
4321 woodpecker-agent = callPackage ../development/tools/continuous-integration/woodpecker/agent.nix { };
4322
4323 woodpecker-cli = callPackage ../development/tools/continuous-integration/woodpecker/cli.nix { };
4324
4325 woodpecker-server =
4326 callPackage ../development/tools/continuous-integration/woodpecker/server.nix
4327 { };
4328
4329 testdisk = libsForQt5.callPackage ../tools/system/testdisk { };
4330
4331 testdisk-qt = testdisk.override { enableQt = true; };
4332
4333 tweet-hs = haskell.lib.compose.justStaticExecutables haskellPackages.tweet-hs;
4334
4335 truecrack-cuda = truecrack.override { cudaSupport = true; };
4336
4337 turbovnc = callPackage ../tools/admin/turbovnc {
4338 # fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ];
4339 libjpeg_turbo = libjpeg_turbo.override { enableJava = true; };
4340 };
4341
4342 ufmt = with python3Packages; toPythonApplication ufmt;
4343
4344 uim = callPackage ../tools/inputmethods/uim { };
4345
4346 unbound-with-systemd = unbound.override {
4347 withSystemd = true;
4348 };
4349
4350 unbound-full = unbound.override {
4351 python = python3;
4352 withSystemd = true;
4353 withDynlibModule = true;
4354 withPythonModule = true;
4355 withDoH = true;
4356 withECS = true;
4357 withDNSCrypt = true;
4358 withDNSTAP = true;
4359 withTFO = true;
4360 withRedis = true;
4361 };
4362
4363 unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { };
4364
4365 ugarit = callPackage ../tools/backup/ugarit {
4366 inherit (chickenPackages_4) eggDerivation fetchegg;
4367 };
4368
4369 ugarit-manifest-maker = callPackage ../tools/backup/ugarit-manifest-maker {
4370 inherit (chickenPackages_4) eggDerivation fetchegg;
4371 };
4372
4373 unar = callPackage ../tools/archivers/unar {
4374 stdenv = clangStdenv;
4375 };
4376
4377 unzipNLS = lowPrio (unzip.override { enableNLS = true; });
4378
4379 inherit (callPackages ../servers/varnish { })
4380 varnish60
4381 varnish77
4382 ;
4383 inherit (callPackages ../servers/varnish/packages.nix { })
4384 varnish60Packages
4385 varnish77Packages
4386 ;
4387 varnishPackages = varnish77Packages;
4388 varnish = varnishPackages.varnish;
4389
4390 vncdo = with python3Packages; toPythonApplication vncdo;
4391
4392 # An alias to work around the splicing incidents
4393 # Related:
4394 # https://github.com/NixOS/nixpkgs/issues/204303
4395 # https://github.com/NixOS/nixpkgs/issues/211340
4396 # https://github.com/NixOS/nixpkgs/issues/227327
4397 wafHook = waf.hook;
4398
4399 web-eid-app = libsForQt5.callPackage ../tools/security/web-eid-app { };
4400
4401 wio = callPackage ../by-name/wi/wio/package.nix {
4402 wlroots = wlroots_0_19;
4403 };
4404
4405 wring = nodePackages.wring;
4406
4407 wyrd = callPackage ../tools/misc/wyrd {
4408 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
4409 };
4410
4411 # A minimal xar is needed to break an infinite recursion between macfuse-stubs and xar.
4412 # It is also needed to reduce the amount of unnecessary stuff in the Darwin bootstrap.
4413 xarMinimal = callPackage ../by-name/xa/xar/package.nix { e2fsprogs = null; };
4414
4415 xdeltaUnstable = callPackage ../tools/compression/xdelta/unstable.nix { };
4416
4417 xdot = with python3Packages; toPythonApplication xdot;
4418
4419 libxfs = xfsprogs.dev;
4420
4421 xmlto = callPackage ../tools/typesetting/xmlto {
4422 w3m = w3m-batch;
4423 };
4424
4425 xorriso = libisoburn;
4426
4427 xvfb-run = callPackage ../tools/misc/xvfb-run {
4428 inherit (texFunctions) fontsConf;
4429 };
4430
4431 yapf = with python3Packages; toPythonApplication yapf;
4432
4433 yarn-berry_4 = yarn-berry.override { berryVersion = 4; };
4434 yarn-berry_3 = yarn-berry.override { berryVersion = 3; };
4435
4436 yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea {
4437 pkgs = pkgs.__splicedPackages;
4438 };
4439
4440 inherit (yarn2nix-moretea)
4441 yarn2nix
4442 mkYarnPackage
4443 mkYarnModules
4444 fixup_yarn_lock
4445 ;
4446
4447 yamlfix = with python3Packages; toPythonApplication yamlfix;
4448
4449 yamllint = with python3Packages; toPythonApplication yamllint;
4450
4451 # To expose more packages for Yi, override the extraPackages arg.
4452 yi = callPackage ../applications/editors/yi/wrapper.nix { };
4453
4454 zbar = libsForQt5.callPackage ../tools/graphics/zbar { };
4455
4456 # Nvidia support does not require any proprietary libraries, so CI can build it.
4457 # Note that when enabling this unconditionally, non-nvidia users will always have an empty "GPU" section.
4458 zenith-nvidia = zenith.override {
4459 nvidiaSupport = true;
4460 };
4461
4462 zstd = callPackage ../tools/compression/zstd {
4463 cmake = buildPackages.cmakeMinimal;
4464 };
4465
4466 ### SHELLS
4467
4468 runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}";
4469 runtimeShellPackage = bashNonInteractive;
4470
4471 bash = callPackage ../shells/bash/5.nix { };
4472 bashNonInteractive = lowPrio (
4473 callPackage ../shells/bash/5.nix {
4474 interactive = false;
4475 }
4476 );
4477 # WARNING: this attribute is used by nix-shell so it shouldn't be removed/renamed
4478 bashInteractive = bash;
4479 bashFHS = callPackage ../shells/bash/5.nix {
4480 forFHSEnv = true;
4481 };
4482 bashInteractiveFHS = bashFHS;
4483
4484 carapace = callPackage ../shells/carapace { };
4485
4486 wrapFish = callPackage ../shells/fish/wrapper.nix { };
4487
4488 fishPlugins = recurseIntoAttrs (callPackage ../shells/fish/plugins { });
4489
4490 powerline = with python3Packages; toPythonApplication powerline;
4491
4492 ### DEVELOPMENT / COMPILERS
4493 temurin-bin-25 = javaPackages.compiler.temurin-bin.jdk-25;
4494 temurin-jre-bin-25 = javaPackages.compiler.temurin-bin.jre-25;
4495
4496 temurin-bin-24 = javaPackages.compiler.temurin-bin.jdk-24;
4497 temurin-jre-bin-24 = javaPackages.compiler.temurin-bin.jre-24;
4498
4499 temurin-bin-23 = javaPackages.compiler.temurin-bin.jdk-23;
4500 temurin-jre-bin-23 = javaPackages.compiler.temurin-bin.jre-23;
4501
4502 temurin-bin-21 = javaPackages.compiler.temurin-bin.jdk-21;
4503 temurin-jre-bin-21 = javaPackages.compiler.temurin-bin.jre-21;
4504
4505 temurin-bin-17 = javaPackages.compiler.temurin-bin.jdk-17;
4506 temurin-jre-bin-17 = javaPackages.compiler.temurin-bin.jre-17;
4507
4508 temurin-bin-11 = javaPackages.compiler.temurin-bin.jdk-11;
4509 temurin-jre-bin-11 = javaPackages.compiler.temurin-bin.jre-11;
4510
4511 temurin-bin-8 = javaPackages.compiler.temurin-bin.jdk-8;
4512 temurin-jre-bin-8 = javaPackages.compiler.temurin-bin.jre-8;
4513
4514 temurin-bin = temurin-bin-21;
4515 temurin-jre-bin = temurin-jre-bin-21;
4516
4517 semeru-bin-21 = javaPackages.compiler.semeru-bin.jdk-21;
4518 semeru-jre-bin-21 = javaPackages.compiler.semeru-bin.jre-21;
4519 semeru-bin-17 = javaPackages.compiler.semeru-bin.jdk-17;
4520 semeru-jre-bin-17 = javaPackages.compiler.semeru-bin.jre-17;
4521 semeru-bin-11 = javaPackages.compiler.semeru-bin.jdk-11;
4522 semeru-jre-bin-11 = javaPackages.compiler.semeru-bin.jre-11;
4523 semeru-bin-8 = javaPackages.compiler.semeru-bin.jdk-8;
4524 semeru-jre-bin-8 = javaPackages.compiler.semeru-bin.jre-8;
4525
4526 semeru-bin = semeru-bin-21;
4527 semeru-jre-bin = semeru-jre-bin-21;
4528
4529 adaptivecppWithCuda = adaptivecpp.override { cudaSupport = true; };
4530 adaptivecppWithRocm = adaptivecpp.override { rocmSupport = true; };
4531
4532 armips = callPackage ../by-name/ar/armips/package.nix {
4533 stdenv = clangStdenv;
4534 };
4535
4536 binaryen = callPackage ../development/compilers/binaryen {
4537 nodejs = nodejs-slim;
4538 inherit (python3Packages) filecheck;
4539 };
4540
4541 bluespec = callPackage ../by-name/bl/bluespec/package.nix {
4542 gmp-static = gmp.override { withStatic = true; };
4543 };
4544
4545 codon = callPackage ../development/compilers/codon {
4546 inherit (llvmPackages) lld stdenv;
4547 };
4548
4549 colmap = libsForQt5.callPackage ../applications/science/misc/colmap {
4550 inherit (config) cudaSupport;
4551 };
4552 colmapWithCuda = colmap.override { cudaSupport = true; };
4553
4554 opensplatWithCuda = opensplat.override { cudaSupport = true; };
4555
4556 chickenPackages_4 = recurseIntoAttrs (callPackage ../development/compilers/chicken/4 { });
4557 chickenPackages_5 = recurseIntoAttrs (callPackage ../development/compilers/chicken/5 { });
4558 chickenPackages = dontRecurseIntoAttrs chickenPackages_5;
4559
4560 inherit (chickenPackages_5)
4561 fetchegg
4562 eggDerivation
4563 chicken
4564 egg2nix
4565 ;
4566
4567 cdb = callPackage ../development/tools/database/cdb {
4568 stdenv = gccStdenv;
4569 };
4570
4571 libclang = llvmPackages.libclang;
4572 clang-manpages = llvmPackages.clang-manpages;
4573
4574 clang = llvmPackages.clang;
4575
4576 clang-tools = llvmPackages.clang-tools;
4577
4578 clang-analyzer = callPackage ../development/tools/analysis/clang-analyzer {
4579 llvmPackages = llvmPackages;
4580 inherit (llvmPackages) clang;
4581 };
4582
4583 clazy = callPackage ../development/tools/analysis/clazy {
4584 stdenv = llvmPackages.stdenv;
4585 };
4586
4587 #Use this instead of stdenv to build with clang
4588 clangStdenv = if stdenv.cc.isClang then stdenv else lowPrio llvmPackages.stdenv;
4589 libcxxStdenv = if stdenv.hostPlatform.isDarwin then stdenv else lowPrio llvmPackages.libcxxStdenv;
4590
4591 comby = callPackage ../development/tools/comby {
4592 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
4593 };
4594
4595 inherit (coqPackages_9_0) compcert;
4596
4597 computecpp = wrapCCWith rec {
4598 cc = computecpp-unwrapped;
4599 extraPackages = [
4600 llvmPackages.compiler-rt
4601 ];
4602 extraBuildCommands = ''
4603 wrap compute $wrapper $ccPath/compute
4604 wrap compute++ $wrapper $ccPath/compute++
4605 export named_cc=compute
4606 export named_cxx=compute++
4607
4608 rsrc="$out/resource-root"
4609 mkdir -p "$rsrc/lib"
4610 ln -s "${cc}/lib" "$rsrc/include"
4611 echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
4612 '';
4613 };
4614
4615 corretto11 = javaPackages.compiler.corretto11;
4616 corretto17 = javaPackages.compiler.corretto17;
4617 corretto21 = javaPackages.compiler.corretto21;
4618
4619 inherit (callPackage ../development/compilers/crystal { })
4620 crystal_1_14
4621 crystal_1_15
4622 crystal_1_16
4623 crystal_1_17
4624 crystal
4625 ;
4626
4627 crystalline = callPackage ../development/tools/language-servers/crystalline {
4628 llvmPackages = crystal.llvmPackages;
4629 };
4630
4631 devpi-server = python3Packages.callPackage ../development/tools/devpi-server { };
4632
4633 dprint-plugins = recurseIntoAttrs (callPackage ../by-name/dp/dprint/plugins { });
4634
4635 elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix;
4636
4637 elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { });
4638
4639 fasm = pkgsi686Linux.callPackage ../development/compilers/fasm {
4640 inherit (stdenv.hostPlatform) isx86_64;
4641 };
4642 fasm-bin = callPackage ../development/compilers/fasm/bin.nix { };
4643
4644 fbc =
4645 if stdenv.hostPlatform.isDarwin then
4646 callPackage ../development/compilers/fbc/mac-bin.nix { }
4647 else
4648 callPackage ../development/compilers/fbc { };
4649
4650 filecheck = with python3Packages; toPythonApplication filecheck;
4651
4652 flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });
4653 flutterPackages-source = recurseIntoAttrs (
4654 callPackage ../development/compilers/flutter { useNixpkgsEngine = true; }
4655 );
4656 flutterPackages = flutterPackages-bin;
4657 flutter = flutterPackages.stable;
4658 flutter335 = flutterPackages.v3_35;
4659 flutter332 = flutterPackages.v3_32;
4660 flutter329 = flutterPackages.v3_29;
4661 flutter327 = flutterPackages.v3_27;
4662 flutter324 = flutterPackages.v3_24;
4663
4664 fpc = callPackage ../development/compilers/fpc { };
4665
4666 gambit = callPackage ../development/compilers/gambit { };
4667 gambit-unstable = callPackage ../development/compilers/gambit/unstable.nix { };
4668 gambit-support = callPackage ../development/compilers/gambit/gambit-support.nix { };
4669 gerbil = callPackage ../development/compilers/gerbil { };
4670 gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
4671 gerbil-support = callPackage ../development/compilers/gerbil/gerbil-support.nix { };
4672 gerbilPackages-unstable = pkgs.gerbil-support.gerbilPackages-unstable; # NB: don't recurseIntoAttrs for (unstable!) libraries
4673 glow-lang = pkgs.gerbilPackages-unstable.glow-lang;
4674
4675 default-gcc-version = 14;
4676 gcc = pkgs.${"gcc${toString default-gcc-version}"};
4677 gccFun = callPackage ../development/compilers/gcc;
4678 gcc-unwrapped = gcc.cc;
4679
4680 inherit
4681 (rec {
4682 # NOTE: keep this with the "NG" label until we're ready to drop the monolithic GCC
4683 gccNGPackagesSet = recurseIntoAttrs (callPackages ../development/compilers/gcc/ng { });
4684 gccNGPackages_15 = gccNGPackagesSet."15";
4685 mkGCCNGPackages = gccNGPackagesSet.mkPackage;
4686 })
4687 gccNGPackages_15
4688 mkGCCNGPackages
4689 ;
4690
4691 wrapNonDeterministicGcc =
4692 stdenv: ccWrapper:
4693 if ccWrapper.isGNU then
4694 ccWrapper.overrideAttrs (old: {
4695 env = old.env // {
4696 cc = old.env.cc.override {
4697 reproducibleBuild = false;
4698 profiledCompiler = with stdenv; (!isDarwin && hostPlatform.isx86);
4699 };
4700 };
4701 })
4702 else
4703 ccWrapper;
4704
4705 gnuStdenv =
4706 if stdenv.cc.isGNU then
4707 stdenv
4708 else
4709 gccStdenv.override {
4710 cc = gccStdenv.cc.override {
4711 bintools = buildPackages.binutils;
4712 };
4713 };
4714
4715 gccStdenv =
4716 if stdenv.cc.isGNU then
4717 stdenv
4718 else
4719 stdenv.override {
4720 cc = buildPackages.gcc;
4721 allowedRequisites = null;
4722 # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses
4723 # clang's internal assembler).
4724 extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc;
4725 };
4726
4727 gcc13Stdenv = overrideCC gccStdenv buildPackages.gcc13;
4728 gcc14Stdenv = overrideCC gccStdenv buildPackages.gcc14;
4729 gcc15Stdenv = overrideCC gccStdenv buildPackages.gcc15;
4730
4731 # This is not intended for use in nixpkgs but for providing a faster-running
4732 # compiler to nixpkgs users by building gcc with reproducibility-breaking
4733 # profile-guided optimizations
4734 fastStdenv = overrideCC gccStdenv (wrapNonDeterministicGcc gccStdenv buildPackages.gcc_latest);
4735
4736 wrapCCMulti =
4737 cc:
4738 let
4739 # Binutils with glibc multi
4740 bintools = cc.bintools.override {
4741 libc = glibc_multi;
4742 };
4743 in
4744 lowPrio (wrapCCWith {
4745 cc = cc.cc.override {
4746 stdenv = overrideCC stdenv (wrapCCWith {
4747 cc = cc.cc;
4748 inherit bintools;
4749 libc = glibc_multi;
4750 });
4751 profiledCompiler = false;
4752 enableMultilib = true;
4753 };
4754 libc = glibc_multi;
4755 inherit bintools;
4756 extraBuildCommands = ''
4757 echo "dontMoveLib64=1" >> $out/nix-support/setup-hook
4758 '';
4759 });
4760
4761 wrapClangMulti =
4762 clang:
4763 callPackage ../development/compilers/llvm/multi.nix {
4764 inherit clang;
4765 gcc32 = pkgsi686Linux.gcc;
4766 gcc64 = pkgs.gcc;
4767 };
4768
4769 gcc_multi = wrapCCMulti gcc;
4770 clang_multi = wrapClangMulti clang;
4771
4772 gccMultiStdenv = overrideCC stdenv buildPackages.gcc_multi;
4773 clangMultiStdenv = overrideCC stdenv buildPackages.clang_multi;
4774 multiStdenv = if stdenv.cc.isClang then clangMultiStdenv else gccMultiStdenv;
4775
4776 gcc_debug = lowPrio (
4777 wrapCC (
4778 gcc.cc.overrideAttrs {
4779 dontStrip = true;
4780 }
4781 )
4782 );
4783
4784 gccCrossLibcStdenv = overrideCC stdenvNoCC buildPackages.gccWithoutTargetLibc;
4785
4786 # The GCC used to build libc for the target platform. Normal gccs will be
4787 # built with, and use, that cross-compiled libc.
4788 gccWithoutTargetLibc =
4789 let
4790 libc1 = binutilsNoLibc.libc;
4791 in
4792 (wrapCCWith {
4793 cc = gccFun {
4794 # copy-pasted
4795 inherit noSysDirs;
4796 majorMinorVersion = toString default-gcc-version;
4797
4798 reproducibleBuild = true;
4799 profiledCompiler = false;
4800
4801 isl = if !stdenv.hostPlatform.isDarwin then isl_0_20 else null;
4802
4803 withoutTargetLibc = true;
4804 langCC = stdenv.targetPlatform.isCygwin; # can't compile libcygwin1.a without C++
4805 libcCross = libc1;
4806 targetPackages.stdenv.cc.bintools = binutilsNoLibc;
4807 enableShared =
4808 stdenv.targetPlatform.hasSharedLibraries
4809
4810 # temporarily disabled due to breakage;
4811 # see https://github.com/NixOS/nixpkgs/pull/243249
4812 && !stdenv.targetPlatform.isWindows
4813 && !stdenv.targetPlatform.isCygwin
4814 && !(stdenv.targetPlatform.useLLVM or false);
4815 };
4816 bintools = binutilsNoLibc;
4817 libc = libc1;
4818 extraPackages = [ ];
4819 }).overrideAttrs
4820 (prevAttrs: {
4821 meta = prevAttrs.meta // {
4822 badPlatforms =
4823 (prevAttrs.meta.badPlatforms or [ ])
4824 ++ lib.optionals (stdenv.targetPlatform == stdenv.hostPlatform) [ stdenv.hostPlatform.system ];
4825 };
4826 });
4827
4828 inherit (callPackage ../development/compilers/gcc/all.nix { inherit noSysDirs; })
4829 gcc13
4830 gcc14
4831 gcc15
4832 ;
4833
4834 gcc_latest = gcc15;
4835
4836 libgccjit = gcc.cc.override {
4837 name = "libgccjit";
4838 langFortran = false;
4839 langCC = false;
4840 langC = false;
4841 profiledCompiler = false;
4842 langJit = true;
4843 enableLTO = false;
4844 };
4845
4846 gnat = gnat13; # When changing this, update also gnatPackages
4847
4848 gnat13 = wrapCC (
4849 gcc13.cc.override {
4850 name = "gnat";
4851 langC = true;
4852 langCC = false;
4853 langAda = true;
4854 profiledCompiler = false;
4855 # As per upstream instructions building a cross compiler
4856 # should be done with a (native) compiler of the same version.
4857 # If we are cross-compiling GNAT, we may as well do the same.
4858 gnat-bootstrap =
4859 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
4860 buildPackages.gnat-bootstrap13
4861 else
4862 buildPackages.gnat13;
4863 stdenv =
4864 if
4865 stdenv.hostPlatform == stdenv.targetPlatform
4866 && stdenv.buildPlatform == stdenv.hostPlatform
4867 && stdenv.buildPlatform.isDarwin
4868 && stdenv.buildPlatform.isx86_64
4869 then
4870 overrideCC stdenv gnat-bootstrap13
4871 else
4872 stdenv;
4873 }
4874 );
4875
4876 gnat14 = wrapCC (
4877 gcc14.cc.override {
4878 name = "gnat";
4879 langC = true;
4880 langCC = false;
4881 langAda = true;
4882 profiledCompiler = false;
4883 # As per upstream instructions building a cross compiler
4884 # should be done with a (native) compiler of the same version.
4885 # If we are cross-compiling GNAT, we may as well do the same.
4886 gnat-bootstrap =
4887 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
4888 buildPackages.gnat-bootstrap14
4889 else
4890 buildPackages.gnat14;
4891 stdenv =
4892 if
4893 stdenv.hostPlatform == stdenv.targetPlatform
4894 && stdenv.buildPlatform == stdenv.hostPlatform
4895 && stdenv.buildPlatform.isDarwin
4896 && stdenv.buildPlatform.isx86_64
4897 then
4898 overrideCC stdenv gnat-bootstrap14
4899 else
4900 stdenv;
4901 }
4902 );
4903
4904 gnat15 = wrapCC (
4905 gcc15.cc.override {
4906 name = "gnat";
4907 langC = true;
4908 langCC = false;
4909 langAda = true;
4910 profiledCompiler = false;
4911 # As per upstream instructions building a cross compiler
4912 # should be done with a (native) compiler of the same version.
4913 # If we are cross-compiling GNAT, we may as well do the same.
4914 gnat-bootstrap =
4915 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
4916 buildPackages.gnat-bootstrap14
4917 else
4918 buildPackages.gnat15;
4919 stdenv =
4920 if
4921 stdenv.hostPlatform == stdenv.targetPlatform
4922 && stdenv.buildPlatform == stdenv.hostPlatform
4923 && stdenv.buildPlatform.isDarwin
4924 && stdenv.buildPlatform.isx86_64
4925 then
4926 overrideCC stdenv gnat-bootstrap14
4927 else
4928 stdenv;
4929 }
4930 );
4931
4932 gnat-bootstrap = gnat-bootstrap13;
4933 gnat-bootstrap13 = wrapCCWith (
4934 {
4935 cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "13"; };
4936 }
4937 // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
4938 bintools = bintoolsDualAs;
4939 }
4940 );
4941 gnat-bootstrap14 = wrapCCWith (
4942 {
4943 cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "14"; };
4944 }
4945 // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
4946 bintools = bintoolsDualAs;
4947 }
4948 );
4949
4950 gnat13Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat13; });
4951 gnat14Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat14; });
4952 gnat15Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat15; });
4953 gnatPackages = gnat13Packages;
4954
4955 inherit (gnatPackages)
4956 gprbuild
4957 gnatprove
4958 ;
4959
4960 gccgo = wrapCC (
4961 gcc.cc.override {
4962 name = "gccgo";
4963 langCC = true; # required for go.
4964 langC = true;
4965 langGo = true;
4966 langJit = true;
4967 profiledCompiler = false;
4968 }
4969 // {
4970 # not supported on darwin: https://github.com/golang/go/issues/463
4971 meta.broken = stdenv.hostPlatform.isDarwin;
4972 }
4973 );
4974
4975 gccgo13 = wrapCC (
4976 gcc13.cc.override {
4977 name = "gccgo";
4978 langCC = true; # required for go.
4979 langC = true;
4980 langGo = true;
4981 langJit = true;
4982 profiledCompiler = false;
4983 }
4984 // {
4985 # not supported on darwin: https://github.com/golang/go/issues/463
4986 meta.broken = stdenv.hostPlatform.isDarwin;
4987 }
4988 );
4989
4990 gccgo14 = wrapCC (
4991 gcc14.cc.override {
4992 name = "gccgo";
4993 langCC = true; # required for go.
4994 langC = true;
4995 langGo = true;
4996 langJit = true;
4997 profiledCompiler = false;
4998 }
4999 // {
5000 # not supported on darwin: https://github.com/golang/go/issues/463
5001 meta.broken = stdenv.hostPlatform.isDarwin;
5002 }
5003 );
5004
5005 gccgo15 = wrapCC (
5006 gcc15.cc.override {
5007 name = "gccgo";
5008 langCC = true; # required for go.
5009 langC = true;
5010 langGo = true;
5011 langJit = true;
5012 profiledCompiler = false;
5013 }
5014 // {
5015 # not supported on darwin: https://github.com/golang/go/issues/463
5016 meta.broken = stdenv.hostPlatform.isDarwin;
5017 }
5018 );
5019
5020 ghdl-mcode = callPackage ../by-name/gh/ghdl/package.nix { backend = "mcode"; };
5021
5022 ghdl-gcc = callPackage ../by-name/gh/ghdl/package.nix { backend = "gcc"; };
5023
5024 ghdl-llvm = callPackage ../by-name/gh/ghdl/package.nix {
5025 backend = "llvm";
5026 inherit (llvmPackages) llvm;
5027 };
5028
5029 gcc-arm-embedded = gcc-arm-embedded-14;
5030
5031 # Haskell and GHC
5032
5033 haskell = recurseIntoAttrs (callPackage ./haskell-packages.nix { });
5034
5035 haskellPackages =
5036 recurseIntoAttrs
5037 # Prefer native-bignum to avoid linking issues with gmp
5038 # GHC 9.6 rts can't be built statically with hadrian, so we need to use 9.4
5039 # until 9.8 is ready
5040 (
5041 if stdenv.hostPlatform.isStatic then
5042 haskell.packages.native-bignum.ghc94
5043 # JS backend can't use gmp
5044 else if stdenv.hostPlatform.isGhcjs then
5045 haskell.packages.native-bignum.ghc98
5046 # ICEs horribly on i686, see https://gitlab.haskell.org/ghc/ghc/-/issues/25904
5047 # FIXME: remove when fixed
5048 else if stdenv.hostPlatform.isi686 then
5049 haskell.packages.ghc96
5050 else
5051 haskell.packages.ghc98
5052 );
5053
5054 # haskellPackages.ghc is build->host (it exposes the compiler used to build the
5055 # set, similarly to stdenv.cc), but pkgs.ghc should be host->target to be more
5056 # consistent with the gcc, gnat, clang etc. derivations
5057 #
5058 # We use targetPackages.haskellPackages.ghc if available since this also has
5059 # the withPackages wrapper available. In the final cross-compiled package set
5060 # however, targetPackages won't be populated, so we need to fall back to the
5061 # plain, cross-compiled compiler (which is only theoretical at the moment).
5062 ghc =
5063 targetPackages.haskellPackages.ghc or
5064 # Prefer native-bignum to avoid linking issues with gmp
5065 # Use 9.4 for static over broken 9.6
5066 (
5067 if stdenv.targetPlatform.isStatic then
5068 haskell.compiler.native-bignum.ghc94
5069 # JS backend can't use GMP
5070 else if stdenv.targetPlatform.isGhcjs then
5071 haskell.compiler.native-bignum.ghc98
5072 # ICEs horribly on i686, see https://gitlab.haskell.org/ghc/ghc/-/issues/25904
5073 # FIXME: remove when fixed
5074 else if stdenv.hostPlatform.isi686 then
5075 haskell.compiler.ghc96
5076 else
5077 haskell.compiler.ghc98
5078 );
5079
5080 alex = haskell.lib.compose.justStaticExecutables haskellPackages.alex;
5081
5082 happy = haskell.lib.compose.justStaticExecutables haskellPackages.happy;
5083
5084 hscolour = haskell.lib.compose.justStaticExecutables haskellPackages.hscolour;
5085
5086 cabal-install = haskell.lib.compose.justStaticExecutables haskellPackages.cabal-install;
5087
5088 stack =
5089 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
5090 (
5091 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
5092 lib.id
5093 else
5094 haskell.lib.compose.justStaticExecutables
5095 )
5096 haskellPackages.stack;
5097
5098 hlint = haskell.lib.compose.justStaticExecutables haskellPackages.hlint;
5099
5100 krank = haskell.lib.compose.justStaticExecutables haskellPackages.krank;
5101
5102 stylish-cabal = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-cabal;
5103
5104 lhs2tex = haskellPackages.lhs2tex;
5105
5106 all-cabal-hashes = callPackage ../data/misc/hackage { };
5107
5108 purescript = callPackage ../development/compilers/purescript/purescript { };
5109
5110 purescript-psa = nodePackages.purescript-psa;
5111
5112 purenix = haskell.lib.compose.justStaticExecutables haskellPackages.purenix;
5113
5114 spago = callPackage ../development/tools/purescript/spago { };
5115
5116 pulp = nodePackages.pulp;
5117
5118 pscid = nodePackages.pscid;
5119
5120 coreboot-toolchain = recurseIntoAttrs (
5121 callPackage ../development/tools/misc/coreboot-toolchain { }
5122 );
5123
5124 tamarin-prover = (
5125 callPackage ../applications/science/logic/tamarin-prover {
5126 # 2025-03-07: dependency fclabels doesn't compile with GHC >= 9.8
5127 # https://github.com/sebastiaanvisser/fclabels/issues/46
5128 haskellPackages = haskell.packages.ghc96;
5129 graphviz = graphviz-nox;
5130 }
5131 );
5132
5133 inherit
5134 (callPackage ../development/compilers/haxe {
5135 })
5136 haxe_4_3
5137 haxe_4_1
5138 haxe_4_0
5139 ;
5140
5141 haxe = haxe_4_3;
5142 haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { });
5143 inherit (haxePackages) hxcpp;
5144
5145 falcon = callPackage ../development/interpreters/falcon { };
5146
5147 dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix { });
5148
5149 gopro-tool = callPackage ../by-name/go/gopro-tool/package.nix {
5150 vlc = vlc.overrideAttrs (old: {
5151 buildInputs = old.buildInputs ++ [ x264 ];
5152 });
5153 };
5154
5155 gwe = callPackage ../tools/misc/gwe {
5156 nvidia_x11 = linuxPackages.nvidia_x11;
5157 };
5158
5159 gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { };
5160
5161 idrisPackages = recurseIntoAttrs (
5162 callPackage ../development/idris-modules {
5163 idris-no-deps = haskellPackages.idris;
5164 pkgs = pkgs.__splicedPackages;
5165 }
5166 );
5167
5168 idris = idrisPackages.with-packages [ idrisPackages.base ];
5169
5170 idris2Packages = recurseIntoAttrs (callPackage ../development/compilers/idris2 { });
5171
5172 inherit (idris2Packages) idris2;
5173
5174 inherit (callPackage ../development/tools/database/indradb { })
5175 indradb-server
5176 indradb-client
5177 ;
5178
5179 instawow = callPackage ../games/instawow/default.nix { };
5180
5181 irony-server = callPackage ../development/tools/irony-server {
5182 # The repository of irony to use -- must match the version of the employed emacs
5183 # package. Wishing we could merge it into one irony package, to avoid this issue,
5184 # but its emacs-side expression is autogenerated, and we can't hook into it (other
5185 # than peek into its version).
5186 inherit (emacs.pkgs.melpaStablePackages) irony;
5187 };
5188
5189 openjfx17 = openjfx;
5190 openjfx21 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "21"; };
5191 openjfx23 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "23"; };
5192 openjfx24 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "24"; };
5193 openjfx25 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "25"; };
5194
5195 openjdk8-bootstrap = javaPackages.compiler.openjdk8-bootstrap;
5196 openjdk8 = javaPackages.compiler.openjdk8;
5197 openjdk8_headless = javaPackages.compiler.openjdk8.headless;
5198 jdk8 = openjdk8;
5199 jdk8_headless = openjdk8_headless;
5200 jre8 = openjdk8.jre;
5201 jre8_headless = openjdk8_headless.jre;
5202
5203 openjdk11-bootstrap = javaPackages.compiler.openjdk11-bootstrap;
5204 openjdk11 = javaPackages.compiler.openjdk11;
5205 openjdk11_headless = javaPackages.compiler.openjdk11.headless;
5206 jdk11 = openjdk11;
5207 jdk11_headless = openjdk11_headless;
5208
5209 openjdk17-bootstrap = javaPackages.compiler.openjdk17-bootstrap;
5210 openjdk17 = javaPackages.compiler.openjdk17;
5211 openjdk17_headless = javaPackages.compiler.openjdk17.headless;
5212 jdk17 = openjdk17;
5213 jdk17_headless = openjdk17_headless;
5214
5215 openjdk21 = javaPackages.compiler.openjdk21;
5216 openjdk21_headless = javaPackages.compiler.openjdk21.headless;
5217 jdk21 = openjdk21;
5218 jdk21_headless = openjdk21_headless;
5219
5220 openjdk23 = javaPackages.compiler.openjdk23;
5221 openjdk23_headless = javaPackages.compiler.openjdk23.headless;
5222 jdk23 = openjdk23;
5223 jdk23_headless = openjdk23_headless;
5224
5225 openjdk24 = javaPackages.compiler.openjdk24;
5226 openjdk24_headless = javaPackages.compiler.openjdk24.headless;
5227 jdk24 = openjdk24;
5228 jdk24_headless = openjdk24_headless;
5229
5230 openjdk25 = javaPackages.compiler.openjdk25;
5231 openjdk25_headless = javaPackages.compiler.openjdk25.headless;
5232 jdk25 = openjdk25;
5233 jdk25_headless = openjdk25_headless;
5234
5235 # default JDK
5236 jdk = jdk21;
5237 jdk_headless = jdk21_headless;
5238
5239 # Since the introduction of the Java Platform Module System in Java 9, Java
5240 # no longer ships a separate JRE package.
5241 #
5242 # If you are building a 'minimal' system/image, you are encouraged to use
5243 # 'jre_minimal' to build a bespoke JRE containing only the modules you need.
5244 #
5245 # For a general-purpose system, 'jre' defaults to the full JDK:
5246 jre = jdk;
5247 jre_headless = jdk_headless;
5248
5249 inherit
5250 ({
5251 jre11_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5252 jdk = jdk11;
5253 jdkOnBuild = buildPackages.jdk11;
5254 };
5255 jre17_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5256 jdk = jdk17;
5257 jdkOnBuild = buildPackages.jdk17;
5258 };
5259 jre21_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5260 jdk = jdk21;
5261 jdkOnBuild = buildPackages.jdk21;
5262 };
5263 jre25_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5264 jdk = jdk25;
5265 jdkOnBuild = buildPackages.jdk25;
5266 };
5267 jre_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5268 jdkOnBuild = buildPackages.jdk;
5269 };
5270 })
5271 jre11_minimal
5272 jre17_minimal
5273 jre21_minimal
5274 jre25_minimal
5275 jre_minimal
5276 ;
5277
5278 openjdk = jdk;
5279 openjdk_headless = jdk_headless;
5280
5281 graalvmPackages = recurseIntoAttrs (callPackage ../development/compilers/graalvm { });
5282 buildGraalvmNativeImage = callPackage ../build-support/build-graalvm-native-image { };
5283
5284 openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt { };
5285
5286 inherit (callPackage ../development/compilers/julia { })
5287 julia_19-bin
5288 julia_110-bin
5289 julia_111-bin
5290 julia_19
5291 julia_110
5292 julia_111
5293 ;
5294
5295 julia-lts = julia_110-bin;
5296 julia-stable = julia_111;
5297 julia = julia-stable;
5298
5299 julia-lts-bin = julia_110-bin;
5300 julia-stable-bin = julia_111-bin;
5301 julia-bin = julia-stable-bin;
5302
5303 kotlin = callPackage ../development/compilers/kotlin { };
5304 kotlin-native = callPackage ../development/compilers/kotlin/native.nix { };
5305
5306 lazarus = callPackage ../development/compilers/fpc/lazarus.nix {
5307 fpc = fpc;
5308 };
5309
5310 lazarus-qt5 = libsForQt5.callPackage ../development/compilers/fpc/lazarus.nix {
5311 fpc = fpc;
5312 withQt = true;
5313 };
5314
5315 lazarus-qt6 = qt6Packages.callPackage ../development/compilers/fpc/lazarus.nix {
5316 fpc = fpc;
5317 withQt = true;
5318 };
5319
5320 lima-additional-guestagents = callPackage ../by-name/li/lima/additional-guestagents.nix { };
5321
5322 lld = llvmPackages.lld;
5323
5324 lldb = llvmPackages.lldb;
5325
5326 llvm = llvmPackages.llvm;
5327 flang = llvmPackages_20.flang;
5328
5329 libclc = llvmPackages.libclc;
5330 libllvm = llvmPackages.libllvm;
5331 llvm-manpages = llvmPackages.llvm-manpages;
5332
5333 llvmPackages = llvmPackages_19;
5334
5335 inherit
5336 (rec {
5337 llvmPackagesSet = recurseIntoAttrs (callPackages ../development/compilers/llvm { });
5338
5339 llvmPackages_18 = llvmPackagesSet."18";
5340 clang_18 = llvmPackages_18.clang;
5341 lld_18 = llvmPackages_18.lld;
5342 lldb_18 = llvmPackages_18.lldb;
5343 llvm_18 = llvmPackages_18.llvm;
5344
5345 llvmPackages_19 = llvmPackagesSet."19";
5346 clang_19 = llvmPackages_19.clang;
5347 lld_19 = llvmPackages_19.lld;
5348 lldb_19 = llvmPackages_19.lldb;
5349 llvm_19 = llvmPackages_19.llvm;
5350 bolt_19 = llvmPackages_19.bolt;
5351
5352 llvmPackages_20 = llvmPackagesSet."20";
5353 clang_20 = llvmPackages_20.clang;
5354 lld_20 = llvmPackages_20.lld;
5355 lldb_20 = llvmPackages_20.lldb;
5356 llvm_20 = llvmPackages_20.llvm;
5357 bolt_20 = llvmPackages_20.bolt;
5358 flang_20 = llvmPackages_20.flang;
5359
5360 llvmPackages_21 = llvmPackagesSet."21";
5361 clang_21 = llvmPackages_21.clang;
5362 lld_21 = llvmPackages_21.lld;
5363 lldb_21 = llvmPackages_21.lldb;
5364 llvm_21 = llvmPackages_21.llvm;
5365 bolt_21 = llvmPackages_21.bolt;
5366 flang_21 = llvmPackages_21.flang;
5367
5368 mkLLVMPackages = llvmPackagesSet.mkPackage;
5369 })
5370 llvmPackages_18
5371 clang_18
5372 lld_18
5373 lldb_18
5374 llvm_18
5375 llvmPackages_19
5376 clang_19
5377 lld_19
5378 lldb_19
5379 llvm_19
5380 bolt_19
5381 llvmPackages_20
5382 clang_20
5383 lld_20
5384 lldb_20
5385 llvm_20
5386 bolt_20
5387 flang_20
5388 llvmPackages_21
5389 clang_21
5390 lld_21
5391 lldb_21
5392 llvm_21
5393 bolt_21
5394 flang_21
5395 mkLLVMPackages
5396 ;
5397
5398 mercury = callPackage ../development/compilers/mercury {
5399 jdk_headless = openjdk8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
5400 };
5401
5402 mitscheme = callPackage ../development/compilers/mit-scheme { };
5403
5404 mitschemeX11 = mitscheme.override {
5405 enableX11 = true;
5406 };
5407
5408 inherit (callPackage ../development/compilers/mlton { })
5409 mlton20130715
5410 mlton20180207Binary
5411 mlton20180207
5412 mlton20210117
5413 mltonHEAD
5414 ;
5415
5416 mlton = mlton20210117;
5417
5418 mono = mono6;
5419
5420 mono6 = callPackage ../development/compilers/mono/6.nix { };
5421
5422 mozart2 = callPackage ../development/compilers/mozart {
5423 emacs = emacs-nox;
5424 jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
5425 };
5426
5427 mozart2-binary = callPackage ../development/compilers/mozart/binary.nix { };
5428
5429 nim = nim2;
5430 nim1 = nim-1_0;
5431 nim2 = nim-2_2;
5432 nim-unwrapped = nim-unwrapped-2_2;
5433 nim-unwrapped-1 = nim-unwrapped-1_0;
5434 nim-unwrapped-2 = nim-unwrapped-2_2;
5435
5436 buildNimPackage = callPackage ../build-support/build-nim-package.nix { };
5437 buildNimSbom = callPackage ../build-support/build-nim-sbom.nix { };
5438 nimOverrides = callPackage ./nim-overrides.nix { };
5439
5440 nextpnrWithGui = libsForQt5.callPackage ../by-name/ne/nextpnr/package.nix {
5441 enableGui = true;
5442 };
5443
5444 ocaml-ng = callPackage ./ocaml-packages.nix { };
5445 ocaml = ocamlPackages.ocaml;
5446
5447 ocamlPackages = recurseIntoAttrs ocaml-ng.ocamlPackages;
5448
5449 ocaml-crunch = ocamlPackages.crunch.bin;
5450
5451 inherit (ocaml-ng.ocamlPackages_4_14)
5452 ocamlformat_0_19_0
5453 ocamlformat_0_20_0
5454 ocamlformat_0_20_1
5455 ocamlformat_0_21_0
5456 ocamlformat_0_22_4
5457 ocamlformat_0_23_0
5458 ocamlformat_0_24_1
5459 ocamlformat_0_25_1
5460 ocamlformat_0_26_0
5461 ocamlformat_0_26_1
5462 ;
5463
5464 inherit (ocaml-ng.ocamlPackages_5_2)
5465 ocamlformat_0_26_2
5466 ;
5467
5468 inherit (ocamlPackages)
5469 ocamlformat # latest version
5470 ocamlformat_0_27_0
5471 ;
5472
5473 inherit (ocamlPackages) odig;
5474
5475 ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml.nix { };
5476
5477 opam = callPackage ../development/tools/ocaml/opam { };
5478
5479 opam-installer = callPackage ../development/tools/ocaml/opam/installer.nix { };
5480
5481 wrapWatcom = callPackage ../development/compilers/open-watcom/wrapper.nix { };
5482 open-watcom-v2-unwrapped = callPackage ../development/compilers/open-watcom/v2.nix { };
5483 open-watcom-v2 = wrapWatcom open-watcom-v2-unwrapped { };
5484 open-watcom-bin-unwrapped = callPackage ../development/compilers/open-watcom/bin.nix { };
5485 open-watcom-bin = wrapWatcom open-watcom-bin-unwrapped { };
5486
5487 rml = callPackage ../development/compilers/rml {
5488 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
5489 };
5490
5491 wrapRustcWith = { rustc-unwrapped, ... }@args: callPackage ../build-support/rust/rustc-wrapper args;
5492 wrapRustc = rustc-unwrapped: wrapRustcWith { inherit rustc-unwrapped; };
5493
5494 rust_1_89 = callPackage ../development/compilers/rust/1_89.nix {
5495 llvm_20 = llvmPackages_20.libllvm;
5496 };
5497 rust = rust_1_89;
5498
5499 mrustc = callPackage ../development/compilers/mrustc { };
5500 mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { };
5501 mrustc-bootstrap = callPackage ../development/compilers/mrustc/bootstrap.nix { };
5502
5503 rustPackages_1_89 = rust_1_89.packages.stable;
5504 rustPackages = rustPackages_1_89;
5505
5506 inherit (rustPackages)
5507 cargo
5508 cargo-auditable
5509 cargo-auditable-cargo-wrapper
5510 clippy
5511 rustc
5512 rustc-unwrapped
5513 rustPlatform
5514 ;
5515
5516 makeRustPlatform = callPackage ../development/compilers/rust/make-rust-platform.nix { };
5517
5518 buildRustCrate =
5519 let
5520 # Returns a true if the builder's rustc was built with support for the target.
5521 targetAlreadyIncluded = lib.elem stdenv.hostPlatform.rust.rustcTarget (
5522 lib.splitString "," (
5523 lib.removePrefix "--target=" (
5524 lib.elemAt (lib.filter (
5525 f: lib.hasPrefix "--target=" f
5526 ) pkgsBuildBuild.rustc.unwrapped.configureFlags) 0
5527 )
5528 )
5529 );
5530 in
5531 callPackage ../build-support/rust/build-rust-crate (
5532 { }
5533 // lib.optionalAttrs (stdenv.hostPlatform.libc == null) {
5534 stdenv = stdenvNoCC; # Some build targets without libc will fail to evaluate with a normal stdenv.
5535 }
5536 // lib.optionalAttrs targetAlreadyIncluded { inherit (pkgsBuildBuild) rustc cargo; } # Optimization.
5537 );
5538 buildRustCrateHelpers = callPackage ../build-support/rust/build-rust-crate/helpers.nix { };
5539
5540 defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { };
5541
5542 inherit (callPackages ../development/tools/rust/cargo-pgrx { })
5543 cargo-pgrx_0_12_0_alpha_1
5544 cargo-pgrx_0_12_6
5545 cargo-pgrx_0_14_1
5546 cargo-pgrx_0_16_0
5547 cargo-pgrx
5548 ;
5549
5550 buildPgrxExtension = callPackage ../development/tools/rust/cargo-pgrx/buildPgrxExtension.nix { };
5551 opensmalltalk-vm = callPackage ../development/compilers/opensmalltalk-vm { };
5552
5553 rustfmt = rustPackages.rustfmt;
5554 rust-bindgen-unwrapped = callPackage ../development/tools/rust/bindgen/unwrapped.nix { };
5555 rust-bindgen = callPackage ../development/tools/rust/bindgen { };
5556 rustup = callPackage ../development/tools/rust/rustup { };
5557 rustup-toolchain-install-master =
5558 callPackage ../development/tools/rust/rustup-toolchain-install-master
5559 {
5560 };
5561 scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; };
5562 scala_2_13 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.13"; };
5563 scala_3 = callPackage ../development/compilers/scala { };
5564
5565 scala = scala_3;
5566 scala-runners = callPackage ../development/compilers/scala-runners {
5567 coursier = coursier.override { jre = jdk8; };
5568 };
5569
5570 # smlnjBootstrap should be redundant, now that smlnj works on Darwin natively
5571 smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { };
5572 smlnj = callPackage ../development/compilers/smlnj { };
5573
5574 squeak = callPackage ../development/compilers/squeak {
5575 stdenv = clangStdenv;
5576 };
5577
5578 squirrel-sql = callPackage ../development/tools/database/squirrel-sql {
5579 drivers = [
5580 jtds_jdbc
5581 mssql_jdbc
5582 mysql_jdbc
5583 postgresql_jdbc
5584 ];
5585 };
5586
5587 swiftPackages = recurseIntoAttrs (callPackage ../development/compilers/swift { });
5588 inherit (swiftPackages)
5589 swift
5590 swiftpm
5591 sourcekit-lsp
5592 swift-format
5593 swiftpm2nix
5594 ;
5595
5596 swi-prolog-gui = swi-prolog.override { withGui = true; };
5597
5598 # many packages still fail with latest version
5599 tbb = tbb_2020;
5600
5601 teyjus = callPackage ../development/compilers/teyjus {
5602 inherit (ocaml-ng.ocamlPackages_4_14) buildDunePackage;
5603 };
5604
5605 urweb = callPackage ../development/compilers/urweb {
5606 icu = icu67;
5607 };
5608
5609 vcard = python3Packages.toPythonApplication python3Packages.vcard;
5610
5611 inherit (callPackage ../development/compilers/vala { })
5612 vala_0_56
5613 vala
5614 ;
5615
5616 vyper = with python3Packages; toPythonApplication vyper;
5617
5618 wrapCCWith =
5619 {
5620 cc,
5621 # This should be the only bintools runtime dep with this sort of logic. The
5622 # Others should instead delegate to the next stage's choice with
5623 # `targetPackages.stdenv.cc.bintools`. This one is different just to
5624 # provide the default choice, avoiding infinite recursion.
5625 # See the bintools attribute for the logic and reasoning. We need to provide
5626 # a default here, since eval will hit this function when bootstrapping
5627 # stdenv where the bintools attribute doesn't exist, but will never actually
5628 # be evaluated -- callPackage ends up being too eager.
5629 bintools ? pkgs.bintools,
5630 libc ? bintools.libc,
5631 # libc++ from the default LLVM version is bound at the top level, but we
5632 # want the C++ library to be explicitly chosen by the caller, and null by
5633 # default.
5634 libcxx ? null,
5635 extraPackages ? lib.optional (
5636 cc.isGNU or false && stdenv.targetPlatform.isMinGW
5637 ) targetPackages.threads.package,
5638 nixSupport ? { },
5639 ...
5640 }@extraArgs:
5641 callPackage ../build-support/cc-wrapper (
5642 let
5643 self = {
5644 nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
5645 nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
5646 nativePrefix = stdenv.cc.nativePrefix or "";
5647 noLibc = !self.nativeLibc && (self.libc == null);
5648
5649 isGNU = cc.isGNU or false;
5650 isClang = cc.isClang or false;
5651 isArocc = cc.isArocc or false;
5652 isZig = cc.isZig or false;
5653
5654 inherit
5655 cc
5656 bintools
5657 libc
5658 libcxx
5659 extraPackages
5660 nixSupport
5661 ;
5662 }
5663 // extraArgs;
5664 in
5665 self
5666 );
5667
5668 wrapCC =
5669 cc:
5670 wrapCCWith {
5671 inherit cc;
5672 };
5673
5674 wrapBintoolsWith =
5675 {
5676 bintools,
5677 libc ? targetPackages.libc or pkgs.libc,
5678 ...
5679 }@extraArgs:
5680 callPackage ../build-support/bintools-wrapper (
5681 let
5682 self = {
5683 nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
5684 nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
5685 nativePrefix = stdenv.cc.nativePrefix or "";
5686
5687 noLibc = (self.libc == null);
5688
5689 inherit bintools libc;
5690 }
5691 // extraArgs;
5692 in
5693 self
5694 );
5695
5696 # prolog
5697 yosys-bluespec = callPackage ../development/compilers/yosys/plugins/bluespec.nix { };
5698 yosys-ghdl = callPackage ../development/compilers/yosys/plugins/ghdl.nix { };
5699 yosys-synlig = callPackage ../development/compilers/yosys/plugins/synlig.nix { };
5700 yosys-symbiflow = callPackage ../development/compilers/yosys/plugins/symbiflow.nix { };
5701
5702 inherit
5703 ({
5704 zulu8 = callPackage ../development/compilers/zulu/8.nix { };
5705 zulu11 = callPackage ../development/compilers/zulu/11.nix { };
5706 zulu17 = callPackage ../development/compilers/zulu/17.nix { };
5707 zulu21 = callPackage ../development/compilers/zulu/21.nix { };
5708 zulu23 = callPackage ../development/compilers/zulu/23.nix { };
5709 zulu24 = callPackage ../development/compilers/zulu/24.nix { };
5710 zulu25 = callPackage ../development/compilers/zulu/25.nix { };
5711 })
5712 zulu8
5713 zulu11
5714 zulu17
5715 zulu21
5716 zulu23
5717 zulu24
5718 zulu25
5719 ;
5720 zulu = zulu21;
5721
5722 ### DEVELOPMENT / INTERPRETERS
5723
5724 acl2 = callPackage ../development/interpreters/acl2 { };
5725 acl2-minimal = callPackage ../development/interpreters/acl2 { certifyBooks = false; };
5726
5727 babashka-unwrapped = callPackage ../development/interpreters/babashka { };
5728 babashka = callPackage ../development/interpreters/babashka/wrapped.nix { };
5729
5730 uiua-unstable = callPackage ../by-name/ui/uiua/package.nix { uiua_versionType = "unstable"; };
5731
5732 # BQN interpreters and compilers
5733
5734 mbqn = bqn;
5735
5736 cbqn = cbqn-bootstrap.phase2;
5737 cbqn-replxx = cbqn-bootstrap.phase2-replxx;
5738 cbqn-standalone = cbqn-bootstrap.phase0;
5739 cbqn-standalone-replxx = cbqn-bootstrap.phase0-replxx;
5740
5741 # Below, the classic self-bootstrapping process
5742 cbqn-bootstrap = lib.dontRecurseIntoAttrs {
5743 # Use clang to compile CBQN if we aren't already.
5744 # CBQN's upstream primarily targets and tests clang which means using gcc
5745 # will result in slower binaries and on some platforms failing/broken builds.
5746 # See https://github.com/dzaima/CBQN/issues/12.
5747 #
5748 # Known issues:
5749 #
5750 # * CBQN using gcc is broken at runtime on i686 due to
5751 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58416,
5752 # * CBQN uses some CPP macros gcc doesn't like for aarch64.
5753 stdenv = if !stdenv.cc.isClang then clangStdenv else stdenv;
5754
5755 mbqn-source = buildPackages.mbqn.src;
5756
5757 phase0 = callPackage ../development/interpreters/bqn/cbqn {
5758 inherit (cbqn-bootstrap) mbqn-source stdenv;
5759 generateBytecode = false;
5760 # Not really used, but since null can be dangerous...
5761 bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
5762 };
5763
5764 phase0-replxx = callPackage ../development/interpreters/bqn/cbqn {
5765 inherit (cbqn-bootstrap) mbqn-source stdenv;
5766 enableReplxx = true;
5767 generateBytecode = false;
5768 # Not really used, but since null can be dangerous...
5769 bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
5770 };
5771
5772 phase1 = callPackage ../development/interpreters/bqn/cbqn {
5773 inherit (cbqn-bootstrap) mbqn-source stdenv;
5774 generateBytecode = true;
5775 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
5776 };
5777
5778 phase2 = callPackage ../development/interpreters/bqn/cbqn {
5779 inherit (cbqn-bootstrap) mbqn-source stdenv;
5780 generateBytecode = true;
5781 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
5782 };
5783
5784 phase2-replxx = callPackage ../development/interpreters/bqn/cbqn {
5785 inherit (cbqn-bootstrap) mbqn-source stdenv;
5786 generateBytecode = true;
5787 enableReplxx = true;
5788 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
5789 };
5790 };
5791
5792 dbqn = callPackage ../by-name/db/dbqn/package.nix {
5793 buildNativeImage = false;
5794 jdk = jre;
5795 stdenv = stdenvNoCC;
5796 };
5797
5798 dbqn-native = dbqn.override {
5799 buildNativeImage = true;
5800 jdk = graalvmPackages.graalvm-ce;
5801 };
5802
5803 clojupyter = callPackage ../applications/editors/jupyter-kernels/clojupyter {
5804 jre = jre8;
5805 };
5806
5807 inherit (callPackage ../applications/editors/jupyter-kernels/xeus-cling { })
5808 cpp11-kernel
5809 cpp14-kernel
5810 cpp17-kernel
5811 cpp2a-kernel
5812 xeus-cling
5813 ;
5814
5815 clojure = callPackage ../development/interpreters/clojure {
5816 # set this to an LTS version of java
5817 # Be careful if you remove this, out-of-tree consumers expect to
5818 # be able to override `jdk`.
5819 jdk = jdk21;
5820 };
5821
5822 clooj = callPackage ../development/interpreters/clojure/clooj.nix { };
5823
5824 dhall = haskell.lib.compose.justStaticExecutables haskellPackages.dhall;
5825
5826 dhall-bash = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-bash;
5827
5828 dhall-docs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-docs;
5829
5830 dhall-lsp-server = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-lsp-server;
5831
5832 dhall-json = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-json;
5833
5834 dhall-nix = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nix;
5835
5836 dhall-nixpkgs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nixpkgs;
5837
5838 dhall-yaml = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-yaml;
5839
5840 dhallPackages = recurseIntoAttrs (callPackage ./dhall-packages.nix { });
5841
5842 beam = callPackage ./beam-packages.nix { };
5843 beam_minimal = callPackage ./beam-packages.nix {
5844 beam = beam_minimal;
5845 systemdSupport = false;
5846 wxSupport = false;
5847 };
5848
5849 inherit (beam.interpreters)
5850 erlang
5851 erlang_28
5852 erlang_27
5853 erlang_26
5854 elixir
5855 elixir_1_19
5856 elixir_1_18
5857 elixir_1_17
5858 elixir-ls
5859 ;
5860
5861 inherit (beam.packages.erlang_26.beamPackages)
5862 elixir_1_16
5863 elixir_1_15
5864 elixir_1_14
5865 ;
5866
5867 inherit (beam.packages.erlang)
5868 erlang-ls
5869 ex_doc
5870 erlfmt
5871 elvis-erlang
5872 rebar
5873 rebar3
5874 rebar3WithPlugins
5875 fetchHex
5876 lfe
5877 lfe_2_1
5878 ;
5879
5880 beamPackages = dontRecurseIntoAttrs beam27Packages;
5881 beamMinimalPackages = dontRecurseIntoAttrs beamMinimal27Packages;
5882
5883 beam26Packages = recurseIntoAttrs beam.packages.erlang_26.beamPackages;
5884 beam27Packages = recurseIntoAttrs beam.packages.erlang_27.beamPackages;
5885 beam28Packages = recurseIntoAttrs beam.packages.erlang_28.beamPackages;
5886
5887 beamMinimal26Packages = recurseIntoAttrs beam_minimal.packages.erlang_26.beamPackages;
5888 beamMinimal27Packages = recurseIntoAttrs beam_minimal.packages.erlang_27.beamPackages;
5889 beamMinimal28Packages = recurseIntoAttrs beam_minimal.packages.erlang_28.beamPackages;
5890
5891 gnudatalanguage = callPackage ../development/interpreters/gnudatalanguage {
5892 inherit (llvmPackages) openmp;
5893 # MPICH currently build on Darwin
5894 mpi = mpich;
5895 };
5896
5897 inherit (callPackages ../applications/networking/cluster/hadoop { })
5898 hadoop_3_4
5899 hadoop_3_3
5900 hadoop2
5901 ;
5902 hadoop3 = hadoop_3_4;
5903 hadoop = hadoop3;
5904
5905 jacinda = haskell.lib.compose.justStaticExecutables haskellPackages.jacinda;
5906
5907 janet = callPackage ../development/interpreters/janet { };
5908
5909 jpm = callPackage ../development/interpreters/janet/jpm.nix { };
5910
5911 lambda-lisp-blc = lambda-lisp;
5912
5913 love_0_10 = callPackage ../development/interpreters/love/0.10.nix { };
5914 love_11 = callPackage ../development/interpreters/love/11.nix { };
5915 love = love_11;
5916
5917 ### LUA interpreters
5918 emiluaPlugins = recurseIntoAttrs (
5919 callPackage ./emilua-plugins.nix { } (callPackage ../development/interpreters/emilua { })
5920 );
5921
5922 inherit (emiluaPlugins) emilua;
5923
5924 luaInterpreters = callPackage ./../development/interpreters/lua-5 { };
5925 inherit (luaInterpreters)
5926 lua5_1
5927 lua5_2
5928 lua5_2_compat
5929 lua5_3
5930 lua5_3_compat
5931 lua5_4
5932 lua5_4_compat
5933 luajit_2_1
5934 luajit_2_0
5935 luajit_openresty
5936 ;
5937
5938 lua5 = lua5_2_compat;
5939 lua = lua5;
5940
5941 lua51Packages = recurseIntoAttrs lua5_1.pkgs;
5942 lua52Packages = recurseIntoAttrs lua5_2.pkgs;
5943 lua53Packages = recurseIntoAttrs lua5_3.pkgs;
5944 lua54Packages = recurseIntoAttrs lua5_4.pkgs;
5945 luajitPackages = recurseIntoAttrs luajit.pkgs;
5946
5947 luaPackages = lua52Packages;
5948
5949 luajit = luajit_2_1;
5950
5951 luarocks = luaPackages.luarocks;
5952 luarocks-nix = luaPackages.luarocks-nix;
5953
5954 luarocks-packages-updater = callPackage ../by-name/lu/luarocks-packages-updater/package.nix {
5955 pluginupdate = ../../maintainers/scripts/pluginupdate-py;
5956 };
5957
5958 toluapp = callPackage ../development/tools/toluapp {
5959 lua = lua5_1; # doesn't work with any other :(
5960 };
5961
5962 ### END OF LUA
5963
5964 ### CuboCore
5965 CuboCore = recurseIntoAttrs (
5966 import ./cubocore-packages.nix {
5967 inherit
5968 newScope
5969 lxqt
5970 lib
5971 ;
5972 }
5973 );
5974
5975 ### End of CuboCore
5976
5977 obb = callPackage ../development/interpreters/clojure/obb.nix { };
5978
5979 octave = callPackage ../development/interpreters/octave { };
5980
5981 octaveFull = octave.override {
5982 enableQt = true;
5983 };
5984
5985 octave-kernel = callPackage ../applications/editors/jupyter-kernels/octave { };
5986
5987 octavePackages = recurseIntoAttrs octave.pkgs;
5988
5989 # PHP interpreters, packages and extensions.
5990 #
5991 # Set default PHP interpreter, extensions and packages
5992 php = php84;
5993 phpExtensions = php.extensions;
5994 phpPackages = php.packages;
5995
5996 # Import PHP84 interpreter, extensions and packages
5997 php84 = callPackage ../development/interpreters/php/8.4.nix {
5998 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
5999 pcre2 = pcre2.override {
6000 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6001 };
6002 };
6003 php84Extensions = recurseIntoAttrs php84.extensions;
6004 php84Packages = recurseIntoAttrs php84.packages;
6005
6006 # Import PHP83 interpreter, extensions and packages
6007 php83 = callPackage ../development/interpreters/php/8.3.nix {
6008 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6009 pcre2 = pcre2.override {
6010 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6011 };
6012 };
6013 php83Extensions = recurseIntoAttrs php83.extensions;
6014 php83Packages = recurseIntoAttrs php83.packages;
6015
6016 # Import PHP82 interpreter, extensions and packages
6017 php82 = callPackage ../development/interpreters/php/8.2.nix {
6018 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6019 pcre2 = pcre2.override {
6020 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6021 };
6022 };
6023 php82Extensions = recurseIntoAttrs php82.extensions;
6024 php82Packages = recurseIntoAttrs php82.packages;
6025
6026 # Import PHP81 interpreter, extensions and packages
6027 php81 = callPackage ../development/interpreters/php/8.1.nix {
6028 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6029 pcre2 = pcre2.override {
6030 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6031 };
6032 };
6033 php81Extensions = recurseIntoAttrs php81.extensions;
6034 php81Packages = recurseIntoAttrs php81.packages;
6035
6036 polyml = callPackage ../development/compilers/polyml { };
6037 polyml56 = callPackage ../development/compilers/polyml/5.6.nix { };
6038 polyml57 = callPackage ../development/compilers/polyml/5.7.nix { };
6039
6040 # Python interpreters. All standard library modules are included except for tkinter, which is
6041 # available as `pythonPackages.tkinter` and can be used as any other Python package.
6042 # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md
6043 python2 = python27;
6044 python3 = python313;
6045
6046 # pythonPackages further below, but assigned here because they need to be in sync
6047 python2Packages = dontRecurseIntoAttrs python27Packages;
6048 python3Packages = dontRecurseIntoAttrs python313Packages;
6049
6050 pypy = pypy2;
6051 pypy2 = pypy27;
6052 pypy3 = pypy311;
6053
6054 # Python interpreter that is build with all modules, including tkinter.
6055 # These are for compatibility and should not be used inside Nixpkgs.
6056 python2Full = python2.override {
6057 self = python2Full;
6058 pythonAttr = "python2Full";
6059 x11Support = true;
6060 };
6061 python27Full = python27.override {
6062 self = python27Full;
6063 pythonAttr = "python27Full";
6064 x11Support = true;
6065 };
6066
6067 # https://py-free-threading.github.io
6068 python313FreeThreading = python313.override {
6069 self = python313FreeThreading;
6070 pythonAttr = "python313FreeThreading";
6071 enableGIL = false;
6072 };
6073 python314FreeThreading = python314.override {
6074 self = python314FreeThreading;
6075 pythonAttr = "python314FreeThreading";
6076 enableGIL = false;
6077 };
6078
6079 pythonInterpreters = callPackage ./../development/interpreters/python { };
6080 inherit (pythonInterpreters)
6081 python27
6082 python310
6083 python311
6084 python312
6085 python313
6086 python314
6087 python3Minimal
6088 pypy27
6089 pypy310
6090 pypy311
6091 ;
6092
6093 # List of extensions with overrides to apply to all Python package sets.
6094 pythonPackagesExtensions = [ ];
6095
6096 # Python package sets.
6097 python27Packages = python27.pkgs;
6098 python310Packages = python310.pkgs;
6099 python311Packages = python311.pkgs;
6100 python312Packages = recurseIntoAttrs python312.pkgs;
6101 python313Packages = recurseIntoAttrs python313.pkgs;
6102 python314Packages = python314.pkgs;
6103 pypyPackages = pypy.pkgs;
6104 pypy2Packages = pypy2.pkgs;
6105 pypy27Packages = pypy27.pkgs;
6106 pypy3Packages = pypy3.pkgs;
6107 pypy310Packages = pypy310.pkgs;
6108 pypy311Packages = pypy311.pkgs;
6109
6110 pythonManylinuxPackages = callPackage ./../development/interpreters/python/manylinux { };
6111
6112 pythonCondaPackages = callPackage ./../development/interpreters/python/conda { };
6113
6114 # Should eventually be moved inside Python interpreters.
6115 python-setup-hook = buildPackages.callPackage ../development/interpreters/python/setup-hook.nix { };
6116
6117 pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs { });
6118
6119 svg2tikz = with python3.pkgs; toPythonApplication svg2tikz;
6120
6121 poetryPlugins = recurseIntoAttrs poetry.plugins;
6122
6123 pipx = with python3.pkgs; toPythonApplication pipx;
6124
6125 pipewire = callPackage ../development/libraries/pipewire {
6126 # ffmpeg depends on SDL2 which depends on pipewire by default.
6127 # Break the cycle by depending on ffmpeg-headless.
6128 # Pipewire only uses libavcodec (via an SPA plugin), which isn't
6129 # affected by the *-headless changes.
6130 ffmpeg = ffmpeg-headless;
6131 };
6132
6133 wireplumber = callPackage ../development/libraries/pipewire/wireplumber.nix { };
6134
6135 racket-minimal = callPackage ../by-name/ra/racket/minimal.nix {
6136 stdenv = stdenvAdapters.makeStaticLibraries stdenv;
6137 };
6138
6139 rakudo = callPackage ../development/interpreters/rakudo { };
6140 moarvm = callPackage ../development/interpreters/rakudo/moarvm.nix { };
6141 nqp = callPackage ../development/interpreters/rakudo/nqp.nix { };
6142 zef = callPackage ../development/interpreters/rakudo/zef.nix { };
6143
6144 inherit (ocamlPackages) reason rtop;
6145
6146 buildRubyGem = callPackage ../development/ruby-modules/gem { };
6147 defaultGemConfig = callPackage ../development/ruby-modules/gem-config {
6148 inherit (darwin) DarwinTools autoSignDarwinBinariesHook;
6149 };
6150 bundlerEnv = callPackage ../development/ruby-modules/bundler-env { };
6151 bundlerApp = callPackage ../development/ruby-modules/bundler-app { };
6152 bundlerUpdateScript = callPackage ../development/ruby-modules/bundler-update-script { };
6153
6154 bundler-audit = callPackage ../tools/security/bundler-audit { };
6155
6156 solargraph = rubyPackages.solargraph;
6157
6158 inherit
6159 (callPackage ../development/interpreters/ruby {
6160 inherit (darwin) libunwind;
6161 })
6162 mkRubyVersion
6163 mkRuby
6164 ruby_3_1
6165 ruby_3_2
6166 ruby_3_3
6167 ruby_3_4
6168 ruby_3_5
6169 ;
6170
6171 ruby = ruby_3_3;
6172 rubyPackages = rubyPackages_3_3;
6173
6174 rubyPackages_3_1 = recurseIntoAttrs ruby_3_1.gems;
6175 rubyPackages_3_2 = recurseIntoAttrs ruby_3_2.gems;
6176 rubyPackages_3_3 = recurseIntoAttrs ruby_3_3.gems;
6177 rubyPackages_3_4 = recurseIntoAttrs ruby_3_4.gems;
6178 rubyPackages_3_5 = recurseIntoAttrs ruby_3_5.gems;
6179
6180 samplebrain = libsForQt5.callPackage ../applications/audio/samplebrain { };
6181
6182 inherit (callPackages ../applications/networking/cluster/spark { })
6183 spark_3_5
6184 spark_3_4
6185 ;
6186 spark3 = spark_3_5;
6187 spark = spark3;
6188
6189 inherit
6190 ({
6191 spidermonkey_115 = callPackage ../development/interpreters/spidermonkey/115.nix { };
6192 spidermonkey_128 = callPackage ../development/interpreters/spidermonkey/128.nix { };
6193 spidermonkey_140 = callPackage ../development/interpreters/spidermonkey/140.nix { };
6194 })
6195 spidermonkey_115
6196 spidermonkey_128
6197 spidermonkey_140
6198 ;
6199
6200 supercollider = libsForQt5.callPackage ../development/interpreters/supercollider {
6201 fftw = fftwSinglePrec;
6202 };
6203
6204 supercollider_scel = supercollider.override { useSCEL = true; };
6205
6206 supercolliderPlugins = recurseIntoAttrs {
6207 sc3-plugins = callPackage ../development/interpreters/supercollider/plugins/sc3-plugins.nix {
6208 fftw = fftwSinglePrec;
6209 };
6210 };
6211
6212 supercollider-with-plugins = callPackage ../development/interpreters/supercollider/wrapper.nix {
6213 plugins = [ ];
6214 };
6215
6216 supercollider-with-sc3-plugins = supercollider-with-plugins.override {
6217 plugins = with supercolliderPlugins; [ sc3-plugins ];
6218 };
6219
6220 tcl = tcl-8_6;
6221 tcl-8_5 = callPackage ../development/interpreters/tcl/8.5.nix { };
6222 tcl-8_6 = callPackage ../development/interpreters/tcl/8.6.nix { };
6223 tcl-9_0 = callPackage ../development/interpreters/tcl/9.0.nix { };
6224
6225 # We don't need versioned package sets thanks to the tcl stubs mechanism
6226 tclPackages = recurseIntoAttrs (callPackage ./tcl-packages.nix { });
6227
6228 tclreadline = tclPackages.tclreadline;
6229
6230 wasm = ocamlPackages.wasm;
6231
6232 ### DEVELOPMENT / MISC
6233
6234 inherit (callPackages ../development/misc/h3 { }) h3_3 h3_4;
6235
6236 h3 = h3_3;
6237
6238 sourceFromHead = callPackage ../build-support/source-from-head-fun.nix { };
6239
6240 jruby = callPackage ../development/interpreters/jruby { };
6241
6242 guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { };
6243
6244 # Needed for autogen
6245 guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { };
6246
6247 guile_2_2 = callPackage ../development/interpreters/guile/2.2.nix { };
6248
6249 guile_3_0 = callPackage ../development/interpreters/guile/3.0.nix { };
6250
6251 guile = guile_3_0;
6252
6253 guile-xcb = callPackage ../by-name/gu/guile-xcb/package.nix {
6254 guile = guile_2_2;
6255 };
6256
6257 msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { };
6258
6259 msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { };
6260
6261 mspds = callPackage ../development/misc/msp430/mspds { };
6262 mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { };
6263
6264 mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { };
6265
6266 vc4-newlib = callPackage ../development/misc/vc4/newlib.nix { };
6267
6268 or1k-newlib = callPackage ../development/misc/or1k/newlib.nix { };
6269
6270 vcsh = callPackage ../by-name/vc/vcsh/package.nix {
6271 automake = automake116x;
6272 };
6273
6274 ### DEVELOPMENT / TOOLS
6275
6276 inherit (callPackage ../development/tools/alloy { })
6277 alloy5
6278 alloy6
6279 alloy
6280 ;
6281
6282 anybadge = with python3Packages; toPythonApplication anybadge;
6283
6284 ansible = ansible_2_19;
6285 ansible_2_19 = python3Packages.toPythonApplication python3Packages.ansible-core;
6286 ansible_2_18 = python3Packages.toPythonApplication (
6287 python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
6288 version = "2.18.8";
6289 src = oldAttrs.src.override {
6290 inherit version;
6291 hash = "sha256-sHZiFalqR845kz0n4emWyivrVM8bOQfHQtNckTsfeM0=";
6292 };
6293 })
6294 );
6295 ansible_2_17 = python3Packages.toPythonApplication (
6296 python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
6297 version = "2.17.8";
6298 src = oldAttrs.src.override {
6299 inherit version;
6300 hash = "sha256-Ob6KeYaix9NgabDZciC8L2eDxl/qfG1+Di0A0ayK+Hc=";
6301 };
6302 })
6303 );
6304 ansible_2_16 = python3Packages.toPythonApplication (
6305 python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
6306 version = "2.16.14";
6307 src = oldAttrs.src.override {
6308 inherit version;
6309 hash = "sha256-gCef/9mGhrrfqjLh7HhdmKbfGy/B5Al97AWXZA10ZBU=";
6310 };
6311 })
6312 );
6313
6314 ansible-builder = with python3Packages; toPythonApplication ansible-builder;
6315
6316 yakut = python3Packages.callPackage ../development/tools/misc/yakut { };
6317
6318 ### DEVELOPMENT / TOOLS / LANGUAGE-SERVERS
6319
6320 fortls = python3.pkgs.callPackage ../development/tools/language-servers/fortls { };
6321
6322 fortran-language-server =
6323 python3.pkgs.callPackage ../development/tools/language-servers/fortran-language-server
6324 { };
6325
6326 inherit (callPackages ../development/tools/language-servers/nixd { }) nixf nixt nixd;
6327
6328 antlr2 = callPackage ../development/tools/parsing/antlr/2.7.7.nix { };
6329 antlr3_4 = callPackage ../development/tools/parsing/antlr/3.4.nix { };
6330 antlr3_5 = callPackage ../development/tools/parsing/antlr/3.5.nix { };
6331 antlr3 = antlr3_5;
6332
6333 inherit (callPackages ../development/tools/parsing/antlr/4.nix { })
6334 antlr4_8
6335 antlr4_9
6336 antlr4_10
6337 antlr4_11
6338 antlr4_12
6339 antlr4_13
6340 ;
6341
6342 antlr4 = antlr4_13;
6343
6344 antlr = antlr4;
6345
6346 inherit (callPackages ../servers/apache-kafka { })
6347 apacheKafka_3_7
6348 apacheKafka_3_8
6349 apacheKafka_3_9
6350 apacheKafka_4_0
6351 apacheKafka_4_1
6352 ;
6353
6354 apacheKafka = apacheKafka_4_1;
6355
6356 asn2quickder = python3Packages.callPackage ../development/tools/asn2quickder { };
6357
6358 libastyle = astyle.override { asLibrary = true; };
6359
6360 aws-adfs = with python3Packages; toPythonApplication aws-adfs;
6361
6362 electron-source = callPackage ../development/tools/electron { };
6363
6364 inherit (callPackages ../development/tools/electron/binary { })
6365 electron_35-bin
6366 electron_36-bin
6367 electron_37-bin
6368 electron_38-bin
6369 ;
6370
6371 inherit (callPackages ../development/tools/electron/chromedriver { })
6372 electron-chromedriver_35
6373 electron-chromedriver_36
6374 electron-chromedriver_37
6375 electron-chromedriver_38
6376 ;
6377
6378 electron_35 = electron_35-bin;
6379 electron_36 =
6380 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_36 then
6381 electron-source.electron_36
6382 else
6383 electron_36-bin;
6384 electron_37 =
6385 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_37 then
6386 electron-source.electron_37
6387 else
6388 electron_37-bin;
6389 electron_38 =
6390 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_38 then
6391 electron-source.electron_38
6392 else
6393 electron_38-bin;
6394 electron = electron_37;
6395 electron-bin = electron_37-bin;
6396 electron-chromedriver = electron-chromedriver_37;
6397
6398 autoconf = callPackage ../development/tools/misc/autoconf { };
6399 autoconf269 = callPackage ../development/tools/misc/autoconf/2.69.nix { };
6400 autoconf271 = callPackage ../development/tools/misc/autoconf/2.71.nix { };
6401
6402 automake = automake118x;
6403
6404 automake116x = callPackage ../development/tools/misc/automake/automake-1.16.x.nix { };
6405
6406 automake118x = callPackage ../development/tools/misc/automake/automake-1.18.x.nix { };
6407
6408 bandit = with python3Packages; toPythonApplication bandit;
6409
6410 bazel = bazel_7;
6411
6412 bazel_7 = callPackage ../by-name/ba/bazel_7/package.nix {
6413 inherit (darwin) sigtool;
6414 buildJdk = jdk21_headless;
6415 runJdk = jdk21_headless;
6416 bazel_self = bazel_7;
6417 };
6418
6419 buildifier = bazel-buildtools;
6420 buildozer = bazel-buildtools;
6421 unused_deps = bazel-buildtools;
6422
6423 buildBazelPackage = callPackage ../build-support/build-bazel-package { };
6424
6425 binutils-unwrapped = callPackage ../development/tools/misc/binutils {
6426 # FHS sys dirs presumably only have stuff for the build platform
6427 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6428 };
6429 binutils-unwrapped-all-targets = callPackage ../development/tools/misc/binutils {
6430 # FHS sys dirs presumably only have stuff for the build platform
6431 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6432 withAllTargets = true;
6433 };
6434 binutils = wrapBintoolsWith {
6435 bintools = binutils-unwrapped;
6436 };
6437 binutils_nogold = lowPrio (wrapBintoolsWith {
6438 bintools = binutils-unwrapped.override {
6439 enableGold = false;
6440 };
6441 });
6442 binutilsNoLibc = wrapBintoolsWith {
6443 bintools = binutils-unwrapped;
6444 libc = targetPackages.preLibcHeaders or preLibcHeaders;
6445 };
6446
6447 libbfd = callPackage ../development/tools/misc/binutils/libbfd.nix { };
6448
6449 libopcodes = callPackage ../development/tools/misc/binutils/libopcodes.nix { };
6450
6451 # Held back 2.38 release. Remove once all dependencies are ported to 2.39.
6452 binutils-unwrapped_2_38 = callPackage ../development/tools/misc/binutils/2.38 {
6453 autoreconfHook = autoreconfHook269;
6454 # FHS sys dirs presumably only have stuff for the build platform
6455 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6456 };
6457
6458 libbfd_2_38 = callPackage ../development/tools/misc/binutils/2.38/libbfd.nix {
6459 autoreconfHook = buildPackages.autoreconfHook269;
6460 };
6461
6462 libopcodes_2_38 = callPackage ../development/tools/misc/binutils/2.38/libopcodes.nix {
6463 autoreconfHook = buildPackages.autoreconfHook269;
6464 };
6465
6466 # Here we select the default bintools implementations to be used. Note when
6467 # cross compiling these are used not for this stage but the *next* stage.
6468 # That is why we choose using this stage's target platform / next stage's
6469 # host platform.
6470 #
6471 # Because this is the *next* stages choice, it's a bit non-modular to put
6472 # here. In theory, bootstrapping is supposed to not be a chain but at tree,
6473 # where each stage supports many "successor" stages, like multiple possible
6474 # futures. We don't have a better alternative, but with this downside in
6475 # mind, please be judicious when using this attribute. E.g. for building
6476 # things in *this* stage you should use probably `stdenv.cc.bintools` (from a
6477 # default or alternate `stdenv`), at build time, and try not to "force" a
6478 # specific bintools at runtime at all.
6479 #
6480 # In other words, try to only use this in wrappers, and only use those
6481 # wrappers from the next stage.
6482 bintools-unwrapped =
6483 let
6484 inherit (stdenv.targetPlatform) linker;
6485 in
6486 if linker == "lld" then
6487 llvmPackages.bintools-unwrapped
6488 else if linker == "cctools" then
6489 darwin.binutils-unwrapped
6490 else if linker == "bfd" then
6491 binutils-unwrapped
6492 else if linker == "gold" then
6493 binutils-unwrapped.override { enableGoldDefault = true; }
6494 else
6495 null;
6496 bintoolsNoLibc = wrapBintoolsWith {
6497 bintools = bintools-unwrapped;
6498 libc = targetPackages.preLibcHeaders;
6499 };
6500 bintools = wrapBintoolsWith {
6501 bintools = bintools-unwrapped;
6502 };
6503
6504 bintoolsDualAs = wrapBintoolsWith {
6505 bintools = darwin.binutilsDualAs-unwrapped;
6506 wrapGas = true;
6507 };
6508
6509 black = with python3Packages; toPythonApplication black;
6510
6511 black-macchiato = with python3Packages; toPythonApplication black-macchiato;
6512
6513 buck = callPackage ../development/tools/build-managers/buck {
6514 python3 = python311;
6515 };
6516
6517 build2 = callPackage ../development/tools/build-managers/build2 {
6518 # Break cycle by using self-contained toolchain for bootstrapping
6519 build2 = buildPackages.callPackage ../development/tools/build-managers/build2/bootstrap.nix { };
6520 };
6521
6522 # Dependency of build2, must also break cycle for this
6523 libbutl = callPackage ../development/libraries/libbutl {
6524 build2 = build2.bootstrap;
6525 inherit (darwin) DarwinTools;
6526 };
6527
6528 bdep = callPackage ../development/tools/build-managers/build2/bdep.nix { };
6529
6530 bpkg = callPackage ../development/tools/build-managers/build2/bpkg.nix { };
6531
6532 buildkite-test-collector-rust =
6533 callPackage ../development/tools/continuous-integration/buildkite-test-collector-rust
6534 {
6535 };
6536
6537 libbpf = callPackage ../os-specific/linux/libbpf { };
6538 libbpf_0 = callPackage ../os-specific/linux/libbpf/0.x.nix { };
6539
6540 bundlewrap = with python3.pkgs; toPythonApplication bundlewrap;
6541
6542 # Wrapper that works as gcc or g++
6543 # It can be used by setting in nixpkgs config like this, for example:
6544 # replaceStdenv = { pkgs }: pkgs.ccacheStdenv;
6545 # But if you build in chroot, you should have that path in chroot
6546 # If instantiated directly, it will use $HOME/.ccache as the cache directory,
6547 # i.e. /homeless-shelter/.ccache using the Nix daemon.
6548 # You should specify a different directory using an override in
6549 # packageOverrides to set extraConfig.
6550 #
6551 # Example using Nix daemon (i.e. multiuser Nix install or on NixOS):
6552 # packageOverrides = pkgs: {
6553 # ccacheWrapper = pkgs.ccacheWrapper.override {
6554 # extraConfig = ''
6555 # export CCACHE_COMPRESS=1
6556 # export CCACHE_SLOPPINESS=random_seed
6557 # export CCACHE_DIR=/var/cache/ccache
6558 # export CCACHE_UMASK=007
6559 # '';
6560 # };
6561 # You can use a different directory, but whichever directory you choose
6562 # should be owned by user root, group nixbld with permissions 0770.
6563 ccacheWrapper =
6564 makeOverridable
6565 (
6566 { extraConfig, cc }:
6567 cc.override {
6568 cc = ccache.links {
6569 inherit extraConfig;
6570 unwrappedCC = cc.cc;
6571 };
6572 }
6573 )
6574 {
6575 extraConfig = "";
6576 inherit (stdenv) cc;
6577 };
6578
6579 ccacheStdenv = lowPrio (
6580 makeOverridable
6581 (
6582 { stdenv, ... }@extraArgs:
6583 overrideCC stdenv (
6584 buildPackages.ccacheWrapper.override (
6585 {
6586 inherit (stdenv) cc;
6587 }
6588 // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) {
6589 extraConfig = extraArgs.extraConfig;
6590 }
6591 )
6592 )
6593 )
6594 {
6595 inherit stdenv;
6596 }
6597 );
6598
6599 chromedriver = callPackage ../development/tools/selenium/chromedriver { };
6600
6601 chruby = callPackage ../development/tools/misc/chruby { rubies = null; };
6602
6603 cookiecutter = with python3Packages; toPythonApplication cookiecutter;
6604
6605 ctags = callPackage ../development/tools/misc/ctags { };
6606
6607 ctagsWrapped = callPackage ../development/tools/misc/ctags/wrapped.nix { };
6608
6609 # can't use override - it triggers infinite recursion
6610 cmakeMinimal = callPackage ../by-name/cm/cmake/package.nix {
6611 isMinimalBuild = true;
6612 };
6613
6614 cmakeCurses = cmake.override {
6615 uiToolkits = [ "ncurses" ];
6616 };
6617
6618 cmakeWithGui = cmake.override {
6619 uiToolkits = [
6620 "ncurses"
6621 "qt5"
6622 ];
6623 };
6624
6625 cmake-format = python3Packages.callPackage ../development/tools/cmake-format { };
6626
6627 # Does not actually depend on Qt 5
6628 inherit (plasma5Packages) extra-cmake-modules;
6629
6630 coccinelle = callPackage ../development/tools/misc/coccinelle {
6631 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
6632 };
6633
6634 credstash = with python3Packages; toPythonApplication credstash;
6635
6636 creduce = callPackage ../development/tools/misc/creduce {
6637 inherit (llvmPackages_18) llvm libclang;
6638 };
6639
6640 inherit (nodePackages) csslint;
6641
6642 css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify;
6643
6644 cvise = python3Packages.callPackage ../development/tools/misc/cvise {
6645 # cvise keeps up with fresh llvm releases and supports wide version range
6646 inherit (llvmPackages) llvm libclang;
6647 };
6648
6649 daggerfall-unity-unfree = daggerfall-unity.override {
6650 pname = "daggerfall-unity-unfree";
6651 includeUnfree = true;
6652 };
6653
6654 dbt = with python3Packages; toPythonApplication dbt-core;
6655
6656 devbox = callPackage ../development/tools/devbox { buildGoModule = buildGo124Module; };
6657
6658 libcxx = llvmPackages.libcxx;
6659
6660 libgcc = stdenv.cc.cc.libgcc or null;
6661
6662 # This is for e.g. LLVM libraries on linux.
6663 gccForLibs =
6664 if
6665 stdenv.targetPlatform == stdenv.hostPlatform && targetPackages.stdenv.cc.isGNU
6666 # Can only do this is in the native case, otherwise we might get infinite
6667 # recursion if `targetPackages.stdenv.cc.cc` itself uses `gccForLibs`.
6668 then
6669 targetPackages.stdenv.cc.cc
6670 else
6671 gcc.cc;
6672
6673 distcc = callPackage ../development/tools/misc/distcc {
6674 libiberty_static = libiberty.override { staticBuild = true; };
6675 };
6676
6677 # distccWrapper: wrapper that works as gcc or g++
6678 # It can be used by setting in nixpkgs config like this, for example:
6679 # replaceStdenv = { pkgs }: pkgs.distccStdenv;
6680 # But if you build in chroot, a default 'nix' will create
6681 # a new net namespace, and won't have network access.
6682 # You can use an override in packageOverrides to set extraConfig:
6683 # packageOverrides = pkgs: {
6684 # distccWrapper = pkgs.distccWrapper.override {
6685 # extraConfig = ''
6686 # DISTCC_HOSTS="myhost1 myhost2"
6687 # '';
6688 # };
6689 #
6690 distccWrapper = makeOverridable (
6691 {
6692 extraConfig ? "",
6693 }:
6694 wrapCC (distcc.links extraConfig)
6695 ) { };
6696 distccStdenv = lowPrio (overrideCC stdenv buildPackages.distccWrapper);
6697
6698 distccMasquerade =
6699 if stdenv.hostPlatform.isDarwin then
6700 null
6701 else
6702 callPackage ../development/tools/misc/distcc/masq.nix {
6703 gccRaw = gcc.cc;
6704 binutils = binutils;
6705 };
6706
6707 docutils = with python3Packages; toPythonApplication docutils;
6708
6709 doit = with python3Packages; toPythonApplication doit;
6710
6711 dot2tex = with python3.pkgs; toPythonApplication dot2tex;
6712
6713 doxygen = callPackage ../development/tools/documentation/doxygen {
6714 qt5 = null;
6715 };
6716
6717 doxygen_gui = lowPrio (doxygen.override { inherit qt5; });
6718
6719 drake = callPackage ../development/tools/build-managers/drake { };
6720
6721 edb = libsForQt5.callPackage ../development/tools/misc/edb { };
6722
6723 license_finder = callPackage ../development/tools/license_finder { };
6724
6725 # NOTE: Override and set useIcon = false to use Awk instead of Icon.
6726 fffuu = haskell.lib.compose.justStaticExecutables (
6727 haskellPackages.callPackage ../tools/misc/fffuu { }
6728 );
6729
6730 flow = callPackage ../development/tools/analysis/flow {
6731 ocamlPackages = ocaml-ng.ocamlPackages.overrideScope (
6732 self: super: {
6733 ppxlib = super.ppxlib.override { version = "0.33.0"; };
6734 }
6735 );
6736 };
6737
6738 fswatch = callPackage ../development/tools/misc/fswatch { };
6739
6740 gede = libsForQt5.callPackage ../development/tools/misc/gede { };
6741
6742 gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { };
6743
6744 flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { };
6745 flex = callPackage ../development/tools/parsing/flex { };
6746
6747 m4 = gnum4;
6748
6749 gnumake = callPackage ../development/tools/build-managers/gnumake { };
6750
6751 gradle-packages = callPackage ../development/tools/build-managers/gradle { };
6752
6753 gradle_7-unwrapped = gradle-packages.gradle_7;
6754 gradle_8-unwrapped = gradle-packages.gradle_8;
6755 gradle_9-unwrapped = gradle-packages.gradle_9;
6756 gradle-unwrapped = gradle-packages.gradle;
6757
6758 gradle_7 = gradle-packages.gradle_7.wrapped;
6759 gradle_8 = gradle-packages.gradle_8.wrapped;
6760 gradle_9 = gradle-packages.gradle_9.wrapped;
6761 gradle = gradle-packages.gradle.wrapped;
6762
6763 griffe = with python3Packages; toPythonApplication griffe;
6764
6765 gwrap = g-wrap;
6766 g-wrap = callPackage ../by-name/g-/g-wrap/package.nix {
6767 guile = guile_2_2;
6768 };
6769
6770 hadolint =
6771 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
6772 (
6773 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
6774 lib.id
6775 else
6776 haskell.lib.compose.justStaticExecutables
6777 )
6778 haskellPackages.hadolint;
6779
6780 iaca_2_1 = callPackage ../development/tools/iaca/2.1.nix { };
6781 iaca_3_0 = callPackage ../development/tools/iaca/3.0.nix { };
6782 iaca = iaca_3_0;
6783
6784 include-what-you-use = callPackage ../development/tools/analysis/include-what-you-use {
6785 llvmPackages = llvmPackages_20;
6786 };
6787
6788 inherit (callPackage ../applications/misc/inochi2d { })
6789 inochi-creator
6790 inochi-session
6791 ;
6792
6793 jenkins-job-builder = with python3Packages; toPythonApplication jenkins-job-builder;
6794
6795 kustomize = callPackage ../development/tools/kustomize { };
6796
6797 kustomize_3 = callPackage ../development/tools/kustomize/3.nix { };
6798
6799 kustomize_4 = callPackage ../development/tools/kustomize/4.nix { };
6800
6801 kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { };
6802
6803 libtool = libtool_2;
6804
6805 libtool_1_5 = callPackage ../development/tools/misc/libtool { };
6806
6807 libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { };
6808
6809 linuxkit = callPackage ../development/tools/misc/linuxkit {
6810 inherit (darwin) sigtool;
6811 };
6812
6813 lit = with python3Packages; toPythonApplication lit;
6814
6815 massif-visualizer = libsForQt5.callPackage ../development/tools/analysis/massif-visualizer { };
6816
6817 maven3 = maven;
6818 inherit (maven) buildMaven;
6819
6820 mavproxy = python3Packages.callPackage ../applications/science/robotics/mavproxy { };
6821
6822 meraki-cli = python3Packages.callPackage ../tools/admin/meraki-cli { };
6823
6824 python-matter-server =
6825 with python3Packages;
6826 toPythonApplication (
6827 python-matter-server.overridePythonAttrs (oldAttrs: {
6828 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.server;
6829 })
6830 );
6831
6832 minizinc = callPackage ../development/tools/minizinc { };
6833 minizincide = qt6Packages.callPackage ../development/tools/minizinc/ide.nix { };
6834
6835 mkdocs = with python3Packages; toPythonApplication mkdocs;
6836
6837 mold-wrapped = wrapBintoolsWith {
6838 bintools = mold;
6839 extraBuildCommands = ''
6840 wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}ld.mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/ld.mold
6841 wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/mold
6842 '';
6843 };
6844
6845 mopsa = ocamlPackages.mopsa.bin;
6846
6847 haskell-ci =
6848 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
6849 (
6850 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
6851 lib.id
6852 else
6853 haskell.lib.compose.justStaticExecutables
6854 )
6855 haskellPackages.haskell-ci;
6856
6857 nixbang = callPackage ../development/tools/misc/nixbang {
6858 pythonPackages = python3Packages;
6859 };
6860
6861 nexusmods-app-unfree = nexusmods-app.override {
6862 pname = "nexusmods-app-unfree";
6863 _7zz = _7zz-rar;
6864 };
6865
6866 nwjs = callPackage ../development/tools/nwjs { };
6867
6868 nwjs-sdk = callPackage ../development/tools/nwjs {
6869 sdk = true;
6870 };
6871
6872 obelisk = callPackage ../development/tools/ocaml/obelisk { menhir = ocamlPackages.menhir; };
6873
6874 openai = with python3Packages; toPythonApplication openai;
6875
6876 openai-whisper = with python3.pkgs; toPythonApplication openai-whisper;
6877
6878 openocd-rp2040 = openocd.overrideAttrs (old: {
6879 pname = "openocd-rp2040";
6880 src = fetchFromGitHub {
6881 owner = "raspberrypi";
6882 repo = "openocd";
6883 rev = "4d87f6dcae77d3cbcd8ac3f7dc887adf46ffa504";
6884 hash = "sha256-bBqVoHsnNoaC2t8hqcduI8GGlO0VDMUovCB0HC+rxvc=";
6885 # openocd disables the vendored libraries that use submodules and replaces them with nix versions.
6886 # this works out as one of the submodule sources seems to be flakey.
6887 fetchSubmodules = false;
6888 };
6889 nativeBuildInputs = old.nativeBuildInputs ++ [
6890 autoreconfHook
6891 ];
6892 });
6893
6894 oprofile = callPackage ../development/tools/profiling/oprofile {
6895 libiberty_static = libiberty.override { staticBuild = true; };
6896 };
6897
6898 inherit (callPackage ../misc/optee-os { })
6899 buildOptee
6900 opteeQemuArm
6901 opteeQemuAarch64
6902 ;
6903
6904 patchelf = callPackage ../development/tools/misc/patchelf { };
6905
6906 patchelfUnstable = lowPrio (callPackage ../development/tools/misc/patchelf/unstable.nix { });
6907
6908 pgcli = with pkgs.python3Packages; toPythonApplication pgcli;
6909
6910 pkgconf-unwrapped = libpkgconf;
6911
6912 pkgconf = callPackage ../build-support/pkg-config-wrapper {
6913 pkg-config = pkgconf-unwrapped;
6914 baseBinName = "pkgconf";
6915 };
6916
6917 pkg-config = callPackage ../build-support/pkg-config-wrapper {
6918 pkg-config = pkg-config-unwrapped;
6919 };
6920
6921 pkg-configUpstream = lowPrio (
6922 pkg-config.override (old: {
6923 pkg-config = old.pkg-config.override {
6924 vanilla = true;
6925 };
6926 })
6927 );
6928
6929 portableService = callPackage ../build-support/portable-service { };
6930
6931 pyprof2calltree = with python3Packages; toPythonApplication pyprof2calltree;
6932
6933 premake4 = callPackage ../development/tools/misc/premake { };
6934
6935 premake5 = callPackage ../development/tools/misc/premake/5.nix { };
6936
6937 premake = premake4;
6938
6939 pycritty = with python3Packages; toPythonApplication pycritty;
6940
6941 qtcreator = qt6Packages.callPackage ../development/tools/qtcreator {
6942 llvmPackages = llvmPackages_21;
6943 stdenv = llvmPackages_21.stdenv;
6944 };
6945
6946 qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit { };
6947
6948 radare2 = callPackage ../development/tools/analysis/radare2 (
6949 {
6950 lua = lua5;
6951 }
6952 // (config.radare or { })
6953 );
6954
6955 rizin = pkgs.callPackage ../development/tools/analysis/rizin { };
6956
6957 rizinPlugins = recurseIntoAttrs rizin.plugins;
6958
6959 cutter = qt6.callPackage ../development/tools/analysis/rizin/cutter.nix { };
6960
6961 cutterPlugins = recurseIntoAttrs cutter.plugins;
6962
6963 ragel = ragelStable;
6964
6965 inherit (callPackages ../development/tools/parsing/ragel { }) ragelStable ragelDev;
6966
6967 inherit (regclient) regbot regctl regsync;
6968
6969 reno = with python312Packages; toPythonApplication reno;
6970
6971 replace-secret = callPackage ../build-support/replace-secret/replace-secret.nix { };
6972
6973 inherit (callPackage ../development/tools/replay-io { })
6974 replay-io
6975 replay-node-cli
6976 ;
6977
6978 rescript-language-server = callPackage ../by-name/re/rescript-language-server/package.nix {
6979 rescript-editor-analysis = vscode-extensions.chenglou92.rescript-vscode.rescript-editor-analysis;
6980 };
6981
6982 rnginline = with python3Packages; toPythonApplication rnginline;
6983
6984 rr = callPackage ../development/tools/analysis/rr { };
6985
6986 muonStandalone = muon.override {
6987 embedSamurai = true;
6988 buildDocs = false;
6989 };
6990
6991 seer = libsForQt5.callPackage ../development/tools/misc/seer { };
6992
6993 semantik = libsForQt5.callPackage ../applications/office/semantik { };
6994
6995 sbt = callPackage ../development/tools/build-managers/sbt { };
6996 sbt-with-scala-native = callPackage ../development/tools/build-managers/sbt/scala-native.nix { };
6997 simpleBuildTool = sbt;
6998
6999 scss-lint = callPackage ../development/tools/scss-lint { };
7000
7001 shake =
7002 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
7003 (
7004 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
7005 lib.id
7006 else
7007 haskell.lib.compose.justStaticExecutables
7008 )
7009 haskellPackages.shake;
7010
7011 shellcheck = callPackage ../development/tools/shellcheck {
7012 inherit (__splicedPackages.haskellPackages) ShellCheck;
7013 };
7014
7015 # Minimal shellcheck executable for package checks.
7016 # Use shellcheck which does not include docs, as
7017 # pandoc takes long to build and documentation isn't needed for just running the cli
7018 shellcheck-minimal = haskell.lib.compose.justStaticExecutables shellcheck.unwrapped;
7019
7020 sloc = nodePackages.sloc;
7021
7022 slurm = callPackage ../by-name/sl/slurm/package.nix {
7023 nvml = cudaPackages.cuda_nvml_dev;
7024 };
7025
7026 snowman = qt5.callPackage ../development/tools/analysis/snowman { };
7027
7028 sparse = callPackage ../development/tools/analysis/sparse { };
7029
7030 speedtest-cli = with python3Packages; toPythonApplication speedtest-cli;
7031
7032 splint = callPackage ../development/tools/analysis/splint {
7033 flex = flex_2_5_35;
7034 };
7035
7036 spoofer = callPackage ../tools/networking/spoofer {
7037 protobuf = protobuf_21;
7038 };
7039
7040 spoofer-gui = callPackage ../tools/networking/spoofer {
7041 withGUI = true;
7042 protobuf = protobuf_21;
7043 };
7044
7045 sqlite-utils = with python3Packages; toPythonApplication sqlite-utils;
7046
7047 sqlmap = with python3Packages; toPythonApplication sqlmap;
7048
7049 c0 = callPackage ../development/compilers/c0 {
7050 stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
7051 };
7052
7053 swftools = callPackage ../tools/video/swftools {
7054 stdenv = gccStdenv;
7055 };
7056
7057 teensyduino = arduino-core.override {
7058 withGui = true;
7059 withTeensyduino = true;
7060 };
7061
7062 tytools = libsForQt5.callPackage ../development/embedded/tytools { };
7063
7064 texinfoPackages = callPackages ../development/tools/misc/texinfo/packages.nix { };
7065 inherit (texinfoPackages)
7066 texinfo6
7067 texinfo7
7068 ;
7069 texinfo = texinfo7;
7070 texinfoInteractive = texinfo.override { interactive = true; };
7071
7072 tflint-plugins = recurseIntoAttrs (callPackage ../development/tools/analysis/tflint-plugins { });
7073
7074 tree-sitter = makeOverridable (callPackage ../development/tools/parsing/tree-sitter) { };
7075
7076 tree-sitter-grammars = recurseIntoAttrs tree-sitter.builtGrammars;
7077
7078 uhdMinimal = uhd.override {
7079 enableUtils = false;
7080 enablePythonApi = false;
7081 };
7082
7083 gdb = callPackage ../development/tools/misc/gdb {
7084 guile = null;
7085 };
7086
7087 gdbHostCpuOnly = gdb.override { hostCpuOnly = true; };
7088
7089 valgrind-light = (valgrind.override { gdb = null; }).overrideAttrs (oldAttrs: {
7090 meta = oldAttrs.meta // {
7091 description = "${oldAttrs.meta.description} (without GDB)";
7092 };
7093 });
7094
7095 vcpkg-tool-unwrapped = vcpkg-tool.override { doWrap = false; };
7096
7097 whatstyle = callPackage ../development/tools/misc/whatstyle {
7098 inherit (llvmPackages) clang-unwrapped;
7099 };
7100
7101 whisper-cpp-vulkan = whisper-cpp.override {
7102 vulkanSupport = true;
7103 };
7104
7105 watson-ruby = callPackage ../development/tools/misc/watson-ruby { };
7106
7107 xcbuild = callPackage ../by-name/xc/xcbuild/package.nix {
7108 stdenv =
7109 # xcbuild is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
7110 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
7111 };
7112
7113 xcbuildHook = makeSetupHook {
7114 name = "xcbuild-hook";
7115 propagatedBuildInputs = [ xcbuild ];
7116 } ../by-name/xc/xcbuild/setup-hook.sh;
7117
7118 xcodebuild = xcbuild;
7119
7120 xxdiff = libsForQt5.callPackage ../development/tools/misc/xxdiff { };
7121
7122 xxdiff-tip = xxdiff;
7123
7124 yq = python3.pkgs.toPythonApplication python3.pkgs.yq;
7125
7126 mypy = with python3Packages; toPythonApplication mypy;
7127
7128 mypy-protobuf = with python3Packages; toPythonApplication mypy-protobuf;
7129
7130 basedmypy = with python3Packages; toPythonApplication basedmypy;
7131
7132 ### DEVELOPMENT / LIBRARIES
7133
7134 abseil-cpp_202103 = callPackage ../development/libraries/abseil-cpp/202103.nix { };
7135 abseil-cpp_202401 = callPackage ../development/libraries/abseil-cpp/202401.nix { };
7136 abseil-cpp_202407 = callPackage ../development/libraries/abseil-cpp/202407.nix { };
7137 abseil-cpp = abseil-cpp_202501;
7138
7139 acl = callPackage ../development/libraries/acl { };
7140
7141 agg = callPackage ../development/libraries/agg {
7142 stdenv = gccStdenv;
7143 };
7144
7145 allegro = allegro4;
7146 allegro4 = callPackage ../development/libraries/allegro { };
7147 allegro5 = callPackage ../development/libraries/allegro/5.nix { };
7148
7149 ansi2html = with python3.pkgs; toPythonApplication ansi2html;
7150
7151 appstream = callPackage ../development/libraries/appstream { };
7152
7153 argparse-manpage = with python3Packages; toPythonApplication argparse-manpage;
7154
7155 asio_1_10 = callPackage ../development/libraries/asio/1.10.nix { };
7156 asio = callPackage ../development/libraries/asio { };
7157
7158 aspell = callPackage ../development/libraries/aspell { };
7159
7160 aspellDicts = recurseIntoAttrs (callPackages ../development/libraries/aspell/dictionaries.nix { });
7161
7162 aspellWithDicts = callPackage ../development/libraries/aspell/aspell-with-dicts.nix {
7163 aspell = aspell.override { searchNixProfiles = false; };
7164 };
7165
7166 astal = recurseIntoAttrs (lib.makeScope newScope (callPackage ../development/libraries/astal { }));
7167
7168 attr = callPackage ../development/libraries/attr { };
7169
7170 # Not moved to aliases while we decide if we should split the package again.
7171 at-spi2-atk = at-spi2-core;
7172
7173 aqbanking = callPackage ../development/libraries/aqbanking { };
7174
7175 aws-spend-summary = haskellPackages.aws-spend-summary.bin;
7176
7177 inherit (callPackages ../development/libraries/bashup-events { }) bashup-events32 bashup-events44;
7178
7179 bc-soci = callPackage ../development/libraries/soci/bc-soci.nix { };
7180
7181 # TODO(@Ericson2314): Build bionic libc from source
7182 bionic =
7183 if stdenv.hostPlatform.useAndroidPrebuilt then
7184 pkgs."androidndkPkgs_${stdenv.hostPlatform.androidNdkVersion}".libraries
7185 else
7186 callPackage ../os-specific/linux/bionic-prebuilt { };
7187
7188 inherit (callPackage ../development/libraries/boost { inherit (buildPackages) boost-build; })
7189 boost177
7190 boost178
7191 boost179
7192 boost180
7193 boost181
7194 boost182
7195 boost183
7196 boost186
7197 boost187
7198 boost188
7199 boost189
7200 ;
7201
7202 boost = boost187;
7203
7204 inherit
7205 (callPackages ../development/libraries/botan {
7206 # botan3 only sensibly works with libcxxStdenv when building static binaries
7207 stdenv = if stdenv.hostPlatform.isStatic then buildPackages.libcxxStdenv else stdenv;
7208 })
7209 botan2
7210 botan3
7211 ;
7212
7213 c-ares = callPackage ../development/libraries/c-ares { };
7214
7215 c-aresMinimal = callPackage ../development/libraries/c-ares {
7216 withCMake = false;
7217 };
7218
7219 inherit (callPackages ../development/libraries/c-blosc { })
7220 c-blosc
7221 c-blosc2
7222 ;
7223
7224 cachix = (lib.getBin haskellPackages.cachix).overrideAttrs (old: {
7225 meta = (old.meta or { }) // {
7226 mainProgram = old.meta.mainProgram or "cachix";
7227 };
7228 });
7229
7230 niv = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.niv);
7231
7232 ormolu = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.ormolu);
7233
7234 cctag = callPackage ../development/libraries/cctag {
7235 stdenv = clangStdenv;
7236 tbb = tbb_2022;
7237 };
7238
7239 ceedling = callPackage ../development/tools/ceedling { };
7240
7241 celt = callPackage ../development/libraries/celt { };
7242 celt_0_7 = callPackage ../development/libraries/celt/0.7.nix { };
7243 celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix { };
7244
7245 certbot-full = certbot.withPlugins (
7246 cp: with cp; [
7247 # FIXME unbreak certbot-dns-cloudflare
7248 certbot-dns-google
7249 certbot-dns-inwx
7250 certbot-dns-ovh
7251 certbot-dns-rfc2136
7252 certbot-dns-route53
7253 certbot-nginx
7254 ]
7255 );
7256
7257 clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { };
7258
7259 clucene_core = clucene_core_2;
7260
7261 codecserver = callPackage ../applications/audio/codecserver {
7262 protobuf = protobuf_21;
7263 };
7264
7265 inherit (cosmopolitan) cosmocc;
7266
7267 ctranslate2 = callPackage ../development/libraries/ctranslate2 rec {
7268 withCUDA = pkgs.config.cudaSupport;
7269 withCuDNN = withCUDA && (cudaPackages ? cudnn);
7270 cudaPackages = pkgs.cudaPackages;
7271 };
7272
7273 ustream-ssl = callPackage ../development/libraries/ustream-ssl { ssl_implementation = openssl; };
7274
7275 ustream-ssl-wolfssl = callPackage ../development/libraries/ustream-ssl {
7276 ssl_implementation = wolfssl;
7277 additional_buildInputs = [ openssl ];
7278 };
7279
7280 ustream-ssl-mbedtls = callPackage ../development/libraries/ustream-ssl {
7281 ssl_implementation = mbedtls_2;
7282 };
7283
7284 cxxtest = python3Packages.callPackage ../development/libraries/cxxtest { };
7285
7286 # Make bdb5 the default as it is the last release under the custom
7287 # bsd-like license
7288 db = db5;
7289 db4 = db48;
7290 db48 = callPackage ../development/libraries/db/db-4.8.nix { };
7291 db5 = db53;
7292 db53 = callPackage ../development/libraries/db/db-5.3.nix { };
7293 db6 = db60;
7294 db60 = callPackage ../development/libraries/db/db-6.0.nix { };
7295 db62 = callPackage ../development/libraries/db/db-6.2.nix { };
7296
7297 dbus = callPackage ../development/libraries/dbus { };
7298
7299 makeDBusConf = callPackage ../development/libraries/dbus/make-dbus-conf.nix { };
7300
7301 dee = callPackage ../development/libraries/dee { };
7302
7303 draco = callPackage ../development/libraries/draco {
7304 tinygltf = callPackage ../development/libraries/draco/tinygltf.nix { };
7305 };
7306
7307 # Multi-arch "drivers" which we want to build for i686.
7308 driversi686Linux = recurseIntoAttrs {
7309 inherit (pkgsi686Linux)
7310 intel-media-driver
7311 intel-vaapi-driver
7312 mesa
7313 mesa-demos
7314 libva-vdpau-driver
7315 libvdpau-va-gl
7316 vdpauinfo
7317 ;
7318 };
7319
7320 eccodes = callPackage ../development/libraries/eccodes {
7321 pythonPackages = python3Packages;
7322 stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
7323 };
7324
7325 vapoursynth-editor = libsForQt5.callPackage ../by-name/va/vapoursynth/editor.nix { };
7326
7327 # TODO: Fix references and add justStaticExecutables https://github.com/NixOS/nixpkgs/issues/318013
7328 emanote = haskellPackages.emanote;
7329
7330 enchant2 = callPackage ../development/libraries/enchant/2.x.nix { };
7331 enchant = enchant2;
7332
7333 factorPackages-0_99 = callPackage ./factor-packages.nix {
7334 factor-unwrapped = callPackage ../development/compilers/factor-lang/0.99.nix { };
7335 };
7336 factorPackages-0_100 = callPackage ./factor-packages.nix {
7337 factor-unwrapped = callPackage ../development/compilers/factor-lang/0.100.nix { };
7338 };
7339 factorPackages = factorPackages-0_100;
7340
7341 factor-lang-0_99 = factorPackages-0_99.factor-lang;
7342 factor-lang-0_100 = factorPackages-0_100.factor-lang;
7343 factor-lang = factor-lang-0_100;
7344
7345 farstream = callPackage ../development/libraries/farstream {
7346 inherit (gst_all_1)
7347 gstreamer
7348 gst-plugins-base
7349 gst-plugins-good
7350 gst-plugins-bad
7351 gst-libav
7352 ;
7353 autoreconfHook = buildPackages.autoreconfHook269;
7354 };
7355
7356 inherit (callPackage ../development/libraries/ffmpeg { })
7357 ffmpeg_4
7358 ffmpeg_4-headless
7359 ffmpeg_4-full
7360 ffmpeg_6
7361 ffmpeg_6-headless
7362 ffmpeg_6-full
7363 ffmpeg_7
7364 ffmpeg_7-headless
7365 ffmpeg_7-full
7366 ffmpeg_8
7367 ffmpeg_8-headless
7368 ffmpeg_8-full
7369 ffmpeg
7370 ffmpeg-headless
7371 ffmpeg-full
7372 ;
7373
7374 fftwSinglePrec = fftw.override { precision = "single"; };
7375 fftwFloat = fftwSinglePrec; # the configure option is just an alias
7376 fftwLongDouble = fftw.override { precision = "long-double"; };
7377 # Need gcc >= 4.6.0 to build with FFTW with quad precision, but Darwin defaults to Clang
7378 fftwQuad = fftw.override {
7379 precision = "quad-precision";
7380 stdenv = gccStdenv;
7381 };
7382 fftwMpi = fftw.override { enableMpi = true; };
7383
7384 fltk13 = callPackage ../development/libraries/fltk { };
7385 fltk14 = callPackage ../development/libraries/fltk/1.4.nix { };
7386 fltk13-minimal = fltk13.override {
7387 withGL = false;
7388 withCairo = false;
7389 withExamples = false;
7390 withDocs = false;
7391 };
7392 fltk14-minimal = fltk14.override {
7393 withGL = false;
7394 withCairo = false;
7395 withPango = false;
7396 withExamples = false;
7397 withDocs = false;
7398 };
7399 fltk = fltk13;
7400 fltk-minimal = fltk13-minimal;
7401
7402 inherit (callPackages ../development/libraries/fmt { }) fmt_9 fmt_10 fmt_11;
7403
7404 fmt = fmt_10;
7405
7406 fplll = callPackage ../development/libraries/fplll { };
7407 fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix { };
7408
7409 freeimage = callPackage ../by-name/fr/freeimage/package.nix {
7410 openexr = openexr_2;
7411 };
7412
7413 freeipa = callPackage ../os-specific/linux/freeipa {
7414 # NOTE: freeipa and sssd need to be built with the same version of python
7415 kerberos = krb5.override {
7416 withVerto = true;
7417 };
7418 sasl = cyrus_sasl;
7419 samba = samba4.override {
7420 enableLDAP = true;
7421 };
7422 };
7423
7424 frog = res.languageMachines.frog;
7425
7426 fontconfig = callPackage ../development/libraries/fontconfig { };
7427
7428 makeFontsConf = callPackage ../development/libraries/fontconfig/make-fonts-conf.nix { };
7429
7430 makeFontsCache = callPackage ../development/libraries/fontconfig/make-fonts-cache.nix { };
7431
7432 gamenetworkingsockets = callPackage ../development/libraries/gamenetworkingsockets {
7433 protobuf = protobuf_21;
7434 };
7435
7436 gamt = callPackage ../by-name/am/amtterm/package.nix { withGamt = true; };
7437
7438 gcr = callPackage ../development/libraries/gcr { };
7439
7440 gcr_4 = callPackage ../development/libraries/gcr/4.nix { };
7441
7442 gecode_3 = callPackage ../development/libraries/gecode/3.nix { };
7443 gecode_6 = qt5.callPackage ../development/libraries/gecode { };
7444 gecode = gecode_6;
7445
7446 gegl = callPackage ../development/libraries/gegl {
7447 openexr = openexr_2;
7448 };
7449
7450 geoclue2-with-demo-agent = geoclue2.override { withDemoAgent = true; };
7451
7452 geoipWithDatabase = makeOverridable (callPackage ../development/libraries/geoip) {
7453 drvName = "geoip-tools";
7454 geoipDatabase = geolite-legacy;
7455 };
7456
7457 geoip = callPackage ../development/libraries/geoip { };
7458
7459 geos = callPackage ../development/libraries/geos { };
7460
7461 gettext = callPackage ../development/libraries/gettext { };
7462
7463 gdalMinimal = gdal.override {
7464 useMinimalFeatures = true;
7465 };
7466
7467 gdcm = callPackage ../development/libraries/gdcm {
7468 inherit (darwin) DarwinTools;
7469 };
7470
7471 ghp-import = with python3Packages; toPythonApplication ghp-import;
7472
7473 ghcid = haskellPackages.ghcid.bin;
7474
7475 graphia = qt6Packages.callPackage ../applications/science/misc/graphia { };
7476
7477 glew = callPackage ../development/libraries/glew { };
7478 glew110 = callPackage ../development/libraries/glew/1.10.nix { };
7479 glfw = glfw3;
7480 glfw2 = callPackage ../development/libraries/glfw/2.x.nix { };
7481
7482 glfw3-minecraft = callPackage ../by-name/gl/glfw3/package.nix {
7483 withMinecraftPatch = true;
7484 };
7485
7486 glibc = callPackage ../development/libraries/glibc (
7487 if stdenv.hostPlatform != stdenv.buildPlatform then
7488 {
7489 stdenv = gccCrossLibcStdenv; # doesn't compile without gcc
7490 libgcc = callPackage ../development/libraries/gcc/libgcc {
7491 gcc = gccCrossLibcStdenv.cc;
7492 glibc = glibc.override { libgcc = null; };
7493 stdenvNoLibs = gccCrossLibcStdenv;
7494 };
7495 }
7496 else
7497 {
7498 stdenv = gccStdenv; # doesn't compile without gcc
7499 }
7500 );
7501
7502 mtrace = callPackage ../development/libraries/glibc/mtrace.nix { };
7503
7504 # Provided by libc on Operating Systems that use the Extensible Linker Format.
7505 elf-header = if stdenv.hostPlatform.isElf then null else elf-header-real;
7506
7507 glibc_memusage = callPackage ../development/libraries/glibc {
7508 withGd = true;
7509 };
7510
7511 # These are used when building compiler-rt / libgcc, prior to building libc.
7512 preLibcHeaders =
7513 let
7514 inherit (stdenv.hostPlatform) libc;
7515 in
7516 if stdenv.hostPlatform.isMinGW then
7517 windows.mingw_w64_headers or fallback
7518 else if libc == "nblibc" then
7519 netbsd.headers
7520 else if libc == "cygwin" then
7521 cygwin.newlib-cygwin-headers
7522 else
7523 null;
7524
7525 # We can choose:
7526 libc =
7527 let
7528 inherit (stdenv.hostPlatform) libc;
7529 # libc is hackily often used from the previous stage. This `or`
7530 # hack fixes the hack, *sigh*.
7531 in
7532 if libc == null then
7533 null
7534 else if libc == "glibc" then
7535 glibc
7536 else if libc == "bionic" then
7537 bionic
7538 else if libc == "uclibc" then
7539 uclibc
7540 else if libc == "avrlibc" then
7541 avrlibc
7542 else if libc == "newlib" && stdenv.hostPlatform.isMsp430 then
7543 msp430Newlib
7544 else if libc == "newlib" && stdenv.hostPlatform.isVc4 then
7545 vc4-newlib
7546 else if libc == "newlib" && stdenv.hostPlatform.isOr1k then
7547 or1k-newlib
7548 else if libc == "newlib" then
7549 newlib
7550 else if libc == "newlib-nano" then
7551 newlib-nano
7552 else if libc == "musl" then
7553 musl
7554 else if libc == "msvcrt" then
7555 if stdenv.hostPlatform.isMinGW then windows.mingw_w64 else windows.sdk
7556 else if libc == "ucrt" then
7557 if stdenv.hostPlatform.isMinGW then windows.mingw_w64 else windows.sdk
7558 else if libc == "cygwin" then
7559 cygwin.newlib-cygwin-nobin
7560 else if libc == "libSystem" then
7561 if stdenv.hostPlatform.useiOSPrebuilt then darwin.iosSdkPkgs.libraries else darwin.libSystem
7562 else if libc == "fblibc" then
7563 freebsd.libc
7564 else if libc == "oblibc" then
7565 openbsd.libc
7566 else if libc == "nblibc" then
7567 netbsd.libc
7568 else if libc == "wasilibc" then
7569 wasilibc
7570 else if libc == "relibc" then
7571 relibc
7572 else if libc == "llvm" then
7573 llvmPackages_20.libc
7574 else
7575 throw "Unknown libc ${libc}";
7576
7577 threads =
7578 lib.optionalAttrs (stdenv.hostPlatform.isMinGW && !(stdenv.hostPlatform.useLLVM or false))
7579 {
7580 # other possible values: win32 or posix
7581 model = "mcf";
7582 # For win32 or posix set this to null
7583 package = windows.mcfgthreads;
7584 };
7585
7586 # Only supported on Linux and only on glibc
7587 glibcLocales =
7588 if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu then
7589 callPackage ../development/libraries/glibc/locales.nix {
7590 stdenv = if (!stdenv.cc.isGNU) then gccStdenv else stdenv;
7591 withLinuxHeaders = !stdenv.cc.isGNU;
7592 }
7593 else
7594 null;
7595 glibcLocalesUtf8 =
7596 if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu then
7597 callPackage ../development/libraries/glibc/locales.nix {
7598 stdenv = if (!stdenv.cc.isGNU) then gccStdenv else stdenv;
7599 withLinuxHeaders = !stdenv.cc.isGNU;
7600 allLocales = false;
7601 }
7602 else
7603 null;
7604
7605 glibcInfo = callPackage ../development/libraries/glibc/info.nix { };
7606
7607 glibc_multi = callPackage ../development/libraries/glibc/multi.nix {
7608 # The buildPackages is required for cross-compilation. The pkgsi686Linux set
7609 # has target and host always set to the same value based on target platform
7610 # of the current set. We need host to be same as build to correctly get i686
7611 # variant of glibc.
7612 glibc32 = pkgsi686Linux.buildPackages.glibc;
7613 };
7614
7615 glsurf = callPackage ../applications/science/math/glsurf {
7616 ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
7617 };
7618
7619 gmime2 = callPackage ../development/libraries/gmime/2.nix { };
7620 gmime3 = callPackage ../development/libraries/gmime/3.nix { };
7621 gmime = gmime2;
7622
7623 gmp6 = callPackage ../development/libraries/gmp/6.x.nix { };
7624 gmp = gmp6;
7625 gmpxx = gmp.override { cxx = true; };
7626
7627 #GMP ex-satellite, so better keep it near gmp
7628 # A GMP fork
7629 gns3Packages = recurseIntoAttrs (callPackage ../applications/networking/gns3 { });
7630 gns3-gui = gns3Packages.guiStable;
7631 gns3-server = gns3Packages.serverStable;
7632
7633 gobject-introspection = callPackage ../development/libraries/gobject-introspection/wrapper.nix { };
7634
7635 gobject-introspection-unwrapped = callPackage ../development/libraries/gobject-introspection {
7636 nixStoreDir = config.nix.storeDir or builtins.storeDir;
7637 };
7638
7639 goocanvas = callPackage ../development/libraries/goocanvas { };
7640 goocanvas2 = callPackage ../development/libraries/goocanvas/2.x.nix { };
7641 goocanvas3 = callPackage ../development/libraries/goocanvas/3.x.nix { };
7642
7643 gsettings-qt = libsForQt5.callPackage ../development/libraries/gsettings-qt { };
7644
7645 gst_all_1 = recurseIntoAttrs (
7646 callPackage ../development/libraries/gstreamer {
7647 callPackage = newScope gst_all_1;
7648 }
7649 );
7650
7651 gnutls = callPackage ../development/libraries/gnutls {
7652 util-linux = util-linuxMinimal; # break the cyclic dependency
7653 autoconf = buildPackages.autoconf269;
7654 };
7655
7656 gpgme = callPackage ../development/libraries/gpgme { };
7657
7658 grantlee = libsForQt5.callPackage ../development/libraries/grantlee { };
7659
7660 glib = callPackage ../by-name/gl/glib/package.nix (
7661 let
7662 glib-untested = glib.overrideAttrs { doCheck = false; };
7663 in
7664 {
7665 # break dependency cycles
7666 # these things are only used for tests, they don't get into the closure
7667 shared-mime-info = shared-mime-info.override { glib = glib-untested; };
7668 desktop-file-utils = desktop-file-utils.override { glib = glib-untested; };
7669 dbus = dbus.override { enableSystemd = false; };
7670 }
7671 );
7672
7673 glibmm = callPackage ../development/libraries/glibmm { };
7674
7675 glibmm_2_68 = callPackage ../development/libraries/glibmm/2.68.nix { };
7676
7677 glirc = haskell.lib.compose.justStaticExecutables haskellPackages.glirc;
7678
7679 # Not moved to aliases while we decide if we should split the package again.
7680 atk = at-spi2-core;
7681
7682 atkmm = callPackage ../development/libraries/atkmm { };
7683
7684 atkmm_2_36 = callPackage ../development/libraries/atkmm/2.36.nix { };
7685
7686 cairomm = callPackage ../development/libraries/cairomm { };
7687
7688 cairomm_1_16 = callPackage ../development/libraries/cairomm/1.16.nix { };
7689
7690 pangomm = callPackage ../development/libraries/pangomm { };
7691
7692 pangomm_2_48 = callPackage ../development/libraries/pangomm/2.48.nix { };
7693
7694 pangomm_2_42 = callPackage ../development/libraries/pangomm/2.42.nix { };
7695
7696 gdk-pixbuf = callPackage ../development/libraries/gdk-pixbuf { };
7697
7698 gdk-pixbuf-xlib = callPackage ../development/libraries/gdk-pixbuf/xlib.nix { };
7699
7700 gtk2 = callPackage ../development/libraries/gtk/2.x.nix { };
7701
7702 gtk2-x11 = gtk2.override {
7703 cairo = cairo.override { x11Support = true; };
7704 pango = pango.override {
7705 cairo = cairo.override { x11Support = true; };
7706 x11Support = true;
7707 };
7708 gdktarget = "x11";
7709 };
7710
7711 gtk3 = callPackage ../development/libraries/gtk/3.x.nix { };
7712
7713 gtk4 = callPackage ../development/libraries/gtk/4.x.nix { };
7714
7715 # On darwin gtk uses cocoa by default instead of x11.
7716 gtk3-x11 = gtk3.override {
7717 cairo = cairo.override { x11Support = true; };
7718 pango = pango.override {
7719 cairo = cairo.override { x11Support = true; };
7720 x11Support = true;
7721 };
7722 x11Support = true;
7723 };
7724
7725 gtkmm2 = callPackage ../development/libraries/gtkmm/2.x.nix { };
7726 gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { };
7727 gtkmm4 = callPackage ../development/libraries/gtkmm/4.x.nix { };
7728
7729 gtk-sharp-2_0 = callPackage ../development/libraries/gtk-sharp/2.0.nix { };
7730
7731 gtk-sharp-3_0 = callPackage ../development/libraries/gtk-sharp/3.0.nix { };
7732
7733 gtk-mac-integration-gtk2 = gtk-mac-integration.override {
7734 gtk = gtk2;
7735 };
7736
7737 gtk-mac-integration-gtk3 = gtk-mac-integration;
7738
7739 gtksourceview = gtksourceview3;
7740
7741 gtksourceview3 = callPackage ../development/libraries/gtksourceview/3.x.nix { };
7742
7743 gtksourceview4 = callPackage ../development/libraries/gtksourceview/4.x.nix { };
7744
7745 gtksourceview5 = callPackage ../development/libraries/gtksourceview/5.x.nix { };
7746
7747 gtksourceviewmm = callPackage ../development/libraries/gtksourceviewmm { };
7748
7749 gtksourceviewmm4 = callPackage ../development/libraries/gtksourceviewmm/4.x.nix { };
7750
7751 gtkspell2 = callPackage ../development/libraries/gtkspell { };
7752
7753 gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { };
7754
7755 gwenhywfar = callPackage ../development/libraries/aqbanking/gwenhywfar.nix { };
7756
7757 hamlib = hamlib_3;
7758 hamlib_3 = callPackage ../development/libraries/hamlib { };
7759 hamlib_4 = callPackage ../development/libraries/hamlib/4.nix { };
7760
7761 heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { };
7762
7763 harfbuzzFull = harfbuzz.override {
7764 withGraphite2 = true;
7765 withIcu = true;
7766 };
7767
7768 herqq = libsForQt5.callPackage ../development/libraries/herqq { };
7769
7770 highfive-mpi = highfive.override { hdf5 = hdf5-mpi; };
7771
7772 hspell = callPackage ../development/libraries/hspell { };
7773
7774 hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { };
7775
7776 hunspellDicts = recurseIntoAttrs (callPackages ../by-name/hu/hunspell/dictionaries.nix { });
7777
7778 hunspellDictsChromium = recurseIntoAttrs (
7779 callPackages ../by-name/hu/hunspell/dictionaries-chromium.nix { }
7780 );
7781
7782 hunspellWithDicts =
7783 dicts:
7784 lib.warn "hunspellWithDicts is deprecated, please use hunspell.withDicts instead."
7785 hunspell.withDicts
7786 (_: dicts);
7787
7788 hydra = callPackage ../by-name/hy/hydra/package.nix { nix = nixVersions.nix_2_29; };
7789
7790 icu-versions = callPackages ../development/libraries/icu { };
7791 inherit (icu-versions)
7792 icu60
7793 icu63
7794 icu64
7795 icu66
7796 icu67
7797 icu69
7798 icu70
7799 icu71
7800 icu72
7801 icu73
7802 icu74
7803 icu75
7804 icu76
7805 icu77
7806 ;
7807
7808 icu = icu76;
7809
7810 idasen = with python3Packages; toPythonApplication idasen;
7811
7812 imlib2Full = imlib2.override {
7813 # Compilation error on Darwin with librsvg. For more information see:
7814 # https://github.com/NixOS/nixpkgs/pull/166452#issuecomment-1090725613
7815 svgSupport = !stdenv.hostPlatform.isDarwin;
7816 heifSupport = !stdenv.hostPlatform.isDarwin;
7817 webpSupport = true;
7818 jxlSupport = true;
7819 psSupport = true;
7820 };
7821 imlib2-nox = imlib2.override {
7822 x11Support = false;
7823 };
7824
7825 imlibsetroot = callPackage ../applications/graphics/imlibsetroot {
7826 libXinerama = xorg.libXinerama;
7827 };
7828
7829 indicator-application-gtk2 =
7830 callPackage ../development/libraries/indicator-application/gtk2.nix
7831 { };
7832 indicator-application-gtk3 =
7833 callPackage ../development/libraries/indicator-application/gtk3.nix
7834 { };
7835
7836 indilib = callPackage ../development/libraries/science/astronomy/indilib { };
7837 indi-3rdparty = recurseIntoAttrs (
7838 callPackages ../development/libraries/science/astronomy/indilib/indi-3rdparty.nix { }
7839 );
7840
7841 ios-cross-compile = callPackage ../development/compilers/ios-cross-compile/9.2.nix { };
7842
7843 irrlicht =
7844 if !stdenv.hostPlatform.isDarwin then
7845 callPackage ../development/libraries/irrlicht { }
7846 else
7847 callPackage ../development/libraries/irrlicht/mac.nix {
7848 };
7849
7850 iso-flags-png-320x240 = iso-flags.overrideAttrs (oldAttrs: {
7851 buildFlags = [ "png-country-320x240-fancy" ];
7852 installPhase = ''
7853 runHook preInstall
7854 mkdir -p $out/share && mv build/png-country-4x2-fancy/res-320x240 $out/share/iso-flags-png
7855 runHook postInstall
7856 '';
7857 });
7858
7859 isoimagewriter = libsForQt5.callPackage ../tools/misc/isoimagewriter { };
7860
7861 isso = callPackage ../servers/isso {
7862 nodejs = nodejs_20;
7863 };
7864
7865 itk_5_2 = callPackage ../development/libraries/itk/5.2.x.nix {
7866 enableRtk = false;
7867 };
7868
7869 itk_5 = callPackage ../development/libraries/itk/5.x.nix { };
7870
7871 itk = itk_5;
7872
7873 jemalloc = callPackage ../development/libraries/jemalloc { };
7874
7875 rust-jemalloc-sys = callPackage ../development/libraries/jemalloc/rust.nix { };
7876 rust-jemalloc-sys-unprefixed = rust-jemalloc-sys.override { unprefixed = true; };
7877
7878 json2yaml = haskell.lib.compose.justStaticExecutables haskellPackages.json2yaml;
7879
7880 keybinder = callPackage ../development/libraries/keybinder {
7881 lua = lua5_1;
7882 };
7883
7884 keybinder3 = callPackage ../development/libraries/keybinder3 {
7885 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
7886 };
7887
7888 krb5 = callPackage ../development/libraries/kerberos/krb5.nix {
7889 inherit (buildPackages.darwin) bootstrap_cmds;
7890 };
7891 libkrb5 = krb5; # TODO(de11n) Try to make krb5 reuse libkrb5 as a dependency
7892
7893 l-smash = callPackage ../development/libraries/l-smash {
7894 stdenv = gccStdenv;
7895 };
7896
7897 languageMachines = recurseIntoAttrs (
7898 import ../development/libraries/languagemachines/packages.nix {
7899 inherit pkgs;
7900 }
7901 );
7902
7903 lcms = lcms2;
7904
7905 libagar = callPackage ../development/libraries/libagar { };
7906 libagar_test = callPackage ../development/libraries/libagar/libagar_test.nix { };
7907
7908 libao = callPackage ../development/libraries/libao {
7909 usePulseAudio = config.pulseaudio or (lib.meta.availableOn stdenv.hostPlatform libpulseaudio);
7910 };
7911
7912 libappindicator-gtk2 = libappindicator.override { gtkVersion = "2"; };
7913 libappindicator-gtk3 = libappindicator.override { gtkVersion = "3"; };
7914 libasn1c = callPackage ../servers/osmocom/libasn1c/default.nix { };
7915
7916 libbap = callPackage ../development/libraries/libbap {
7917 inherit (ocaml-ng.ocamlPackages_4_14)
7918 bap
7919 ocaml
7920 findlib
7921 ctypes
7922 ctypes-foreign
7923 ;
7924 };
7925
7926 libbass = (callPackage ../development/libraries/audio/libbass { }).bass;
7927 libbass_fx = (callPackage ../development/libraries/audio/libbass { }).bass_fx;
7928 libbassmidi = (callPackage ../development/libraries/audio/libbass { }).bassmidi;
7929 libbassmix = (callPackage ../development/libraries/audio/libbass { }).bassmix;
7930
7931 libcamera-qcam = callPackage ../by-name/li/libcamera/package.nix { withQcam = true; };
7932
7933 libcanberra-gtk2 = pkgs.libcanberra.override {
7934 gtkSupport = "gtk2";
7935 };
7936 libcanberra-gtk3 = pkgs.libcanberra.override {
7937 gtkSupport = "gtk3";
7938 };
7939
7940 libcanberra_kde =
7941 if (config.kde_runtime.libcanberraWithoutGTK or true) then
7942 pkgs.libcanberra
7943 else
7944 pkgs.libcanberra-gtk2;
7945
7946 libcec = callPackage ../development/libraries/libcec { };
7947
7948 libcec_platform = callPackage ../development/libraries/libcec/platform.nix { };
7949
7950 libcef = callPackage ../development/libraries/libcef { };
7951
7952 libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; };
7953
7954 libchamplain_libsoup3 = libchamplain.override { withLibsoup3 = true; };
7955
7956 libchipcard = callPackage ../development/libraries/aqbanking/libchipcard.nix { };
7957
7958 libcxxrt = callPackage ../development/libraries/libcxxrt {
7959 stdenv =
7960 if stdenv.hostPlatform.useLLVM or false then
7961 overrideCC stdenv buildPackages.llvmPackages.tools.clangNoLibcxx
7962 else
7963 stdenv;
7964 };
7965
7966 libdbiDriversBase = libdbiDrivers.override {
7967 libmysqlclient = null;
7968 sqlite = null;
7969 };
7970
7971 libdbusmenu-gtk2 = libdbusmenu.override { gtkVersion = "2"; };
7972 libdbusmenu-gtk3 = libdbusmenu.override { gtkVersion = "3"; };
7973
7974 libdvdnav = callPackage ../development/libraries/libdvdnav { };
7975 libdvdnav_4_2_1 = callPackage ../development/libraries/libdvdnav/4.2.1.nix {
7976 libdvdread = libdvdread_4_9_9;
7977 };
7978
7979 libdvdread = callPackage ../development/libraries/libdvdread { };
7980 libdvdread_4_9_9 = callPackage ../development/libraries/libdvdread/4.9.9.nix { };
7981
7982 dwarfdump = libdwarf.bin;
7983
7984 libfm-extra = libfm.override {
7985 extraOnly = true;
7986 };
7987
7988 libgda5 = callPackage ../development/libraries/libgda/5.x.nix { };
7989
7990 libgda6 = callPackage ../development/libraries/libgda/6.x.nix { };
7991
7992 libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { };
7993 libgnome-games-support_2_0 =
7994 callPackage ../development/libraries/libgnome-games-support/2.0.nix
7995 { };
7996
7997 libextractor = callPackage ../development/libraries/libextractor {
7998 libmpeg2 = mpeg2dec;
7999 };
8000
8001 libfive = libsForQt5.callPackage ../development/libraries/libfive { };
8002
8003 # Use Apple’s fork of libffi by default, which provides APIs and trampoline functionality that is not yet
8004 # merged upstream. This is needed by some packages (such as cffi).
8005 #
8006 # `libffiReal` is provided in case the upstream libffi package is needed on Darwin instead of the fork.
8007 libffiReal = callPackage ../development/libraries/libffi { };
8008 libffi = if stdenv.hostPlatform.isDarwin then darwin.libffi else libffiReal;
8009 libffi_3_3 = callPackage ../development/libraries/libffi/3.3.nix { };
8010
8011 # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=README;h=fd6e1a83f55696c1f7a08f6dfca08b2d6b7617ec;hb=70058cd9f944d620764e57c838209afae8a58c78#l118
8012 libgpg-error-gen-posix-lock-obj = libgpg-error.override {
8013 genPosixLockObjOnly = true;
8014 };
8015
8016 libindicator-gtk2 = libindicator.override { gtkVersion = "2"; };
8017 libindicator-gtk3 = libindicator.override { gtkVersion = "3"; };
8018 inherit (callPackage ../development/libraries/libliftoff { }) libliftoff_0_4 libliftoff_0_5;
8019 libliftoff = libliftoff_0_5;
8020
8021 libqtdbusmock = libsForQt5.callPackage ../development/libraries/libqtdbusmock {
8022 inherit (lomiri) cmake-extras;
8023 };
8024
8025 libqtdbustest = libsForQt5.callPackage ../development/libraries/libqtdbustest {
8026 inherit (lomiri) cmake-extras;
8027 };
8028
8029 libretranslate = with python3.pkgs; toPythonApplication libretranslate;
8030
8031 librsb = callPackage ../development/libraries/librsb {
8032 # Taken from https://build.opensuse.org/package/view_file/science/librsb/librsb.spec
8033 memHierarchy = "L3:16/64/8192K,L2:16/64/2048K,L1:8/64/16K";
8034 };
8035
8036 # GNU libc provides libiconv so systems with glibc don't need to
8037 # build libiconv separately. Additionally, Apple forked/repackaged
8038 # libiconv, so build and use the upstream one with a compatible ABI,
8039 # and BSDs include libiconv in libc.
8040 #
8041 # We also provide `libiconvReal`, which will always be a standalone libiconv,
8042 # just in case you want it regardless of platform.
8043 libiconv =
8044 if
8045 lib.elem stdenv.hostPlatform.libc [
8046 "glibc"
8047 "musl"
8048 "nblibc"
8049 "wasilibc"
8050 "fblibc"
8051 ]
8052 then
8053 libcIconv pkgs.libc
8054 else if stdenv.hostPlatform.isDarwin then
8055 darwin.libiconv
8056 else
8057 libiconvReal;
8058
8059 libcIconv =
8060 libc:
8061 let
8062 inherit (libc) pname version;
8063 libcDev = lib.getDev libc;
8064 in
8065 runCommand "${pname}-iconv-${version}" { strictDeps = true; } ''
8066 mkdir -p $out/include
8067 ln -sv ${libcDev}/include/iconv.h $out/include
8068 '';
8069
8070 libiconvReal = callPackage ../development/libraries/libiconv { };
8071
8072 iconv =
8073 if
8074 lib.elem stdenv.hostPlatform.libc [
8075 "glibc"
8076 "musl"
8077 ]
8078 then
8079 lib.getBin libc
8080 else if stdenv.hostPlatform.isDarwin then
8081 lib.getBin libiconv
8082 else if stdenv.hostPlatform.isFreeBSD then
8083 lib.getBin freebsd.iconv
8084 else
8085 lib.getBin libiconvReal;
8086
8087 # On non-GNU systems we need GNU Gettext for libintl.
8088 libintl = if stdenv.hostPlatform.libc != "glibc" then gettext else null;
8089
8090 libidn2 = callPackage ../development/libraries/libidn2 { };
8091
8092 libinput = callPackage ../development/libraries/libinput {
8093 graphviz = graphviz-nox;
8094 };
8095
8096 # also known as libturbojpeg
8097 libjpeg = libjpeg_turbo;
8098 libjpeg8 = libjpeg_turbo.override { enableJpeg8 = true; };
8099
8100 malcontent = callPackage ../development/libraries/malcontent { };
8101
8102 malcontent-ui = callPackage ../development/libraries/malcontent/ui.nix { };
8103
8104 inherit
8105 ({
8106 libmicrohttpd_0_9_77 = callPackage ../development/libraries/libmicrohttpd/0.9.77.nix { };
8107 libmicrohttpd_1_0 = callPackage ../development/libraries/libmicrohttpd/1.0.nix { };
8108 })
8109 libmicrohttpd_0_9_77
8110 libmicrohttpd_1_0
8111 ;
8112
8113 libmicrohttpd = libmicrohttpd_1_0;
8114
8115 libosmscout = libsForQt5.callPackage ../development/libraries/libosmscout { };
8116
8117 libpeas = callPackage ../development/libraries/libpeas { };
8118 libpeas2 = callPackage ../development/libraries/libpeas/2.x.nix { };
8119
8120 libpng = callPackage ../development/libraries/libpng {
8121 stdenv =
8122 # libpng is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
8123 # that does not propagate xcrun.
8124 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
8125 };
8126
8127 libpng12 = callPackage ../development/libraries/libpng/12.nix { };
8128
8129 inherit
8130 (callPackages ../development/libraries/prometheus-client-c {
8131 stdenv = gccStdenv; # Required for darwin
8132 })
8133 libprom
8134 ;
8135
8136 libpulsar = callPackage ../development/libraries/libpulsar {
8137 protobuf = protobuf_21;
8138 };
8139
8140 libsigcxx = callPackage ../development/libraries/libsigcxx { };
8141
8142 libsigcxx30 = callPackage ../development/libraries/libsigcxx/3.0.nix { };
8143
8144 libsoup_2_4 = callPackage ../development/libraries/libsoup { };
8145
8146 libsoup_3 = callPackage ../development/libraries/libsoup/3.x.nix { };
8147
8148 libtorrent-rasterbar = libtorrent-rasterbar-2_0_x;
8149
8150 libubox-nossl = callPackage ../development/libraries/libubox { };
8151
8152 libubox = callPackage ../development/libraries/libubox { with_ustream_ssl = true; };
8153
8154 libubox-wolfssl = callPackage ../development/libraries/libubox {
8155 with_ustream_ssl = true;
8156 ustream-ssl = ustream-ssl-wolfssl;
8157 };
8158
8159 libubox-mbedtls = callPackage ../development/libraries/libubox {
8160 with_ustream_ssl = true;
8161 ustream-ssl = ustream-ssl-mbedtls;
8162 };
8163
8164 libunistring = callPackage ../development/libraries/libunistring { };
8165
8166 libunique = callPackage ../development/libraries/libunique { };
8167 libunique3 = callPackage ../development/libraries/libunique/3.x.nix { };
8168
8169 libusb-compat-0_1 = callPackage ../development/libraries/libusb-compat/0.1.nix { };
8170
8171 libunwind =
8172 # Use the system unwinder in the SDK but provide a compatibility package to:
8173 # 1. avoid evaluation errors with setting `unwind` to `null`; and
8174 # 2. provide a `.pc` for compatibility with packages that expect to find libunwind that way.
8175 if stdenv.hostPlatform.isDarwin then
8176 darwin.libunwind
8177 else if stdenv.hostPlatform.system == "riscv32-linux" then
8178 llvmPackages.libunwind
8179 else
8180 callPackage ../development/libraries/libunwind { };
8181
8182 libv4l = lowPrio (
8183 v4l-utils.override {
8184 withUtils = false;
8185 }
8186 );
8187
8188 libva-minimal = callPackage ../development/libraries/libva { minimal = true; };
8189 libva = libva-minimal.override { minimal = false; };
8190 libva-utils = callPackage ../development/libraries/libva/utils.nix { };
8191
8192 libva1 = callPackage ../development/libraries/libva/1.nix { };
8193 libva1-minimal = libva1.override { minimal = true; };
8194
8195 libwnck = callPackage ../development/libraries/libwnck { };
8196 libwnck2 = callPackage ../development/libraries/libwnck/2.nix { };
8197
8198 libwpd = callPackage ../development/libraries/libwpd { };
8199
8200 libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { };
8201
8202 libxcrypt = callPackage ../development/libraries/libxcrypt {
8203 fetchurl = stdenv.fetchurlBoot;
8204 perl = buildPackages.perl.override {
8205 enableCrypt = false;
8206 fetchurl = stdenv.fetchurlBoot;
8207 };
8208 };
8209 libxcrypt-legacy = libxcrypt.override { enableHashes = "all"; };
8210
8211 libxkbcommon = libxkbcommon_8;
8212
8213 inherit (callPackage ../development/libraries/libxml2 { })
8214 libxml2_13
8215 libxml2
8216 ;
8217
8218 libxml2Python =
8219 let
8220 inherit (python3.pkgs) libxml2;
8221 in
8222 pkgs.buildEnv {
8223 # slightly hacky
8224 name = "libxml2+py-${res.libxml2.version}";
8225 paths = with libxml2; [
8226 dev
8227 bin
8228 py
8229 ];
8230 # Avoid update.nix/tests conflicts with libxml2.
8231 passthru = builtins.removeAttrs libxml2.passthru [
8232 "updateScript"
8233 "tests"
8234 ];
8235 # the hook to find catalogs is hidden by buildEnv
8236 postBuild = ''
8237 mkdir "$out/nix-support"
8238 cp '${libxml2.dev}/nix-support/propagated-build-inputs' "$out/nix-support/"
8239 '';
8240 };
8241
8242 libxmlxx = callPackage ../development/libraries/libxmlxx { };
8243 libxmlxx3 = callPackage ../development/libraries/libxmlxx/v3.nix { };
8244
8245 libxslt = callPackage ../development/libraries/libxslt { };
8246
8247 libwpe = callPackage ../development/libraries/libwpe { };
8248
8249 libwpe-fdo = callPackage ../development/libraries/libwpe/fdo.nix { };
8250
8251 liquid-dsp = callPackage ../development/libraries/liquid-dsp {
8252 inherit (darwin) autoSignDarwinBinariesHook;
8253 };
8254
8255 luabind = callPackage ../development/libraries/luabind { lua = lua5_1; };
8256
8257 luabind_luajit = luabind.override { lua = luajit; };
8258
8259 luksmeta = callPackage ../development/libraries/luksmeta {
8260 asciidoc = asciidoc-full;
8261 };
8262
8263 matterhorn =
8264 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
8265 (
8266 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
8267 lib.id
8268 else
8269 haskell.lib.compose.justStaticExecutables
8270 )
8271 haskellPackages.matterhorn;
8272
8273 mbedtls_2 = callPackage ../development/libraries/mbedtls/2.nix { };
8274 mbedtls = callPackage ../development/libraries/mbedtls/3.nix { };
8275
8276 mediastreamer = libsForQt5.callPackage ../development/libraries/mediastreamer { };
8277
8278 mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
8279
8280 mergerfs = callPackage ../tools/filesystems/mergerfs { };
8281
8282 mergerfs-tools = callPackage ../tools/filesystems/mergerfs/tools.nix { };
8283
8284 simple-dftd3 = callPackage ../development/libraries/science/chemistry/simple-dftd3 { };
8285
8286 tblite = callPackage ../development/libraries/science/chemistry/tblite { };
8287
8288 ## libGL/libGLU/Mesa stuff
8289
8290 # Default libGL implementation.
8291 #
8292 # Android NDK provides an OpenGL implementation, we can just use that.
8293 #
8294 # On macOS, the SDK provides the OpenGL framework in `stdenv`.
8295 # Packages that still need GLX specifically can pull in `libGLX`
8296 # instead. If you have a package that should work without X11 but it
8297 # can’t find the library, it may help to add the path to
8298 # `$NIX_CFLAGS_COMPILE`:
8299 #
8300 # preConfigure = ''
8301 # export NIX_CFLAGS_COMPILE+=" -L$SDKROOT/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries"
8302 # '';
8303 #
8304 # If you still can’t get it working, please don’t hesitate to ping
8305 # @NixOS/darwin-maintainers to ask an expert to take a look.
8306 libGL =
8307 if stdenv.hostPlatform.useAndroidPrebuilt then
8308 stdenv
8309 else if stdenv.hostPlatform.isDarwin then
8310 null
8311 else
8312 libglvnd;
8313
8314 # On macOS, the SDK provides the OpenGL framework in `stdenv`.
8315 # Packages that use `libGLX` on macOS may need to depend on
8316 # `mesa_glu` directly if this doesn’t work.
8317 libGLU = if stdenv.hostPlatform.isDarwin then null else mesa_glu;
8318
8319 # `libglvnd` does not work (yet?) on macOS.
8320 libGLX = if stdenv.hostPlatform.isDarwin then mesa else libglvnd;
8321
8322 # On macOS, the SDK provides the GLUT framework in `stdenv`. Packages
8323 # that use `libGLX` on macOS may need to depend on `freeglut`
8324 # directly if this doesn’t work.
8325 libglut = if stdenv.hostPlatform.isDarwin then null else freeglut;
8326
8327 mesa =
8328 if stdenv.hostPlatform.isDarwin then
8329 callPackage ../development/libraries/mesa/darwin.nix { }
8330 else
8331 callPackage ../development/libraries/mesa { };
8332
8333 mesa_i686 = pkgsi686Linux.mesa; # make it build on Hydra
8334
8335 libgbm = callPackage ../development/libraries/mesa/gbm.nix { };
8336 mesa-gl-headers = callPackage ../development/libraries/mesa/headers.nix { };
8337
8338 ## End libGL/libGLU/Mesa stuff
8339
8340 mkvtoolnix-cli = mkvtoolnix.override {
8341 withGUI = false;
8342 };
8343
8344 mpeg2dec = libmpeg2;
8345
8346 msoffcrypto-tool = with python3.pkgs; toPythonApplication msoffcrypto-tool;
8347
8348 mpich = callPackage ../development/libraries/mpich {
8349 automake = automake116x;
8350 ch4backend = libfabric;
8351 };
8352
8353 mpich-pmix = mpich.override {
8354 pmixSupport = true;
8355 withPm = [ ];
8356 };
8357
8358 mygpoclient = with python3.pkgs; toPythonApplication mygpoclient;
8359
8360 nanovna-saver = libsForQt5.callPackage ../applications/science/electronics/nanovna-saver { };
8361
8362 nemo-qml-plugin-dbus = libsForQt5.callPackage ../development/libraries/nemo-qml-plugin-dbus { };
8363
8364 ncurses5 = ncurses.override {
8365 abiVersion = "5";
8366 };
8367 ncurses6 = ncurses.override {
8368 abiVersion = "6";
8369 };
8370 ncurses =
8371 if stdenv.hostPlatform.useiOSPrebuilt then
8372 null
8373 else
8374 callPackage ../development/libraries/ncurses {
8375 # ncurses is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
8376 stdenv = if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
8377 };
8378
8379 nettle = import ../development/libraries/nettle { inherit callPackage fetchurl; };
8380
8381 libnghttp2 = nghttp2.lib;
8382
8383 ngtcp2 = callPackage ../development/libraries/ngtcp2 { };
8384 ngtcp2-gnutls = callPackage ../development/libraries/ngtcp2/gnutls.nix { };
8385
8386 non = callPackage ../applications/audio/non {
8387 wafHook = (waf.override { extraTools = [ "gccdeps" ]; }).hook;
8388 };
8389
8390 nss_latest = callPackage ../development/libraries/nss/latest.nix { };
8391 nss_3_115 = callPackage ../development/libraries/nss/3_115.nix { };
8392 nss_3_114 = callPackage ../development/libraries/nss/3_114.nix { };
8393 nss_esr = callPackage ../development/libraries/nss/esr.nix { };
8394 nss = nss_esr;
8395 nssTools = nss.tools;
8396
8397 nuspell = callPackage ../development/libraries/nuspell { };
8398 nuspellWithDicts =
8399 dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; };
8400
8401 nv-codec-headers-9 = nv-codec-headers.override { majorVersion = "9"; };
8402 nv-codec-headers-10 = nv-codec-headers.override { majorVersion = "10"; };
8403 nv-codec-headers-11 = nv-codec-headers.override { majorVersion = "11"; };
8404 nv-codec-headers-12 = nv-codec-headers.override { majorVersion = "12"; };
8405
8406 nvidiaCtkPackages = callPackage ../by-name/nv/nvidia-container-toolkit/packages.nix { };
8407 inherit (nvidiaCtkPackages)
8408 nvidia-docker
8409 ;
8410
8411 nvidia-vaapi-driver = lib.hiPrio (callPackage ../development/libraries/nvidia-vaapi-driver { });
8412
8413 nvidia-system-monitor-qt = libsForQt5.callPackage ../tools/system/nvidia-system-monitor-qt { };
8414
8415 nvtopPackages = recurseIntoAttrs (import ../tools/system/nvtop { inherit callPackage stdenv; });
8416
8417 inherit (callPackages ../development/libraries/ogre { })
8418 ogre_13
8419 ogre_14
8420 ;
8421
8422 ogre = ogre_14;
8423
8424 openal = openalSoft;
8425
8426 opencascade-occt_7_6 = opencascade-occt.overrideAttrs rec {
8427 pname = "opencascade-occt";
8428 version = "7.6.2";
8429 commit = "V${builtins.replaceStrings [ "." ] [ "_" ] version}";
8430 src = fetchurl {
8431 name = "occt-${commit}.tar.gz";
8432 url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
8433 hash = "sha256-n3KFrN/mN1SVXfuhEUAQ1fJzrCvhiclxfEIouyj9Z18=";
8434 };
8435 patches = [
8436 # Backport GCC 14 build fix
8437 (fetchpatch {
8438 url = "https://github.com/Open-Cascade-SAS/OCCT/commit/7236e83dcc1e7284e66dc61e612154617ef715d6.patch";
8439 hash = "sha256-NoC2mE3DG78Y0c9UWonx1vmXoU4g5XxFUT3eVXqLU60=";
8440 })
8441 ];
8442 };
8443
8444 opencascade-occt_7_6_1 = opencascade-occt.overrideAttrs {
8445 pname = "opencascade-occt";
8446 version = "7.6.1";
8447 src = fetchFromGitHub {
8448 owner = "Open-Cascade-SAS";
8449 repo = "OCCT";
8450 rev = "V7_6_1";
8451 sha256 = "sha256-C02P3D363UwF0NM6R4D4c6yE5ZZxCcu5CpUaoTOxh7E=";
8452 };
8453 };
8454
8455 opencv4 = callPackage ../development/libraries/opencv/4.x.nix {
8456 pythonPackages = python3Packages;
8457 # TODO: LTO does not work.
8458 # https://github.com/NixOS/nixpkgs/issues/343123
8459 enableLto = false;
8460 };
8461
8462 opencv4WithoutCuda = opencv4.override {
8463 enableCuda = false;
8464 };
8465
8466 opencv = opencv4;
8467
8468 openexr = callPackage ../development/libraries/openexr/3.nix { };
8469 openexr_2 = callPackage ../development/libraries/openexr/2.nix { };
8470
8471 opencolorio = callPackage ../development/libraries/opencolorio { };
8472 opencolorio_1 = callPackage ../development/libraries/opencolorio/1.x.nix { };
8473
8474 openstackclient = with python313Packages; toPythonApplication python-openstackclient;
8475 openstackclient-full = openstackclient.overridePythonAttrs (oldAttrs: {
8476 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.cli-plugins;
8477 });
8478 barbicanclient = with python313Packages; toPythonApplication python-barbicanclient;
8479 glanceclient = with python313Packages; toPythonApplication python-glanceclient;
8480 heatclient = with python313Packages; toPythonApplication python-heatclient;
8481 ironicclient = with python313Packages; toPythonApplication python-ironicclient;
8482 magnumclient = with python313Packages; toPythonApplication python-magnumclient;
8483 manilaclient = with python313Packages; toPythonApplication python-manilaclient;
8484 mistralclient = with python313Packages; toPythonApplication python-mistralclient;
8485 neutronclient = with python313Packages; toPythonApplication python-neutronclient;
8486 swiftclient = with python313Packages; toPythonApplication python-swiftclient;
8487 troveclient = with python313Packages; toPythonApplication python-troveclient;
8488 watcherclient = with python313Packages; toPythonApplication python-watcherclient;
8489 zunclient = with python313Packages; toPythonApplication python-zunclient;
8490
8491 inherit (callPackages ../development/libraries/libressl { })
8492 libressl_3_9
8493 libressl_4_0
8494 libressl_4_1
8495 ;
8496
8497 libressl = libressl_4_1;
8498
8499 openssl = openssl_3_5;
8500
8501 openssl_legacy = openssl.override {
8502 conf = ../development/libraries/openssl/3.0/legacy.cnf;
8503 };
8504
8505 inherit (callPackages ../development/libraries/openssl { })
8506 openssl_1_1
8507 openssl_3
8508 openssl_3_5
8509 ;
8510
8511 pcre = callPackage ../development/libraries/pcre { };
8512 # pcre32 seems unused
8513 pcre-cpp = res.pcre.override { variant = "cpp"; };
8514
8515 pcre2 = callPackage ../development/libraries/pcre2 { };
8516
8517 pdfhummus = libsForQt5.callPackage ../development/libraries/pdfhummus { };
8518
8519 inherit
8520 (callPackage ../development/libraries/physfs {
8521 })
8522 physfs_2
8523 physfs
8524 ;
8525
8526 pingvin-share = callPackage ../servers/web-apps/pingvin-share { };
8527
8528 pipelight = callPackage ../tools/misc/pipelight {
8529 stdenv = stdenv_32bit;
8530 wine-staging = pkgsi686Linux.wine-staging;
8531 };
8532
8533 place-cursor-at = haskell.lib.compose.justStaticExecutables haskellPackages.place-cursor-at;
8534
8535 podofo = podofo_1_0;
8536
8537 poppler = callPackage ../development/libraries/poppler { lcms = lcms2; };
8538
8539 poppler_gi = lowPrio (
8540 poppler.override {
8541 introspectionSupport = true;
8542 }
8543 );
8544
8545 poppler_min = poppler.override {
8546 # TODO: maybe reduce even more
8547 minimal = true;
8548 suffix = "min";
8549 };
8550
8551 poppler-utils = poppler.override {
8552 suffix = "utils";
8553 utils = true;
8554 };
8555
8556 prospector = callPackage ../development/tools/prospector { };
8557
8558 protobuf = protobuf_32;
8559
8560 inherit
8561 ({
8562 protobuf_32 = callPackage ../development/libraries/protobuf/32.nix { };
8563 protobuf_31 = callPackage ../development/libraries/protobuf/31.nix { };
8564 protobuf_30 = callPackage ../development/libraries/protobuf/30.nix { };
8565 protobuf_29 = callPackage ../development/libraries/protobuf/29.nix {
8566 # More recent versions of abseil seem to be missing absl::if_constexpr
8567 abseil-cpp = abseil-cpp_202407;
8568 };
8569 protobuf_27 = callPackage ../development/libraries/protobuf/27.nix { };
8570 protobuf_25 = callPackage ../development/libraries/protobuf/25.nix { };
8571 protobuf_21 = callPackage ../development/libraries/protobuf/21.nix {
8572 abseil-cpp = abseil-cpp_202103;
8573 };
8574 })
8575 protobuf_32
8576 protobuf_31
8577 protobuf_30
8578 protobuf_29
8579 protobuf_27
8580 protobuf_25
8581 protobuf_21
8582 ;
8583
8584 flatbuffers = callPackage ../development/libraries/flatbuffers { };
8585 flatbuffers_23 = callPackage ../development/libraries/flatbuffers/23.nix { };
8586
8587 nanopbMalloc = callPackage ../by-name/na/nanopb/package.nix { enableMalloc = true; };
8588
8589 pth = if stdenv.hostPlatform.isMusl then npth else gnupth;
8590
8591 python-qt = libsForQt5.callPackage ../development/libraries/python-qt { };
8592
8593 pyotherside = libsForQt5.callPackage ../development/libraries/pyotherside { };
8594
8595 qbs = libsForQt5.callPackage ../development/tools/build-managers/qbs { };
8596
8597 qdjango = libsForQt5.callPackage ../development/libraries/qdjango { };
8598
8599 qmenumodel = libsForQt5.callPackage ../development/libraries/qmenumodel {
8600 inherit (lomiri) cmake-extras;
8601 };
8602
8603 quarto = callPackage ../development/libraries/quarto { };
8604
8605 quartoMinimal = callPackage ../development/libraries/quarto {
8606 rWrapper = null;
8607 python3 = null;
8608 };
8609
8610 qt5 = recurseIntoAttrs (
8611 makeOverridable (import ../development/libraries/qt-5/5.15) {
8612 inherit (__splicedPackages)
8613 makeScopeWithSplicing'
8614 generateSplicesForMkScope
8615 lib
8616 stdenv
8617 fetchurl
8618 fetchpatch
8619 fetchgit
8620 fetchFromGitHub
8621 makeSetupHook
8622 makeWrapper
8623 bison
8624 cups
8625 dconf
8626 harfbuzz
8627 libGL
8628 perl
8629 gtk3
8630 python3
8631 llvmPackages_19
8632 darwin
8633 ;
8634 inherit (__splicedPackages.gst_all_1) gstreamer gst-plugins-base;
8635 inherit config;
8636 }
8637 );
8638
8639 libsForQt5 = recurseIntoAttrs (
8640 import ./qt5-packages.nix {
8641 inherit
8642 lib
8643 config
8644 __splicedPackages
8645 makeScopeWithSplicing'
8646 generateSplicesForMkScope
8647 pkgsHostTarget
8648 ;
8649 }
8650 );
8651
8652 # plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop
8653 plasma5Packages = libsForQt5;
8654
8655 qtEnv = qt5.env;
8656 qt5Full = qt5.full;
8657
8658 qt6 = recurseIntoAttrs (callPackage ../development/libraries/qt-6 { });
8659
8660 qt6Packages = recurseIntoAttrs (
8661 import ./qt6-packages.nix {
8662 inherit
8663 lib
8664 config
8665 __splicedPackages
8666 makeScopeWithSplicing'
8667 generateSplicesForMkScope
8668 pkgsHostTarget
8669 kdePackages
8670 ;
8671 inherit stdenv;
8672 }
8673 );
8674
8675 readline70 = callPackage ../development/libraries/readline/7.0.nix { };
8676
8677 readline = callPackage ../development/libraries/readline/8.3.nix { };
8678
8679 readmdict = with python3Packages; toPythonApplication readmdict;
8680
8681 kissfftFloat = kissfft.override {
8682 datatype = "float";
8683 };
8684
8685 lambdabot = callPackage ../development/tools/haskell/lambdabot {
8686 haskellLib = haskell.lib.compose;
8687 };
8688
8689 librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { };
8690
8691 librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { };
8692
8693 librdf_redland = callPackage ../development/libraries/librdf/redland.nix { };
8694 redland = librdf_redland; # added 2018-04-25
8695
8696 renovate = callPackage ../by-name/re/renovate/package.nix {
8697 nodejs = nodejs_22;
8698 };
8699
8700 qradiolink = callPackage ../applications/radio/qradiolink {
8701 protobuf = protobuf_21;
8702 };
8703
8704 qadwaitadecorations-qt6 = callPackage ../by-name/qa/qadwaitadecorations/package.nix {
8705 useQt6 = true;
8706 };
8707
8708 qgnomeplatform = libsForQt5.callPackage ../development/libraries/qgnomeplatform { };
8709
8710 qgnomeplatform-qt6 = qt6Packages.callPackage ../development/libraries/qgnomeplatform {
8711 useQt6 = true;
8712 };
8713
8714 reposilitePlugins = recurseIntoAttrs (callPackage ../by-name/re/reposilite/plugins.nix { });
8715
8716 rhino = callPackage ../development/libraries/java/rhino { };
8717
8718 rocksdb_9_10 = rocksdb.overrideAttrs rec {
8719 pname = "rocksdb";
8720 version = "9.10.0";
8721 src = fetchFromGitHub {
8722 owner = "facebook";
8723 repo = pname;
8724 rev = "v${version}";
8725 hash = "sha256-G+DlQwEUyd7JOCjS1Hg1cKWmA/qAiK8UpUIKcP+riGQ=";
8726 };
8727 };
8728
8729 rocksdb_8_11 = rocksdb.overrideAttrs rec {
8730 pname = "rocksdb";
8731 version = "8.11.4";
8732 src = fetchFromGitHub {
8733 owner = "facebook";
8734 repo = pname;
8735 rev = "v${version}";
8736 hash = "sha256-ZrU7G3xeimF3H2LRGBDHOq936u5pH/3nGecM4XEoWc8=";
8737 };
8738 };
8739
8740 rocksdb_8_3 = rocksdb.overrideAttrs rec {
8741 pname = "rocksdb";
8742 version = "8.3.2";
8743 src = fetchFromGitHub {
8744 owner = "facebook";
8745 repo = pname;
8746 rev = "v${version}";
8747 hash = "sha256-mfIRQ8nkUbZ3Bugy3NAvOhcfzFY84J2kBUIUBcQ2/Qg=";
8748 };
8749 };
8750
8751 rocksdb_7_10 = rocksdb.overrideAttrs rec {
8752 pname = "rocksdb";
8753 version = "7.10.2";
8754 src = fetchFromGitHub {
8755 owner = "facebook";
8756 repo = pname;
8757 rev = "v${version}";
8758 hash = "sha256-U2ReSrJwjAXUdRmwixC0DQXht/h/6rV8SOf5e2NozIs=";
8759 };
8760 };
8761
8762 rocksdb_6_23 = rocksdb.overrideAttrs rec {
8763 pname = "rocksdb";
8764 version = "6.23.3";
8765 src = fetchFromGitHub {
8766 owner = "facebook";
8767 repo = pname;
8768 rev = "v${version}";
8769 hash = "sha256-SsDqhjdCdtIGNlsMj5kfiuS3zSGwcxi4KV71d95h7yk=";
8770 };
8771 };
8772
8773 rshell = python3.pkgs.callPackage ../development/embedded/rshell { };
8774
8775 schroedinger = callPackage ../development/libraries/schroedinger { };
8776
8777 SDL = SDL_compat;
8778 SDL2 = sdl2-compat;
8779
8780 sdr-j-fm = libsForQt5.callPackage ../applications/radio/sdr-j-fm { };
8781
8782 sigdigger = libsForQt5.callPackage ../applications/radio/sigdigger { };
8783
8784 sev-snp-measure = with python3Packages; toPythonApplication sev-snp-measure;
8785
8786 graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix { };
8787
8788 simavr = callPackage ../development/tools/simavr {
8789 avrgcc = pkgsCross.avr.buildPackages.gcc;
8790 avrlibc = pkgsCross.avr.libc;
8791 };
8792
8793 simpleitk = callPackage ../development/libraries/simpleitk { lua = lua5_4; };
8794
8795 skawarePackages = recurseIntoAttrs (callPackage ../development/skaware-packages { });
8796
8797 inherit (skawarePackages)
8798 execline
8799 execline-man-pages
8800 mdevd
8801 nsss
8802 s6
8803 s6-dns
8804 s6-linux-init
8805 s6-linux-utils
8806 s6-man-pages
8807 s6-networking
8808 s6-networking-man-pages
8809 s6-portable-utils
8810 s6-portable-utils-man-pages
8811 s6-rc
8812 s6-rc-man-pages
8813 sdnotify-wrapper
8814 skalibs
8815 skalibs_2_10
8816 tipidee
8817 utmps
8818 ;
8819
8820 kgt = callPackage ../development/tools/kgt {
8821 inherit (skawarePackages) cleanPackaging;
8822 };
8823
8824 slibGuile = callPackage ../development/libraries/slib {
8825 scheme = guile;
8826 };
8827
8828 soapysdr = callPackage ../applications/radio/soapysdr { };
8829
8830 soapysdr-with-plugins = callPackage ../applications/radio/soapysdr {
8831 extraPackages = [
8832 limesuite
8833 soapyairspy
8834 soapyaudio
8835 soapybladerf
8836 soapyhackrf
8837 soapyplutosdr
8838 soapyremote
8839 soapyrtlsdr
8840 soapyuhd
8841 ];
8842 };
8843
8844 spandsp = callPackage ../development/libraries/spandsp { };
8845 spandsp3 = callPackage ../development/libraries/spandsp/3.nix { };
8846
8847 speechd-minimal = speechd.override {
8848 withLibao = false;
8849 withPulse = false;
8850 withAlsa = false;
8851 withOss = false;
8852 withFlite = false;
8853 withEspeak = false;
8854 withPico = false;
8855 libsOnly = true;
8856 };
8857
8858 speex = callPackage ../development/libraries/speex {
8859 fftw = fftwFloat;
8860 };
8861
8862 speexdsp = callPackage ../development/libraries/speexdsp {
8863 fftw = fftwFloat;
8864 };
8865
8866 sphinx = with python3Packages; toPythonApplication sphinx;
8867
8868 sphinx-autobuild = with python3Packages; toPythonApplication sphinx-autobuild;
8869
8870 sphinx-serve = with python3Packages; toPythonApplication sphinx-serve;
8871
8872 inherit (python3Packages) sphinxHook;
8873
8874 suwidgets = libsForQt5.callPackage ../applications/radio/suwidgets { };
8875
8876 sqlite = lowPrio (callPackage ../development/libraries/sqlite { });
8877
8878 unqlite = lowPrio (callPackage ../development/libraries/unqlite { });
8879
8880 inherit
8881 (callPackage ../development/libraries/sqlite/tools.nix {
8882 })
8883 sqlite-analyzer
8884 sqldiff
8885 sqlite-rsync
8886 ;
8887
8888 sqlar = callPackage ../development/libraries/sqlite/sqlar.nix { };
8889
8890 sqlite-interactive = (sqlite.override { interactive = true; }).bin;
8891
8892 stlink-gui = callPackage ../by-name/st/stlink/package.nix { withGUI = true; };
8893
8894 streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix { };
8895
8896 structuresynth = libsForQt5.callPackage ../development/libraries/structuresynth { };
8897
8898 svxlink = libsForQt5.callPackage ../applications/radio/svxlink { };
8899
8900 szurubooru = callPackage ../servers/web-apps/szurubooru { };
8901
8902 tclap = tclap_1_2;
8903
8904 tclap_1_2 = callPackage ../development/libraries/tclap/1.2.nix { };
8905
8906 tclap_1_4 = callPackage ../development/libraries/tclap/1.4.nix { };
8907
8908 termbench-pro = callPackage ../by-name/te/termbench-pro/package.nix {
8909 fmt = fmt_11;
8910 };
8911
8912 tinyxml = tinyxml2;
8913
8914 tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { };
8915
8916 tk = tk-8_6;
8917
8918 tk-9_0 = callPackage ../development/libraries/tk/9.0.nix { tcl = tcl-9_0; };
8919 tk-8_6 = callPackage ../development/libraries/tk/8.6.nix { };
8920 tk-8_5 = callPackage ../development/libraries/tk/8.5.nix { tcl = tcl-8_5; };
8921
8922 tpm2-tss = callPackage ../development/libraries/tpm2-tss {
8923 autoreconfHook = buildPackages.autoreconfHook269;
8924 };
8925
8926 unixODBCDrivers = recurseIntoAttrs (callPackages ../development/libraries/unixODBCDrivers { });
8927
8928 valeStyles = recurseIntoAttrs (callPackages ../by-name/va/vale/styles.nix { });
8929
8930 valhalla = callPackage ../development/libraries/valhalla {
8931 boost = boost.override {
8932 enablePython = true;
8933 python = python3;
8934 };
8935 protobuf = protobuf_21.override {
8936 abseil-cpp = abseil-cpp_202103.override {
8937 cxxStandard = "17";
8938 };
8939 };
8940 };
8941
8942 vc = callPackage ../development/libraries/vc { };
8943
8944 vc_0_7 = callPackage ../development/libraries/vc/0.7.nix { };
8945
8946 vencord-web-extension = callPackage ../by-name/ve/vencord/package.nix { buildWebExtension = true; };
8947
8948 vid-stab = callPackage ../development/libraries/vid-stab {
8949 inherit (llvmPackages) openmp;
8950 };
8951
8952 vigra = callPackage ../development/libraries/vigra {
8953 hdf5 = hdf5.override { usev110Api = true; };
8954 };
8955
8956 # Temporarily use python 3.12
8957 # See: https://github.com/vllm-project/vllm/issues/12083
8958 vllm = with python312Packages; toPythonApplication vllm;
8959
8960 vte-gtk4 = vte.override {
8961 gtkVersion = "4";
8962 };
8963
8964 vtfedit = callPackage ../by-name/vt/vtfedit/package.nix {
8965 wine = wineWowPackages.staging;
8966 };
8967
8968 inherit (callPackage ../development/libraries/vtk { }) vtk_9_5;
8969
8970 vtk = vtk_9_5;
8971
8972 vtk-full = vtk.override {
8973 withQt6 = true;
8974 mpiSupport = true;
8975 pythonSupport = true;
8976 };
8977
8978 vtkWithQt6 = vtk.override { withQt6 = true; };
8979
8980 vulkan-caps-viewer = libsForQt5.callPackage ../tools/graphics/vulkan-caps-viewer { };
8981
8982 wayland = callPackage ../development/libraries/wayland { };
8983 wayland-scanner = callPackage ../development/libraries/wayland/scanner.nix { };
8984
8985 wayland-protocols = callPackage ../development/libraries/wayland/protocols.nix { };
8986
8987 waylandpp = callPackage ../development/libraries/waylandpp {
8988 graphviz = graphviz-nox;
8989 };
8990
8991 webkitgtk_4_0 = callPackage ../development/libraries/webkitgtk {
8992 harfbuzz = harfbuzzFull;
8993 libsoup = libsoup_2_4;
8994 inherit (gst_all_1) gst-plugins-base gst-plugins-bad;
8995 };
8996
8997 webkitgtk_4_1 = webkitgtk_4_0.override {
8998 libsoup = libsoup_3;
8999 };
9000
9001 webkitgtk_6_0 = webkitgtk_4_0.override {
9002 libsoup = libsoup_3;
9003 gtk3 = gtk4;
9004 };
9005
9006 wlr-protocols = callPackage ../development/libraries/wlroots/protocols.nix { };
9007
9008 wt = wt4;
9009 inherit (libsForQt5.callPackage ../development/libraries/wt { })
9010 wt4
9011 ;
9012
9013 inherit (callPackages ../development/libraries/xapian { })
9014 xapian_1_4
9015 ;
9016 xapian = xapian_1_4;
9017
9018 xapian-omega = callPackage ../development/libraries/xapian/tools/omega {
9019 libmagic = file;
9020 };
9021
9022 xcb-util-cursor = xorg.xcbutilcursor;
9023 xcb-util-cursor-HEAD = callPackage ../development/libraries/xcb-util-cursor/HEAD.nix { };
9024
9025 xcbutilxrm = callPackage ../servers/x11/xorg/xcb-util-xrm.nix { };
9026
9027 xgboostWithCuda = xgboost.override { cudaSupport = true; };
9028
9029 zlib = callPackage ../development/libraries/zlib {
9030 stdenv =
9031 # zlib is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
9032 # that does not propagate xcrun.
9033 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
9034 };
9035
9036 inherit
9037 (rec {
9038 zigPackages = recurseIntoAttrs (callPackage ../development/compilers/zig { });
9039
9040 zig_0_13 = zigPackages."0.13";
9041 zig_0_14 = zigPackages."0.14";
9042 zig_0_15 = zigPackages."0.15";
9043 })
9044 zigPackages
9045 zig_0_13
9046 zig_0_14
9047 zig_0_15
9048 ;
9049
9050 # If this is updated, the default zls version should also be updated to match the default zig version.
9051 zig = zig_0_15;
9052
9053 zigStdenv = if stdenv.cc.isZig then stdenv else lowPrio zig.passthru.stdenv;
9054
9055 inherit (callPackages ../development/tools/zls { })
9056 zls_0_14
9057 zls_0_15
9058 ;
9059
9060 # This should be kept updated to ensure the default zls version matches the default zig version.
9061 zls = zls_0_15;
9062
9063 libzint = zint-qt.override { withGUI = false; };
9064
9065 aroccPackages = recurseIntoAttrs (callPackage ../development/compilers/arocc { });
9066 arocc = aroccPackages.latest;
9067
9068 aroccStdenv = if stdenv.cc.isArocc then stdenv else lowPrio arocc.cc.passthru.stdenv;
9069
9070 ### DEVELOPMENT / LIBRARIES / DARWIN SDKS
9071
9072 apple-sdk_11 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "11"; };
9073 apple-sdk_12 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "12"; };
9074 apple-sdk_13 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "13"; };
9075 apple-sdk_14 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "14"; };
9076 apple-sdk_15 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "15"; };
9077
9078 darwinMinVersionHook =
9079 deploymentTarget:
9080 makeSetupHook {
9081 name = "darwin-deployment-target-hook-${deploymentTarget}";
9082 substitutions = {
9083 darwinMinVersionVariable = lib.escapeShellArg stdenv.hostPlatform.darwinMinVersionVariable;
9084 deploymentTarget = lib.escapeShellArg deploymentTarget;
9085 };
9086 } ../os-specific/darwin/darwin-min-version-hook/setup-hook.sh;
9087
9088 ### DEVELOPMENT / TESTING TOOLS
9089
9090 atf = callPackage ../by-name/at/atf/package.nix {
9091 stdenv =
9092 # atf is a dependency of libiconv. Avoid an infinite recursion with `pkgsStatic` by using a bootstrap stdenv.
9093 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
9094 };
9095
9096 ### DEVELOPMENT / LIBRARIES / AGDA
9097
9098 agdaPackages = recurseIntoAttrs (
9099 callPackage ./agda-packages.nix {
9100 inherit (haskellPackages) Agda;
9101 }
9102 );
9103 agda = agdaPackages.agda;
9104
9105 ### DEVELOPMENT / LIBRARIES / BASH
9106
9107 ### DEVELOPMENT / LIBRARIES / JAVA
9108
9109 saxonb = saxonb_8_8;
9110 saxon-he = saxon_12-he;
9111
9112 inherit
9113 (callPackages ../development/libraries/java/saxon {
9114 jre = jre_headless;
9115 jre8 = jre8_headless;
9116 })
9117 saxon
9118 saxonb_8_8
9119 saxonb_9_1
9120 saxon_9-he
9121 saxon_11-he
9122 saxon_12-he
9123 ;
9124
9125 ### DEVELOPMENT / GO
9126
9127 # the unversioned attributes should always point to the same go version
9128 go = go_1_25;
9129 buildGoModule = buildGo125Module;
9130
9131 go_latest = go_1_25;
9132 buildGoLatestModule = buildGo125Module;
9133
9134 go_1_24 = callPackage ../development/compilers/go/1.24.nix { };
9135 buildGo124Module = callPackage ../build-support/go/module.nix {
9136 go = buildPackages.go_1_24;
9137 };
9138
9139 go_1_25 = callPackage ../development/compilers/go/1.25.nix { };
9140 buildGo125Module = callPackage ../build-support/go/module.nix {
9141 go = buildPackages.go_1_25;
9142 };
9143
9144 ### DEVELOPMENT / HARE
9145
9146 hareHook = callPackage ../by-name/ha/hare/hook.nix { };
9147
9148 ### DEVELOPMENT / JAVA MODULES
9149
9150 javaPackages = recurseIntoAttrs (callPackage ./java-packages.nix { });
9151
9152 ### DEVELOPMENT / LISP MODULES
9153
9154 asdf = callPackage ../development/lisp-modules/asdf {
9155 texLive = null;
9156 };
9157
9158 # QuickLisp minimal version
9159 asdf_2_26 = callPackage ../development/lisp-modules/asdf/2.26.nix {
9160 texLive = null;
9161 };
9162 # Currently most popular
9163 asdf_3_1 = callPackage ../development/lisp-modules/asdf/3.1.nix {
9164 texLive = null;
9165 };
9166 # Latest
9167 asdf_3_3 = callPackage ../development/lisp-modules/asdf/3.3.nix {
9168 texLive = null;
9169 };
9170
9171 wrapLisp = callPackage ../development/lisp-modules/nix-cl.nix { };
9172
9173 # Armed Bear Common Lisp
9174 abcl = wrapLisp {
9175 pkg = callPackage ../development/compilers/abcl { };
9176 faslExt = "abcl";
9177 };
9178
9179 # Clozure Common Lisp
9180 ccl = wrapLisp {
9181 pkg = callPackage ../development/compilers/ccl {
9182 inherit (buildPackages.darwin) bootstrap_cmds;
9183 };
9184 faslExt = "lx64fsl";
9185 };
9186
9187 # Clasp Common Lisp
9188 clasp-common-lisp = wrapLisp {
9189 pkg = callPackage ../development/compilers/clasp { };
9190 faslExt = "fasl";
9191 };
9192
9193 # CLISP
9194 clisp = wrapLisp {
9195 pkg = callPackage ../development/interpreters/clisp { };
9196 faslExt = "fas";
9197 flags = [
9198 "-E"
9199 "UTF-8"
9200 ];
9201 };
9202
9203 wrapLispi686Linux = pkgsi686Linux.callPackage ../development/lisp-modules/nix-cl.nix { };
9204
9205 # CMU Common Lisp
9206 cmucl_binary = wrapLispi686Linux {
9207 pkg = pkgsi686Linux.callPackage ../development/compilers/cmucl/binary.nix { };
9208 faslExt = "sse2f";
9209 program = "lisp";
9210 };
9211
9212 # Embeddable Common Lisp
9213 ecl = wrapLisp {
9214 pkg = callPackage ../development/compilers/ecl { };
9215 faslExt = "fas";
9216 };
9217 ecl_16_1_2 = wrapLisp {
9218 pkg = callPackage ../development/compilers/ecl/16.1.2.nix { };
9219 faslExt = "fas";
9220 };
9221
9222 # GNU Common Lisp
9223 gcl = wrapLisp {
9224 pkg = callPackage ../development/compilers/gcl { };
9225 faslExt = "o";
9226 };
9227
9228 # ManKai Common Lisp
9229 mkcl = wrapLisp {
9230 pkg = callPackage ../development/compilers/mkcl { };
9231 faslExt = "fas";
9232 };
9233
9234 # Steel Bank Common Lisp
9235 sbcl_2_4_6 = wrapLisp {
9236 pkg = callPackage ../development/compilers/sbcl { version = "2.4.6"; };
9237 faslExt = "fasl";
9238 flags = [
9239 "--dynamic-space-size"
9240 "3000"
9241 ];
9242 };
9243 sbcl_2_4_10 = wrapLisp {
9244 pkg = callPackage ../development/compilers/sbcl { version = "2.4.10"; };
9245 faslExt = "fasl";
9246 flags = [
9247 "--dynamic-space-size"
9248 "3000"
9249 ];
9250 };
9251 sbcl_2_5_5 = wrapLisp {
9252 pkg = callPackage ../development/compilers/sbcl { version = "2.5.5"; };
9253 faslExt = "fasl";
9254 flags = [
9255 "--dynamic-space-size"
9256 "3000"
9257 ];
9258 };
9259 sbcl_2_5_7 = wrapLisp {
9260 pkg = callPackage ../development/compilers/sbcl { version = "2.5.7"; };
9261 faslExt = "fasl";
9262 flags = [
9263 "--dynamic-space-size"
9264 "3000"
9265 ];
9266 };
9267 sbcl = sbcl_2_5_7;
9268
9269 sbclPackages = recurseIntoAttrs sbcl.pkgs;
9270
9271 ### DEVELOPMENT / PERL MODULES
9272
9273 perlInterpreters = import ../development/interpreters/perl { inherit callPackage; };
9274 inherit (perlInterpreters) perl538 perl540;
9275
9276 perl538Packages = recurseIntoAttrs perl538.pkgs;
9277 perl540Packages = recurseIntoAttrs perl540.pkgs;
9278
9279 perl = perl540;
9280 perlPackages = perl540Packages;
9281
9282 ack = perlPackages.ack;
9283
9284 perlcritic = perlPackages.PerlCritic;
9285
9286 sqitchMysql =
9287 (callPackage ../development/tools/misc/sqitch {
9288 mysqlSupport = true;
9289 }).overrideAttrs
9290 { pname = "sqitch-mysql"; };
9291
9292 sqitchPg =
9293 (callPackage ../development/tools/misc/sqitch {
9294 postgresqlSupport = true;
9295 }).overrideAttrs
9296 { pname = "sqitch-pg"; };
9297
9298 sqitchSqlite =
9299 (callPackage ../development/tools/misc/sqitch {
9300 sqliteSupport = true;
9301 }).overrideAttrs
9302 { pname = "sqitch-sqlite"; };
9303
9304 ### DEVELOPMENT / R MODULES
9305
9306 R = callPackage ../applications/science/math/R {
9307 # TODO: split docs into a separate output
9308 withRecommendedPackages = false;
9309 };
9310
9311 rWrapper = callPackage ../development/r-modules/wrapper.nix {
9312 recommendedPackages = with rPackages; [
9313 boot
9314 class
9315 cluster
9316 codetools
9317 foreign
9318 KernSmooth
9319 lattice
9320 MASS
9321 Matrix
9322 mgcv
9323 nlme
9324 nnet
9325 rpart
9326 spatial
9327 survival
9328 ];
9329 # Override this attribute to register additional libraries.
9330 packages = [ ];
9331 };
9332
9333 radianWrapper = callPackage ../development/r-modules/wrapper-radian.nix {
9334 recommendedPackages = with rPackages; [
9335 boot
9336 class
9337 cluster
9338 codetools
9339 foreign
9340 KernSmooth
9341 lattice
9342 MASS
9343 Matrix
9344 mgcv
9345 nlme
9346 nnet
9347 rpart
9348 spatial
9349 survival
9350 ];
9351 # Override this attribute to register additional libraries.
9352 packages = [ ];
9353 # Override this attribute if you want to expose R with the same set of
9354 # packages as specified in radian
9355 wrapR = false;
9356 };
9357
9358 rstudioWrapper = callPackage ../development/r-modules/wrapper-rstudio.nix {
9359 recommendedPackages = with rPackages; [
9360 boot
9361 class
9362 cluster
9363 codetools
9364 foreign
9365 KernSmooth
9366 lattice
9367 MASS
9368 Matrix
9369 mgcv
9370 nlme
9371 nnet
9372 rpart
9373 spatial
9374 survival
9375 ];
9376 # Override this attribute to register additional libraries.
9377 packages = [ ];
9378 };
9379
9380 rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; };
9381
9382 rPackages = dontRecurseIntoAttrs (
9383 callPackage ../development/r-modules {
9384 overrides = (config.rPackageOverrides or (_: { })) pkgs;
9385 }
9386 );
9387
9388 ### SERVERS
9389
9390 apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { };
9391 apacheHttpd = apacheHttpd_2_4;
9392
9393 apacheHttpdPackagesFor =
9394 apacheHttpd: self:
9395 let
9396 callPackage = newScope self;
9397 in
9398 {
9399 inherit apacheHttpd;
9400 mod_auth_mellon = callPackage ../servers/http/apache-modules/mod_auth_mellon { };
9401 mod_ca = callPackage ../servers/http/apache-modules/mod_ca { };
9402 mod_crl = callPackage ../servers/http/apache-modules/mod_crl { };
9403 mod_cspnonce = callPackage ../servers/http/apache-modules/mod_cspnonce { };
9404 mod_csr = callPackage ../servers/http/apache-modules/mod_csr { };
9405 mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { };
9406 mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { };
9407 mod_itk = callPackage ../servers/http/apache-modules/mod_itk { };
9408 mod_jk = callPackage ../servers/http/apache-modules/mod_jk { };
9409 mod_mbtiles = callPackage ../servers/http/apache-modules/mod_mbtiles { };
9410 mod_ocsp = callPackage ../servers/http/apache-modules/mod_ocsp { };
9411 mod_perl = callPackage ../servers/http/apache-modules/mod_perl { };
9412 mod_pkcs12 = callPackage ../servers/http/apache-modules/mod_pkcs12 { };
9413 mod_python = callPackage ../servers/http/apache-modules/mod_python { };
9414 mod_scep = callPackage ../servers/http/apache-modules/mod_scep { };
9415 mod_spkac = callPackage ../servers/http/apache-modules/mod_spkac { };
9416 mod_tile = callPackage ../servers/http/apache-modules/mod_tile { };
9417 mod_timestamp = callPackage ../servers/http/apache-modules/mod_timestamp { };
9418 mod_wsgi3 = callPackage ../servers/http/apache-modules/mod_wsgi { };
9419 php = pkgs.php.override { inherit apacheHttpd; };
9420 subversion = pkgs.subversion.override {
9421 httpServer = true;
9422 inherit apacheHttpd;
9423 };
9424 }
9425 // lib.optionalAttrs config.allowAliases {
9426 mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4";
9427 mod_wsgi = self.mod_wsgi2;
9428 mod_wsgi2 = throw "mod_wsgi2 has been removed since Python 2 is EOL. Use mod_wsgi3 instead";
9429 };
9430
9431 apacheHttpdPackages_2_4 = recurseIntoAttrs (
9432 apacheHttpdPackagesFor apacheHttpd_2_4 apacheHttpdPackages_2_4
9433 );
9434 apacheHttpdPackages = apacheHttpdPackages_2_4;
9435
9436 appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { };
9437
9438 cassandra_4 = callPackage ../servers/nosql/cassandra/4.nix {
9439 # Effective Cassandra 4.0.2 there is full Java 11 support
9440 # -- https://cassandra.apache.org/doc/latest/cassandra/new/java11.html
9441 jre = pkgs.jdk11_headless;
9442 python = python3;
9443 };
9444 cassandra = cassandra_4;
9445
9446 cassandra-cpp-driver = callPackage ../development/libraries/cassandra-cpp-driver/default.nix { };
9447
9448 apache-jena = callPackage ../servers/nosql/apache-jena/binary.nix {
9449 java = jre;
9450 };
9451
9452 apache-jena-fuseki = callPackage ../servers/nosql/apache-jena/fuseki-binary.nix {
9453 java = jre;
9454 };
9455
9456 inherit (callPackages ../servers/asterisk { })
9457 asterisk
9458 asterisk-stable
9459 asterisk-lts
9460 asterisk_18
9461 asterisk_20
9462 asterisk_22
9463 ;
9464
9465 asterisk-ldap = lowPrio (asterisk.override { ldapSupport = true; });
9466
9467 dnsutils = bind.dnsutils;
9468 dig = lib.addMetaAttrs { mainProgram = "dig"; } bind.dnsutils;
9469
9470 clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
9471
9472 couchdb3 = callPackage ../servers/http/couchdb/3.nix {
9473 erlang = beamMinimalPackages.erlang;
9474 };
9475
9476 dcnnt = python3Packages.callPackage ../servers/dcnnt { };
9477
9478 deconz = qt5.callPackage ../servers/deconz { };
9479
9480 dict = callPackage ../servers/dict {
9481 flex = flex_2_5_35;
9482 libmaa = callPackage ../servers/dict/libmaa.nix { };
9483 };
9484
9485 dictdDBs = recurseIntoAttrs (callPackages ../servers/dict/dictd-db.nix { });
9486
9487 dictDBCollector = callPackage ../servers/dict/dictd-db-collector.nix { };
9488
9489 diod = callPackage ../servers/diod { lua = lua5_1; };
9490
9491 directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler { };
9492
9493 dodgy = with python3Packages; toPythonApplication dodgy;
9494
9495 etcd = etcd_3_5;
9496 etcd_3_4 = callPackage ../servers/etcd/3_4 { };
9497 etcd_3_5 = callPackage ../servers/etcd/3_5 { };
9498
9499 prosody = callPackage ../servers/xmpp/prosody {
9500 withExtraLibs = [ ];
9501 withExtraLuaPackages = _: [ ];
9502 };
9503
9504 felix = callPackage ../servers/felix { };
9505
9506 felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { };
9507
9508 inherit (callPackages ../servers/firebird { })
9509 firebird_4
9510 firebird_3
9511 firebird
9512 ;
9513
9514 freshrss = callPackage ../servers/web-apps/freshrss { };
9515 freshrss-extensions = recurseIntoAttrs (callPackage ../servers/web-apps/freshrss/extensions { });
9516
9517 grafana = callPackage ../servers/monitoring/grafana { };
9518 grafanaPlugins = recurseIntoAttrs (callPackages ../servers/monitoring/grafana/plugins { });
9519
9520 inherit (callPackage ../servers/hbase { })
9521 hbase_2_4
9522 hbase_2_5
9523 hbase_2_6
9524 hbase_3_0
9525 ;
9526 hbase2 = hbase_2_6;
9527 hbase3 = hbase_3_0;
9528 hbase = hbase2; # when updating, point to the latest stable release
9529
9530 home-assistant = callPackage ../servers/home-assistant { };
9531
9532 buildHomeAssistantComponent = callPackage ../servers/home-assistant/build-custom-component { };
9533 home-assistant-custom-components = lib.recurseIntoAttrs (
9534 lib.packagesFromDirectoryRecursive {
9535 inherit (home-assistant.python.pkgs) callPackage;
9536 directory = ../servers/home-assistant/custom-components;
9537 }
9538 );
9539 home-assistant-custom-lovelace-modules = lib.recurseIntoAttrs (
9540 lib.packagesFromDirectoryRecursive {
9541 inherit callPackage;
9542 directory = ../servers/home-assistant/custom-lovelace-modules;
9543 }
9544 );
9545
9546 home-assistant-cli = callPackage ../servers/home-assistant/cli.nix { };
9547
9548 home-assistant-component-tests = recurseIntoAttrs home-assistant.tests.components;
9549
9550 icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { };
9551 icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { };
9552 icingaweb2 = callPackage ../servers/icingaweb2 { };
9553 icingaweb2Modules = {
9554 theme-april = callPackage ../servers/icingaweb2/theme-april { };
9555 theme-lsd = callPackage ../servers/icingaweb2/theme-lsd { };
9556 theme-particles = callPackage ../servers/icingaweb2/theme-particles { };
9557 theme-snow = callPackage ../servers/icingaweb2/theme-snow { };
9558 theme-spring = callPackage ../servers/icingaweb2/theme-spring { };
9559 };
9560
9561 inspircdMinimal = inspircd.override { extraModules = [ ]; };
9562
9563 inherit (callPackages ../servers/http/jetty { })
9564 jetty_11
9565 jetty_12
9566 ;
9567
9568 jetty = jetty_12;
9569
9570 kanidm_1_5 = callPackage ../servers/kanidm/1_5.nix {
9571 kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_5;
9572 };
9573 kanidm_1_6 = callPackage ../servers/kanidm/1_6.nix {
9574 kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_6;
9575 };
9576 kanidm_1_7 = callPackage ../servers/kanidm/1_7.nix {
9577 kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_7;
9578 };
9579
9580 kanidmWithSecretProvisioning_1_5 = kanidm_1_5.override { enableSecretProvisioning = true; };
9581 kanidmWithSecretProvisioning_1_6 = kanidm_1_6.override { enableSecretProvisioning = true; };
9582 kanidmWithSecretProvisioning_1_7 = kanidm_1_7.override { enableSecretProvisioning = true; };
9583
9584 knot-resolver = callPackage ../servers/dns/knot-resolver {
9585 systemd = systemdMinimal; # in closure already anyway
9586 };
9587
9588 leafnode = callPackage ../servers/news/leafnode { };
9589
9590 leafnode1 = callPackage ../servers/news/leafnode/1.nix { };
9591
9592 lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix { };
9593
9594 lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix {
9595 nodejs = nodejs_20;
9596 };
9597
9598 mailmanPackages = recurseIntoAttrs (callPackage ../servers/mail/mailman { });
9599 inherit (mailmanPackages) mailman mailman-hyperkitty;
9600 mailman-web = mailmanPackages.web;
9601
9602 mastodon = callPackage ../servers/mastodon {
9603 nodejs-slim = nodejs-slim_22;
9604 python3 = python311;
9605 ruby = ruby_3_3;
9606 yarn-berry = yarn-berry_4.override { nodejs = nodejs-slim_22; };
9607 };
9608
9609 micro-full = micro.wrapper.override {
9610 extraPackages = [
9611 wl-clipboard
9612 xclip
9613 ];
9614 };
9615
9616 micro-with-wl-clipboard = micro.wrapper.override {
9617 extraPackages = [
9618 wl-clipboard
9619 ];
9620 };
9621
9622 micro-with-xclip = micro.wrapper.override {
9623 extraPackages = [
9624 xclip
9625 ];
9626 };
9627
9628 minio = callPackage ../servers/minio { };
9629 # Keep around to allow people to migrate their data from the old legacy fs format
9630 # https://github.com/minio/minio/releases/tag/RELEASE.2022-10-29T06-21-33Z
9631 minio_legacy_fs = callPackage ../servers/minio/legacy_fs.nix { };
9632
9633 mkchromecast = libsForQt5.callPackage ../applications/networking/mkchromecast { };
9634
9635 mtprotoproxy = python3.pkgs.callPackage ../servers/mtprotoproxy { };
9636
9637 moodle = callPackage ../servers/web-apps/moodle { };
9638
9639 moodle-utils = callPackage ../servers/web-apps/moodle/moodle-utils.nix { };
9640
9641 inherit (callPackage ../applications/networking/mullvad { })
9642 mullvad
9643 ;
9644
9645 mullvad-closest = with python3Packages; toPythonApplication mullvad-closest;
9646
9647 napalm =
9648 with python3Packages;
9649 toPythonApplication (
9650 napalm.overridePythonAttrs (attrs: {
9651 # add community frontends that depend on the napalm python package
9652 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
9653 napalm-hp-procurve
9654 ];
9655 })
9656 );
9657
9658 nginx = nginxStable;
9659
9660 nginxQuic = callPackage ../servers/http/nginx/quic.nix {
9661 zlib-ng = zlib-ng.override { withZlibCompat = true; };
9662 withPerl = false;
9663 # We don't use `with` statement here on purpose!
9664 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
9665 modules = [
9666 nginxModules.rtmp
9667 nginxModules.dav
9668 nginxModules.moreheaders
9669 ];
9670 # Use latest boringssl to allow http3 support
9671 openssl = quictls;
9672 };
9673
9674 nginxStable = callPackage ../servers/http/nginx/stable.nix {
9675 zlib-ng = zlib-ng.override { withZlibCompat = true; };
9676 withPerl = false;
9677 # We don't use `with` statement here on purpose!
9678 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
9679 modules = [
9680 nginxModules.rtmp
9681 nginxModules.dav
9682 nginxModules.moreheaders
9683 ];
9684 };
9685
9686 nginxMainline = callPackage ../servers/http/nginx/mainline.nix {
9687 zlib-ng = zlib-ng.override { withZlibCompat = true; };
9688 withKTLS = true;
9689 withPerl = false;
9690 # We don't use `with` statement here on purpose!
9691 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
9692 modules = [
9693 nginxModules.dav
9694 nginxModules.moreheaders
9695 ];
9696 };
9697
9698 nginxModules = recurseIntoAttrs (callPackage ../servers/http/nginx/modules.nix { });
9699
9700 # We should move to dynamic modules and create a nginxFull package with all modules
9701 nginxShibboleth = nginxStable.override {
9702 modules = [
9703 nginxModules.rtmp
9704 nginxModules.dav
9705 nginxModules.moreheaders
9706 nginxModules.shibboleth
9707 ];
9708 };
9709
9710 libmodsecurity = callPackage ../tools/security/libmodsecurity { };
9711
9712 nsd = callPackage ../servers/dns/nsd (config.nsd or { });
9713
9714 nsdiff = perlPackages.nsdiff;
9715
9716 outline = callPackage ../servers/web-apps/outline (
9717 lib.fix (super: {
9718 yarn = yarn.override { inherit (super) nodejs; };
9719 nodejs = nodejs_22;
9720 })
9721 );
9722
9723 openafs = callPackage ../servers/openafs/1.8 { };
9724
9725 openresty = callPackage ../servers/http/openresty {
9726 zlib-ng = zlib;
9727 withPerl = false;
9728 modules = [ ];
9729 };
9730
9731 system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { });
9732
9733 # PulseAudio daemons
9734
9735 hsphfpd = callPackage ../servers/pulseaudio/hsphfpd.nix { };
9736
9737 pulseaudio = callPackage ../servers/pulseaudio { };
9738
9739 qpaeq = libsForQt5.callPackage ../servers/pulseaudio/qpaeq.nix { };
9740
9741 pulseaudioFull = pulseaudio.override {
9742 x11Support = true;
9743 jackaudioSupport = true;
9744 airtunesSupport = true;
9745 bluetoothSupport = true;
9746 advancedBluetoothCodecs = true;
9747 remoteControlSupport = true;
9748 zeroconfSupport = true;
9749 };
9750
9751 libpulseaudio = pulseaudio.override {
9752 libOnly = true;
9753 };
9754
9755 apulse = callPackage ../misc/apulse { };
9756
9757 libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { };
9758
9759 tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { };
9760
9761 libmysqlclient = libmysqlclient_3_3;
9762 libmysqlclient_3_1 = mariadb-connector-c_3_1;
9763 libmysqlclient_3_2 = mariadb-connector-c_3_2;
9764 libmysqlclient_3_3 = mariadb-connector-c_3_3;
9765 mariadb-connector-c = mariadb-connector-c_3_3;
9766 mariadb-connector-c_3_1 = callPackage ../servers/sql/mariadb/connector-c/3_1.nix { };
9767 mariadb-connector-c_3_2 = callPackage ../servers/sql/mariadb/connector-c/3_2.nix { };
9768 mariadb-connector-c_3_3 = callPackage ../servers/sql/mariadb/connector-c/3_3.nix { };
9769
9770 inherit (import ../servers/sql/mariadb pkgs)
9771 mariadb_106
9772 mariadb_1011
9773 mariadb_114
9774 mariadb_118
9775 ;
9776 mariadb = mariadb_1011;
9777 mariadb-embedded = mariadb.override { withEmbedded = true; };
9778
9779 mongodb = hiPrio mongodb-7_0;
9780
9781 mongodb-7_0 = callPackage ../servers/nosql/mongodb/7.0.nix {
9782 sasl = cyrus_sasl;
9783 boost = boost179.override { enableShared = false; };
9784 };
9785
9786 influxdb = callPackage ../servers/nosql/influxdb { };
9787 influxdb2-server = callPackage ../servers/nosql/influxdb2 { };
9788 influxdb2-cli = callPackage ../servers/nosql/influxdb2/cli.nix { };
9789 influxdb2-token-manipulator = callPackage ../servers/nosql/influxdb2/token-manipulator.nix { };
9790 influxdb2-provision = callPackage ../servers/nosql/influxdb2/provision.nix { };
9791 # For backwards compatibility with older versions of influxdb2,
9792 # which bundled the server and CLI into the same derivation. Will be
9793 # removed in a few releases.
9794 influxdb2 = callPackage ../servers/nosql/influxdb2/combined.nix { };
9795
9796 mysql80 = callPackage ../servers/sql/mysql/8.0.x.nix {
9797 inherit (darwin) developer_cmds DarwinTools;
9798 boost = boost177; # Configure checks for specific version.
9799 icu = icu69;
9800 protobuf = protobuf_21;
9801 };
9802
9803 mssql_jdbc = callPackage ../servers/sql/mssql/jdbc { };
9804 jtds_jdbc = callPackage ../servers/sql/mssql/jdbc/jtds.nix { };
9805
9806 inherit (callPackage ../servers/mir { })
9807 mir
9808 mir_2_15
9809 ;
9810
9811 icinga2 = callPackage ../servers/monitoring/icinga2 { };
9812
9813 icinga2-agent = callPackage ../servers/monitoring/icinga2 {
9814 nameSuffix = "-agent";
9815 withMysql = false;
9816 withNotification = false;
9817 withIcingadb = false;
9818 withPerfdata = false;
9819 };
9820
9821 nagiosPlugins = recurseIntoAttrs (callPackages ../servers/monitoring/nagios-plugins { });
9822
9823 qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { };
9824
9825 rust-hypervisor-firmware = callPackage ../applications/virtualization/rust-hypervisor-firmware { };
9826
9827 OVMF = callPackage ../applications/virtualization/OVMF {
9828 inherit (python3Packages) pexpect;
9829 };
9830 OVMFFull = callPackage ../applications/virtualization/OVMF {
9831 inherit (python3Packages) pexpect;
9832 secureBoot = true;
9833 httpSupport = true;
9834 tpmSupport = true;
9835 tlsSupport = true;
9836 msVarsTemplate = stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isAarch64;
9837 };
9838
9839 tang = callPackage ../servers/tang {
9840 asciidoc = asciidoc-full;
9841 };
9842
9843 inherit (import ../servers/sql/postgresql pkgs)
9844 postgresqlVersions
9845 postgresqlJitVersions
9846 libpq
9847 ;
9848
9849 inherit (postgresqlVersions)
9850 postgresql_13
9851 postgresql_14
9852 postgresql_15
9853 postgresql_16
9854 postgresql_17
9855 postgresql_18
9856 ;
9857
9858 inherit (postgresqlJitVersions)
9859 postgresql_13_jit
9860 postgresql_14_jit
9861 postgresql_15_jit
9862 postgresql_16_jit
9863 postgresql_17_jit
9864 postgresql_18_jit
9865 ;
9866 postgresql = postgresql_17;
9867 postgresql_jit = postgresql_17_jit;
9868 postgresqlPackages = recurseIntoAttrs postgresql.pkgs;
9869 postgresql13Packages = recurseIntoAttrs postgresql_13.pkgs;
9870 postgresql14Packages = recurseIntoAttrs postgresql_14.pkgs;
9871 postgresql15Packages = recurseIntoAttrs postgresql_15.pkgs;
9872 postgresql16Packages = recurseIntoAttrs postgresql_16.pkgs;
9873 postgresql17Packages = recurseIntoAttrs postgresql_17.pkgs;
9874 postgresql18Packages = recurseIntoAttrs postgresql_18.pkgs;
9875
9876 postgres-websockets = haskellPackages.postgres-websockets.bin;
9877 postgrest = haskellPackages.postgrest.bin;
9878
9879 prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { };
9880 prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { };
9881 prometheus-apcupsd-exporter = callPackage ../servers/monitoring/prometheus/apcupsd-exporter.nix { };
9882 prometheus-artifactory-exporter =
9883 callPackage ../servers/monitoring/prometheus/artifactory-exporter.nix
9884 { };
9885 prometheus-atlas-exporter = callPackage ../servers/monitoring/prometheus/atlas-exporter.nix { };
9886 prometheus-aws-s3-exporter = callPackage ../servers/monitoring/prometheus/aws-s3-exporter.nix { };
9887 prometheus-bind-exporter = callPackage ../servers/monitoring/prometheus/bind-exporter.nix { };
9888 prometheus-bird-exporter = callPackage ../servers/monitoring/prometheus/bird-exporter.nix { };
9889 prometheus-bitcoin-exporter = callPackage ../servers/monitoring/prometheus/bitcoin-exporter.nix { };
9890 prometheus-blackbox-exporter =
9891 callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix
9892 { };
9893 prometheus-cloudflare-exporter =
9894 callPackage ../servers/monitoring/prometheus/cloudflare-exporter.nix
9895 { };
9896 prometheus-collectd-exporter =
9897 callPackage ../servers/monitoring/prometheus/collectd-exporter.nix
9898 { };
9899 prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { };
9900 prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { };
9901 prometheus-domain-exporter = callPackage ../servers/monitoring/prometheus/domain-exporter.nix { };
9902 prometheus-fastly-exporter = callPackage ../servers/monitoring/prometheus/fastly-exporter.nix { };
9903 prometheus-flow-exporter = callPackage ../servers/monitoring/prometheus/flow-exporter.nix { };
9904 prometheus-fritzbox-exporter =
9905 callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix
9906 { };
9907 prometheus-gitlab-ci-pipelines-exporter =
9908 callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix
9909 { };
9910 prometheus-graphite-exporter =
9911 callPackage ../servers/monitoring/prometheus/graphite-exporter.nix
9912 { };
9913 prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { };
9914 prometheus-idrac-exporter = callPackage ../servers/monitoring/prometheus/idrac-exporter.nix { };
9915 prometheus-imap-mailstat-exporter =
9916 callPackage ../servers/monitoring/prometheus/imap-mailstat-exporter.nix
9917 { };
9918 prometheus-influxdb-exporter =
9919 callPackage ../servers/monitoring/prometheus/influxdb-exporter.nix
9920 { };
9921 prometheus-ipmi-exporter = callPackage ../servers/monitoring/prometheus/ipmi-exporter.nix { };
9922 prometheus-jitsi-exporter = callPackage ../servers/monitoring/prometheus/jitsi-exporter.nix { };
9923 prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix { };
9924 prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { };
9925 prometheus-junos-czerwonk-exporter =
9926 callPackage ../servers/monitoring/prometheus/junos-czerwonk-exporter.nix
9927 { };
9928 prometheus-kea-exporter = callPackage ../servers/monitoring/prometheus/kea-exporter.nix { };
9929 prometheus-keylight-exporter =
9930 callPackage ../servers/monitoring/prometheus/keylight-exporter.nix
9931 { };
9932 prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { };
9933 prometheus-lnd-exporter = callPackage ../servers/monitoring/prometheus/lnd-exporter.nix { };
9934 prometheus-mail-exporter = callPackage ../servers/monitoring/prometheus/mail-exporter.nix { };
9935 prometheus-mikrotik-exporter =
9936 callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix
9937 { };
9938 prometheus-modemmanager-exporter =
9939 callPackage ../servers/monitoring/prometheus/modemmanager-exporter.nix
9940 { };
9941 prometheus-mongodb-exporter = callPackage ../servers/monitoring/prometheus/mongodb-exporter.nix { };
9942 prometheus-nats-exporter = callPackage ../servers/monitoring/prometheus/nats-exporter.nix { };
9943 prometheus-nextcloud-exporter =
9944 callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix
9945 { };
9946 prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { };
9947 prometheus-nginxlog-exporter =
9948 callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix
9949 { };
9950 prometheus-nut-exporter = callPackage ../servers/monitoring/prometheus/nut-exporter.nix { };
9951 prometheus-pgbouncer-exporter =
9952 callPackage ../servers/monitoring/prometheus/pgbouncer-exporter.nix
9953 { };
9954 prometheus-php-fpm-exporter = callPackage ../servers/monitoring/prometheus/php-fpm-exporter.nix { };
9955 prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix { };
9956 prometheus-ping-exporter = callPackage ../servers/monitoring/prometheus/ping-exporter.nix { };
9957 prometheus-postfix-exporter = callPackage ../servers/monitoring/prometheus/postfix-exporter.nix { };
9958 prometheus-postgres-exporter =
9959 callPackage ../servers/monitoring/prometheus/postgres-exporter.nix
9960 { };
9961 prometheus-process-exporter = callPackage ../servers/monitoring/prometheus/process-exporter.nix { };
9962 prometheus-pve-exporter = callPackage ../servers/monitoring/prometheus/pve-exporter.nix { };
9963 prometheus-redis-exporter = callPackage ../servers/monitoring/prometheus/redis-exporter.nix { };
9964 prometheus-rabbitmq-exporter =
9965 callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix
9966 { };
9967 prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { };
9968 prometheus-sabnzbd-exporter = callPackage ../servers/monitoring/prometheus/sabnzbd-exporter.nix { };
9969 prometheus-sachet = callPackage ../servers/monitoring/prometheus/sachet.nix { };
9970 prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { };
9971 prometheus-shelly-exporter = callPackage ../servers/monitoring/prometheus/shelly-exporter.nix { };
9972 prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { };
9973 prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
9974 prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { };
9975 prometheus-sql-exporter = callPackage ../servers/monitoring/prometheus/sql-exporter.nix { };
9976 prometheus-systemd-exporter = callPackage ../servers/monitoring/prometheus/systemd-exporter.nix { };
9977 prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { };
9978 prometheus-v2ray-exporter = callPackage ../servers/monitoring/prometheus/v2ray-exporter.nix { };
9979 prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { };
9980 prometheus-wireguard-exporter =
9981 callPackage ../servers/monitoring/prometheus/wireguard-exporter.nix
9982 {
9983 };
9984 prometheus-zfs-exporter = callPackage ../servers/monitoring/prometheus/zfs-exporter.nix { };
9985 prometheus-xmpp-alerts = callPackage ../servers/monitoring/prometheus/xmpp-alerts.nix { };
9986
9987 public-inbox = perlPackages.callPackage ../servers/mail/public-inbox { };
9988
9989 spf-engine = python3.pkgs.callPackage ../servers/mail/spf-engine { };
9990
9991 pypiserver = with python3Packages; toPythonApplication pypiserver;
9992
9993 qremotecontrol-server = libsForQt5.callPackage ../servers/misc/qremotecontrol-server { };
9994
9995 rabbitmq-server = callPackage ../by-name/ra/rabbitmq-server/package.nix rec {
9996 erlang = erlang_27;
9997 elixir = elixir_1_17.override { inherit erlang; };
9998 };
9999
10000 rethinkdb = callPackage ../servers/nosql/rethinkdb {
10001 stdenv = clangStdenv;
10002 libtool = cctools;
10003 protobuf = protobuf_21;
10004 };
10005
10006 samba4 = callPackage ../servers/samba/4.x.nix { };
10007
10008 samba = samba4;
10009
10010 samba4Full = lowPrio (
10011 samba4.override {
10012 enableLDAP = true;
10013 enablePrinting = true;
10014 enableMDNS = true;
10015 enableDomainController = true;
10016 enableRegedit = true;
10017 enableCephFS = !stdenv.hostPlatform.isAarch64;
10018 }
10019 );
10020
10021 sambaFull = samba4Full;
10022
10023 scalene = with python3Packages; toPythonApplication scalene;
10024
10025 shairplay = callPackage ../servers/shairplay { avahi = avahi-compat; };
10026
10027 shairport-sync-airplay2 = shairport-sync.override {
10028 enableAirplay2 = true;
10029 };
10030
10031 stalwart-mail-webadmin = stalwart-mail.webadmin;
10032 stalwart-mail-spam-filter = stalwart-mail.spam-filter;
10033
10034 stalwart-mail-enterprise = stalwart-mail.override {
10035 stalwartEnterprise = true;
10036 };
10037
10038 inherit (callPackages ../servers/monitoring/sensu-go { })
10039 sensu-go-agent
10040 sensu-go-backend
10041 sensu-go-cli
10042 ;
10043
10044 shishi = callPackage ../servers/shishi {
10045 pam = if stdenv.hostPlatform.isLinux then pam else null;
10046 # see also openssl, which has/had this same trick
10047 };
10048
10049 spacecookie = haskell.lib.compose.justStaticExecutables haskellPackages.spacecookie;
10050
10051 inherit (callPackages ../servers/http/tomcat { })
10052 tomcat9
10053 tomcat10
10054 tomcat11
10055 ;
10056
10057 tomcat = tomcat11;
10058
10059 virtualenv = with python3Packages; toPythonApplication virtualenv;
10060
10061 virtualenv-clone = with python3Packages; toPythonApplication virtualenv-clone;
10062
10063 quartz-wm = callPackage ../servers/x11/quartz-wm {
10064 stdenv = clangStdenv;
10065 };
10066
10067 xorg =
10068 let
10069 # Use `lib.callPackageWith __splicedPackages` rather than plain `callPackage`
10070 # so as not to have the newly bound xorg items already in scope, which would
10071 # have created a cycle.
10072 overrides = lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix {
10073 inherit (buildPackages.darwin) bootstrap_cmds;
10074 udev = if stdenv.hostPlatform.isLinux then udev else null;
10075 libdrm = if stdenv.hostPlatform.isLinux then libdrm else null;
10076 };
10077
10078 generatedPackages = lib.callPackageWith __splicedPackages ../servers/x11/xorg/default.nix { };
10079
10080 xorgPackages = makeScopeWithSplicing' {
10081 otherSplices = generateSplicesForMkScope "xorg";
10082 f = lib.extends overrides generatedPackages;
10083 };
10084
10085 in
10086 recurseIntoAttrs xorgPackages;
10087
10088 xwayland = callPackage ../servers/x11/xorg/xwayland.nix { };
10089
10090 zabbixFor = version: rec {
10091 agent = (callPackages ../servers/monitoring/zabbix/agent.nix { }).${version};
10092 proxy-mysql =
10093 (callPackages ../servers/monitoring/zabbix/proxy.nix { mysqlSupport = true; }).${version};
10094 proxy-pgsql =
10095 (callPackages ../servers/monitoring/zabbix/proxy.nix { postgresqlSupport = true; }).${version};
10096 proxy-sqlite =
10097 (callPackages ../servers/monitoring/zabbix/proxy.nix { sqliteSupport = true; }).${version};
10098 server-mysql =
10099 (callPackages ../servers/monitoring/zabbix/server.nix { mysqlSupport = true; }).${version};
10100 server-pgsql =
10101 (callPackages ../servers/monitoring/zabbix/server.nix { postgresqlSupport = true; }).${version};
10102 web = (callPackages ../servers/monitoring/zabbix/web.nix { }).${version};
10103 agent2 = (callPackages ../servers/monitoring/zabbix/agent2.nix { }).${version};
10104
10105 # backwards compatibility
10106 server = server-pgsql;
10107 };
10108
10109 zabbix74 = recurseIntoAttrs (zabbixFor "v74");
10110 zabbix72 = recurseIntoAttrs (zabbixFor "v72");
10111 zabbix70 = recurseIntoAttrs (zabbixFor "v70");
10112 zabbix60 = recurseIntoAttrs (zabbixFor "v60");
10113
10114 zabbix = zabbix60;
10115
10116 ### SERVERS / GEOSPATIAL
10117
10118 ### OS-SPECIFIC
10119
10120 alfred = callPackage ../os-specific/linux/batman-adv/alfred.nix { };
10121
10122 alsa-utils = callPackage ../by-name/al/alsa-utils/package.nix {
10123 fftw = fftwFloat;
10124 };
10125
10126 arm-trusted-firmware = callPackage ../misc/arm-trusted-firmware { };
10127 inherit (arm-trusted-firmware)
10128 buildArmTrustedFirmware
10129 armTrustedFirmwareTools
10130 armTrustedFirmwareAllwinner
10131 armTrustedFirmwareAllwinnerH616
10132 armTrustedFirmwareAllwinnerH6
10133 armTrustedFirmwareQemu
10134 armTrustedFirmwareRK3328
10135 armTrustedFirmwareRK3399
10136 armTrustedFirmwareRK3568
10137 armTrustedFirmwareRK3588
10138 armTrustedFirmwareS905
10139 ;
10140
10141 inherit (libapparmor.passthru) apparmorRulesFromClosure;
10142
10143 ath9k-htc-blobless-firmware = callPackage ../os-specific/linux/firmware/ath9k { };
10144 ath9k-htc-blobless-firmware-unstable = callPackage ../os-specific/linux/firmware/ath9k {
10145 enableUnstable = true;
10146 };
10147
10148 b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { };
10149
10150 b43Firmware_6_30_163_46 =
10151 callPackage ../os-specific/linux/firmware/b43-firmware/6.30.163.46.nix
10152 { };
10153
10154 batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { };
10155
10156 bluez5 = bluez;
10157 bluez5-experimental = bluez-experimental;
10158
10159 bluez-experimental = bluez.override {
10160 enableExperimental = true;
10161 };
10162
10163 busybox = callPackage ../os-specific/linux/busybox {
10164 # Fixes libunwind from being dynamically linked to a static binary.
10165 stdenv =
10166 if (stdenv.targetPlatform.useLLVM or false) then
10167 overrideCC stdenv buildPackages.llvmPackages.clangNoLibcxx
10168 else
10169 stdenv;
10170 };
10171 busybox-sandbox-shell = callPackage ../os-specific/linux/busybox/sandbox-shell.nix { };
10172
10173 cm-rgb = python3Packages.callPackage ../tools/system/cm-rgb { };
10174
10175 conky = callPackage ../os-specific/linux/conky (
10176 {
10177 lua = lua5_4;
10178 inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl;
10179 }
10180 // config.conky or { }
10181 );
10182
10183 cpupower-gui = python3Packages.callPackage ../os-specific/linux/cpupower-gui {
10184 inherit (pkgs) meson;
10185 };
10186
10187 # Darwin package set
10188 #
10189 # Even though this is a set of packages not single package, use `callPackage`
10190 # not `callPackages` so the per-package callPackages don't have their
10191 # `.override` clobbered. C.F. `llvmPackages` which does the same.
10192 darwin = callPackage ./darwin-packages.nix { };
10193
10194 displaylink = callPackage ../os-specific/linux/displaylink {
10195 inherit (linuxPackages) evdi;
10196 };
10197
10198 dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; };
10199
10200 drbd = callPackage ../os-specific/linux/drbd/utils.nix { };
10201
10202 # unstable until the first 1.x release
10203 fwts = callPackage ../os-specific/linux/fwts { };
10204
10205 libuuid = if stdenv.hostPlatform.isLinux then util-linuxMinimal else null;
10206
10207 elegant-sddm = libsForQt5.callPackage ../data/themes/elegant-sddm { };
10208
10209 error-inject = callPackages ../os-specific/linux/error-inject { };
10210
10211 ffado = callPackage ../os-specific/linux/ffado { };
10212 ffado-mixer = callPackage ../os-specific/linux/ffado { withMixer = true; };
10213 libffado = ffado;
10214
10215 freefall = callPackage ../os-specific/linux/freefall {
10216 inherit (linuxPackages) kernel;
10217 };
10218
10219 fusePackages = dontRecurseIntoAttrs (
10220 callPackage ../os-specific/linux/fuse {
10221 util-linux = util-linuxMinimal;
10222 }
10223 );
10224 fuse = fuse2;
10225 fuse2 = lowPrio (if stdenv.hostPlatform.isDarwin then macfuse-stubs else fusePackages.fuse_2);
10226 fuse3 = fusePackages.fuse_3;
10227
10228 gpm = callPackage ../servers/gpm {
10229 withNcurses = false; # Keep curses disabled for lack of value
10230 };
10231
10232 gpm-ncurses = gpm.override { withNcurses = true; };
10233
10234 btop-cuda = btop.override { cudaSupport = true; };
10235 btop-rocm = btop.override { rocmSupport = true; };
10236
10237 i7z = qt5.callPackage ../os-specific/linux/i7z { };
10238
10239 ipu6-camera-hal = callPackage ../development/libraries/ipu6-camera-hal { };
10240
10241 ipu6ep-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
10242 ipuVersion = "ipu6ep";
10243 };
10244
10245 ipu6epmtl-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
10246 ipuVersion = "ipu6epmtl";
10247 };
10248
10249 iputils = hiPrio (callPackage ../os-specific/linux/iputils { });
10250 # hiPrio for collisions with inetutils (ping)
10251
10252 iptables = callPackage ../os-specific/linux/iptables { };
10253 iptables-legacy = callPackage ../os-specific/linux/iptables { nftablesCompat = false; };
10254 iptables-nftables-compat = iptables;
10255
10256 jool-cli = callPackage ../os-specific/linux/jool/cli.nix { };
10257
10258 libkrun-sev = libkrun.override { variant = "sev"; };
10259 libkrun-tdx = libkrun.override { variant = "tdx"; };
10260
10261 linthesia = callPackage ../games/linthesia/default.nix { };
10262
10263 projecteur = libsForQt5.callPackage ../os-specific/linux/projecteur { };
10264
10265 lklWithFirewall = lkl.override { firewallSupport = true; };
10266
10267 inherit (callPackages ../os-specific/linux/kernel-headers { inherit (pkgsBuildBuild) elf-header; })
10268 linuxHeaders
10269 makeLinuxHeaders
10270 ;
10271
10272 klibc = callPackage ../os-specific/linux/klibc { };
10273
10274 klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { });
10275
10276 linuxKernel = recurseIntoAttrs (callPackage ./linux-kernels.nix { });
10277
10278 inherit (linuxKernel) buildLinux linuxConfig kernelPatches;
10279
10280 linuxPackagesFor = linuxKernel.packagesFor;
10281
10282 hardenedLinuxPackagesFor = linuxKernel.hardenedPackagesFor;
10283
10284 linuxManualConfig = linuxKernel.manualConfig;
10285
10286 linuxPackages_custom = linuxKernel.customPackage;
10287
10288 # This serves as a test for linuxPackages_custom
10289 linuxPackages_custom_tinyconfig_kernel =
10290 let
10291 base = linuxPackages.kernel;
10292 tinyLinuxPackages = linuxKernel.customPackage {
10293 inherit (base) version modDirVersion src;
10294 allowImportFromDerivation = false;
10295 configfile = linuxConfig {
10296 makeTarget = "tinyconfig";
10297 src = base.src;
10298 };
10299 };
10300 in
10301 tinyLinuxPackages.kernel;
10302
10303 # The current default kernel / kernel modules.
10304 linuxPackages = linuxKernel.packageAliases.linux_default;
10305 linux = linuxPackages.kernel;
10306
10307 linuxPackages_latest = linuxKernel.packageAliases.linux_latest;
10308 linux_latest = linuxPackages_latest.kernel;
10309
10310 # Testing (rc) kernel
10311 linuxPackages_testing = linuxKernel.packages.linux_testing;
10312 linux_testing = linuxKernel.kernels.linux_testing;
10313
10314 # Realtime kernel
10315 linuxPackages-rt = linuxKernel.packageAliases.linux_rt_default;
10316 linuxPackages-rt_latest = linuxKernel.packageAliases.linux_rt_latest;
10317 linux-rt = linuxPackages-rt.kernel;
10318 linux-rt_latest = linuxPackages-rt_latest.kernel;
10319
10320 # GNU Linux-libre kernels
10321 linuxPackages-libre = linuxKernel.packages.linux_libre;
10322 linux-libre = linuxPackages-libre.kernel;
10323 linuxPackages_latest-libre = linuxKernel.packages.linux_latest_libre;
10324 linux_latest-libre = linuxPackages_latest-libre.kernel;
10325
10326 # zen-kernel
10327 linuxPackages_zen = linuxKernel.packages.linux_zen;
10328 linux_zen = linuxPackages_zen.kernel;
10329 linuxPackages_lqx = linuxKernel.packages.linux_lqx;
10330 linux_lqx = linuxPackages_lqx.kernel;
10331
10332 # XanMod kernel
10333 linuxPackages_xanmod = linuxKernel.packages.linux_xanmod;
10334 linux_xanmod = linuxKernel.kernels.linux_xanmod;
10335 linuxPackages_xanmod_stable = linuxKernel.packages.linux_xanmod_stable;
10336 linux_xanmod_stable = linuxKernel.kernels.linux_xanmod_stable;
10337 linuxPackages_xanmod_latest = linuxKernel.packages.linux_xanmod_latest;
10338 linux_xanmod_latest = linuxKernel.kernels.linux_xanmod_latest;
10339
10340 linux-doc = callPackage ../os-specific/linux/kernel/htmldocs.nix { };
10341
10342 cryptodev = linuxPackages.cryptodev;
10343
10344 librealsense = callPackage ../development/libraries/librealsense { };
10345
10346 librealsenseWithCuda = callPackage ../development/libraries/librealsense {
10347 cudaSupport = true;
10348 };
10349
10350 librealsenseWithoutCuda = callPackage ../development/libraries/librealsense {
10351 cudaSupport = false;
10352 };
10353
10354 librealsense-gui = callPackage ../development/libraries/librealsense {
10355 enableGUI = true;
10356 };
10357
10358 kmod = callPackage ../os-specific/linux/kmod { };
10359
10360 lvm2 = callPackage ../os-specific/linux/lvm2/2_03.nix {
10361 # break the cyclic dependency:
10362 # util-linux (non-minimal) depends (optionally, but on by default) on systemd,
10363 # systemd (optionally, but on by default) on cryptsetup and cryptsetup depends on lvm2
10364 util-linux = util-linuxMinimal;
10365 };
10366
10367 lvm2_dmeventd = lvm2.override {
10368 enableDmeventd = true;
10369 enableCmdlib = true;
10370 };
10371 lvm2_vdo = lvm2_dmeventd.override {
10372 enableVDO = true;
10373 };
10374
10375 mdadm = mdadm4;
10376 minimal-bootstrap = recurseIntoAttrs (
10377 import ../os-specific/linux/minimal-bootstrap {
10378 inherit (stdenv) buildPlatform hostPlatform;
10379 inherit lib config;
10380 fetchurl = import ../build-support/fetchurl/boot.nix {
10381 inherit (stdenv.buildPlatform) system;
10382 inherit (config) rewriteURL;
10383 };
10384 checkMeta = callPackage ../stdenv/generic/check-meta.nix { inherit (stdenv) hostPlatform; };
10385 }
10386 );
10387 minimal-bootstrap-sources =
10388 callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix
10389 {
10390 inherit (stdenv) hostPlatform;
10391 };
10392 make-minimal-bootstrap-sources =
10393 callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/make-bootstrap-sources.nix
10394 {
10395 inherit (stdenv) hostPlatform;
10396 };
10397
10398 aggregateModules =
10399 modules:
10400 callPackage ../os-specific/linux/kmod/aggregator.nix {
10401 inherit (buildPackages) kmod;
10402 inherit modules;
10403 };
10404
10405 nushell = callPackage ../shells/nushell { };
10406
10407 nushellPlugins = recurseIntoAttrs (
10408 callPackage ../shells/nushell/plugins {
10409 }
10410 );
10411
10412 net-tools =
10413 if stdenv.hostPlatform.isLinux then
10414 callPackage ../os-specific/linux/net-tools { }
10415 else
10416 unixtools.net-tools;
10417
10418 nftables = callPackage ../os-specific/linux/nftables { };
10419
10420 open-vm-tools-headless = open-vm-tools.override { withX = false; };
10421
10422 odin = callPackage ../by-name/od/odin/package.nix {
10423 llvmPackages = llvmPackages_18;
10424 };
10425
10426 pam =
10427 if stdenv.hostPlatform.isLinux then
10428 linux-pam
10429 else if stdenv.hostPlatform.isFreeBSD then
10430 freebsd.libpam
10431 else
10432 openpam;
10433
10434 # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader )
10435
10436 procps =
10437 if stdenv.hostPlatform.isLinux then
10438 callPackage ../os-specific/linux/procps-ng { }
10439 else
10440 unixtools.procps;
10441
10442 qemu_kvm = lowPrio (qemu.override { hostCpuOnly = true; });
10443 qemu_full = lowPrio (
10444 qemu.override {
10445 smbdSupport = lib.meta.availableOn stdenv.hostPlatform samba;
10446 cephSupport = lib.meta.availableOn stdenv.hostPlatform ceph;
10447 glusterfsSupport =
10448 lib.meta.availableOn stdenv.hostPlatform glusterfs
10449 && lib.meta.availableOn stdenv.hostPlatform libuuid;
10450 }
10451 );
10452
10453 qemu_test = lowPrio (
10454 qemu.override {
10455 hostCpuOnly = true;
10456 nixosTestRunner = true;
10457 }
10458 );
10459
10460 raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi { };
10461 raspberrypi-armstubs = callPackage ../os-specific/linux/firmware/raspberrypi/armstubs.nix { };
10462
10463 rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { };
10464
10465 sddm-astronaut = qt6Packages.callPackage ../data/themes/sddm-astronaut { };
10466
10467 sddm-chili-theme = libsForQt5.callPackage ../data/themes/chili-sddm { };
10468
10469 sddm-sugar-dark = libsForQt5.callPackage ../data/themes/sddm-sugar-dark { };
10470
10471 sgx-sdk = callPackage ../os-specific/linux/sgx/sdk { };
10472
10473 sgx-psw = callPackage ../os-specific/linux/sgx/psw {
10474 protobuf = protobuf_21;
10475 };
10476
10477 sinit = callPackage ../os-specific/linux/sinit {
10478 rcinit = "/etc/rc.d/rc.init";
10479 rcshutdown = "/etc/rc.d/rc.shutdown";
10480 };
10481
10482 sysdig = callPackage ../os-specific/linux/sysdig {
10483 kernel = null;
10484 }; # sysdig is a client, for a driver look at linuxPackagesFor
10485
10486 sysprof = callPackage ../development/tools/profiling/sysprof { };
10487
10488 libsysprof-capture = callPackage ../development/tools/profiling/sysprof/capture.nix { };
10489
10490 systemd = callPackage ../os-specific/linux/systemd {
10491 # break some cyclic dependencies
10492 util-linux = util-linuxMinimal;
10493 # provide a super minimal gnupg used for systemd-machined
10494 gnupg = gnupg.override {
10495 enableMinimal = true;
10496 guiSupport = false;
10497 };
10498 };
10499 systemdMinimal = systemd.override {
10500 pname = "systemd-minimal";
10501 withAcl = false;
10502 withAnalyze = false;
10503 withApparmor = false;
10504 withAudit = false;
10505 withCompression = false;
10506 withCoredump = false;
10507 withCryptsetup = false;
10508 withRepart = false;
10509 withDocumentation = false;
10510 withEfi = false;
10511 withFido2 = false;
10512 withGcrypt = false;
10513 withHostnamed = false;
10514 withHomed = false;
10515 withHwdb = false;
10516 withImportd = false;
10517 withLibBPF = false;
10518 withLibidn2 = false;
10519 withLocaled = false;
10520 withLogind = false;
10521 withMachined = false;
10522 withNetworkd = false;
10523 withNss = false;
10524 withOomd = false;
10525 withOpenSSL = false;
10526 withPCRE2 = false;
10527 withPam = false;
10528 withPolkit = false;
10529 withPortabled = false;
10530 withRemote = false;
10531 withResolved = false;
10532 withShellCompletions = false;
10533 withSysupdate = false;
10534 withSysusers = false;
10535 withTimedated = false;
10536 withTimesyncd = false;
10537 withTpm2Tss = false;
10538 withUserDb = false;
10539 withUkify = false;
10540 withBootloader = false;
10541 withPasswordQuality = false;
10542 withVmspawn = false;
10543 withQrencode = false;
10544 withLibarchive = false;
10545 };
10546 systemdLibs = systemdMinimal.override {
10547 pname = "systemd-minimal-libs";
10548 buildLibsOnly = true;
10549 };
10550 # We do not want to include ukify in the normal systemd attribute as it
10551 # relies on Python at runtime.
10552 systemdUkify = systemd.override {
10553 withUkify = true;
10554 };
10555
10556 udev = if lib.meta.availableOn stdenv.hostPlatform systemdLibs then systemdLibs else libudev-zero;
10557
10558 sysvtools = sysvinit.override {
10559 withoutInitTools = true;
10560 };
10561
10562 # Upstream U-Boots:
10563 inherit (callPackage ../misc/uboot { })
10564 buildUBoot
10565 ubootTools
10566 ubootPythonTools
10567 ubootA20OlinuxinoLime
10568 ubootA20OlinuxinoLime2EMMC
10569 ubootBananaPi
10570 ubootBananaPim2Zero
10571 ubootBananaPim3
10572 ubootBananaPim64
10573 ubootAmx335xEVM
10574 ubootClearfog
10575 ubootCM3588NAS
10576 ubootCubieboard2
10577 ubootGuruplug
10578 ubootJetsonTK1
10579 ubootLibreTechCC
10580 ubootNanoPCT4
10581 ubootNanoPCT6
10582 ubootNovena
10583 ubootOdroidC2
10584 ubootOdroidXU3
10585 ubootOlimexA64Olinuxino
10586 ubootOlimexA64Teres1
10587 ubootOrangePi3
10588 ubootOrangePi3B
10589 ubootOrangePi5
10590 ubootOrangePi5Max
10591 ubootOrangePi5Plus
10592 ubootOrangePiPc
10593 ubootOrangePiZeroPlus2H5
10594 ubootOrangePiZero
10595 ubootOrangePiZero2
10596 ubootOrangePiZero3
10597 ubootPcduino3Nano
10598 ubootPine64
10599 ubootPine64LTS
10600 ubootPinebook
10601 ubootPinebookPro
10602 ubootQemuAarch64
10603 ubootQemuArm
10604 ubootQemuRiscv64Smode
10605 ubootQemuX86
10606 ubootQemuX86_64
10607 ubootQuartz64B
10608 ubootRadxaZero3W
10609 ubootRaspberryPi
10610 ubootRaspberryPi2
10611 ubootRaspberryPi3_32bit
10612 ubootRaspberryPi3_64bit
10613 ubootRaspberryPi4_32bit
10614 ubootRaspberryPi4_64bit
10615 ubootRaspberryPiZero
10616 ubootRock4CPlus
10617 ubootRock5ModelB
10618 ubootRock64
10619 ubootRock64v2
10620 ubootRockPiE
10621 ubootRockPi4
10622 ubootRockPro64
10623 ubootROCPCRK3399
10624 ubootSheevaplug
10625 ubootSopine
10626 ubootTuringRK1
10627 ubootUtilite
10628 ubootVisionFive2
10629 ubootWandboard
10630 ;
10631
10632 eudev = callPackage ../by-name/eu/eudev/package.nix {
10633 util-linux = util-linuxMinimal;
10634 };
10635
10636 udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { };
10637 udisks = udisks2;
10638
10639 usbrelay = callPackage ../os-specific/linux/usbrelay { };
10640 usbrelayd = callPackage ../os-specific/linux/usbrelay/daemon.nix { };
10641
10642 util-linuxMinimal = util-linux.override {
10643 fetchurl = stdenv.fetchurlBoot;
10644 cryptsetupSupport = false;
10645 nlsSupport = false;
10646 ncursesSupport = false;
10647 pamSupport = false;
10648 shadowSupport = false;
10649 systemdSupport = false;
10650 translateManpages = false;
10651 withLastlog = false;
10652 };
10653
10654 v4l-utils = callPackage ../os-specific/linux/v4l-utils { };
10655
10656 windows = recurseIntoAttrs (callPackages ../os-specific/windows { });
10657
10658 cygwin = recurseIntoAttrs (callPackages ../os-specific/cygwin { });
10659
10660 wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { };
10661
10662 wpa_supplicant_gui = libsForQt5.callPackage ../os-specific/linux/wpa_supplicant/gui.nix { };
10663
10664 inherit
10665 ({
10666 zfs_2_2 = callPackage ../os-specific/linux/zfs/2_2.nix {
10667 configFile = "user";
10668 };
10669 zfs_2_3 = callPackage ../os-specific/linux/zfs/2_3.nix {
10670 configFile = "user";
10671 };
10672 zfs_unstable = callPackage ../os-specific/linux/zfs/unstable.nix {
10673 configFile = "user";
10674 };
10675 })
10676 zfs_2_2
10677 zfs_2_3
10678 zfs_unstable
10679 ;
10680 zfs = zfs_2_3;
10681
10682 ### DATA
10683
10684 adwaita-qt = libsForQt5.callPackage ../data/themes/adwaita-qt { };
10685
10686 adwaita-qt6 = qt6Packages.callPackage ../data/themes/adwaita-qt {
10687 useQt6 = true;
10688 };
10689
10690 androguard = with python3.pkgs; toPythonApplication androguard;
10691
10692 andromeda-gtk-theme = libsForQt5.callPackage ../data/themes/andromeda-gtk-theme { };
10693
10694 ant-theme = callPackage ../data/themes/ant-theme/ant.nix { };
10695
10696 ant-bloody-theme = callPackage ../data/themes/ant-theme/ant-bloody.nix { };
10697
10698 ant-nebula-theme = callPackage ../data/themes/ant-theme/ant-nebula.nix { };
10699
10700 bibata-cursors-translucent = callPackage ../data/icons/bibata-cursors/translucent.nix { };
10701
10702 dejavu_fonts = lowPrio (callPackage ../data/fonts/dejavu-fonts { });
10703
10704 # solve collision for nix-env before https://github.com/NixOS/nix/pull/815
10705 dejavu_fontsEnv = buildEnv {
10706 name = dejavu_fonts.name;
10707 paths = [ dejavu_fonts.out ];
10708 };
10709
10710 docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { };
10711
10712 docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { };
10713
10714 docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { };
10715
10716 docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { };
10717
10718 docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { };
10719
10720 docbook_xml_dtd_44 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix { };
10721
10722 docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { };
10723
10724 inherit (callPackages ../data/sgml+xml/stylesheets/xslt/docbook-xsl { })
10725 docbook-xsl-nons
10726 docbook-xsl-ns
10727 ;
10728
10729 # TODO: move this to aliases
10730 docbook_xsl = docbook-xsl-nons;
10731 docbook_xsl_ns = docbook-xsl-ns;
10732
10733 documentation-highlighter = callPackage ../misc/documentation-highlighter { };
10734
10735 moeli = eduli;
10736
10737 emojione = callPackage ../data/fonts/emojione { };
10738
10739 flat-remix-icon-theme = callPackage ../data/icons/flat-remix-icon-theme {
10740 inherit (plasma5Packages) breeze-icons;
10741 };
10742 font-awesome_4 = (callPackage ../data/fonts/font-awesome { }).v4;
10743 font-awesome_5 = (callPackage ../data/fonts/font-awesome { }).v5;
10744 font-awesome_6 = (callPackage ../data/fonts/font-awesome { }).v6;
10745 font-awesome_7 = (callPackage ../data/fonts/font-awesome { }).v7;
10746 font-awesome = font-awesome_7;
10747
10748 palenight-theme = callPackage ../data/themes/gtk-theme-framework { theme = "palenight"; };
10749
10750 amarena-theme = callPackage ../data/themes/gtk-theme-framework { theme = "amarena"; };
10751
10752 gruvterial-theme = callPackage ../data/themes/gtk-theme-framework { theme = "gruvterial"; };
10753
10754 oceanic-theme = callPackage ../data/themes/gtk-theme-framework { theme = "oceanic"; };
10755
10756 spacx-gtk-theme = callPackage ../data/themes/gtk-theme-framework { theme = "spacx"; };
10757
10758 inherit
10759 ({
10760 gruppled-black-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_black"; };
10761 gruppled-black-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
10762 theme = "gruppled_black_lite";
10763 };
10764 gruppled-white-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_white"; };
10765 gruppled-white-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
10766 theme = "gruppled_white_lite";
10767 };
10768 })
10769 gruppled-black-cursors
10770 gruppled-black-lite-cursors
10771 gruppled-white-cursors
10772 gruppled-white-lite-cursors
10773 ;
10774
10775 gruvbox-dark-icons-gtk = callPackage ../data/icons/gruvbox-dark-icons-gtk {
10776 inherit (plasma5Packages) breeze-icons;
10777 };
10778
10779 iosevka-comfy = recurseIntoAttrs (callPackages ../data/fonts/iosevka/comfy.nix { });
10780
10781 /**
10782 A JSON Schema Catalog is a mapping from URIs to JSON Schema documents.
10783
10784 It enables offline use, e.g. in build processes, and it improves performance, robustness and safety.
10785 */
10786 inherit (callPackage ../data/json-schema/default.nix { }) jsonSchemaCatalogs;
10787
10788 kde-rounded-corners =
10789 kdePackages.callPackage ../data/themes/kwin-decorations/kde-rounded-corners
10790 { };
10791
10792 la-capitaine-icon-theme = callPackage ../data/icons/la-capitaine-icon-theme {
10793 inherit (plasma5Packages) breeze-icons;
10794 inherit (pantheon) elementary-icon-theme;
10795 };
10796
10797 inherit (callPackages ../data/fonts/liberation-fonts { })
10798 liberation_ttf_v1
10799 liberation_ttf_v2
10800 ;
10801 liberation_ttf = liberation_ttf_v2;
10802
10803 # ltunifi and solaar both provide udev rules but solaar's rules are more
10804 # up-to-date so we simply use that instead of having to maintain our own rules
10805 logitech-udev-rules = solaar.udev;
10806
10807 # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
10808 # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia
10809 # lohit-fonts.tamil-classical lohit-fonts.tamil lohit-fonts.telugu
10810 # lohit-fonts.kashmiri lohit-fonts.konkani lohit-fonts.maithili lohit-fonts.sindhi
10811 lohit-fonts = recurseIntoAttrs (callPackages ../data/fonts/lohit-fonts { });
10812
10813 maia-icon-theme = libsForQt5.callPackage ../data/icons/maia-icon-theme { };
10814
10815 marwaita-icons = callPackage ../by-name/ma/marwaita-icons/package.nix {
10816 inherit (kdePackages) breeze-icons;
10817 };
10818
10819 mplus-outline-fonts = recurseIntoAttrs (callPackage ../data/fonts/mplus-outline-fonts { });
10820
10821 noto-fonts-cjk-serif-static = callPackage ../by-name/no/noto-fonts-cjk-serif/package.nix {
10822 static = true;
10823 };
10824
10825 noto-fonts-cjk-sans-static = callPackage ../by-name/no/noto-fonts-cjk-sans/package.nix {
10826 static = true;
10827 };
10828
10829 noto-fonts-lgc-plus = callPackage ../by-name/no/noto-fonts/package.nix {
10830 suffix = "-lgc-plus";
10831 variants = [
10832 "Noto Sans"
10833 "Noto Serif"
10834 "Noto Sans Mono"
10835 "Noto Music"
10836 "Noto Sans Symbols"
10837 "Noto Sans Symbols 2"
10838 "Noto Sans Math"
10839 ];
10840 longDescription = ''
10841 This package provides the Noto Fonts, but only for latin, greek
10842 and cyrillic scripts, as well as some extra fonts.
10843 '';
10844 };
10845
10846 nullmailer = callPackage ../servers/mail/nullmailer {
10847 stdenv = gccStdenv;
10848 };
10849
10850 numix-icon-theme = callPackage ../data/icons/numix-icon-theme {
10851 inherit (plasma5Packages) breeze-icons;
10852 };
10853
10854 openmoji-color = callPackage ../data/fonts/openmoji { fontFormats = [ "glyf_colr_0" ]; };
10855
10856 openmoji-black = callPackage ../data/fonts/openmoji { fontFormats = [ "glyf" ]; };
10857
10858 papirus-maia-icon-theme = callPackage ../data/icons/papirus-maia-icon-theme {
10859 inherit (plasma5Packages) breeze-icons;
10860 };
10861
10862 papis = with python3Packages; toPythonApplication papis;
10863
10864 plata-theme = callPackage ../data/themes/plata {
10865 inherit (mate) marco;
10866 };
10867
10868 polychromatic = qt6Packages.callPackage ../applications/misc/polychromatic { };
10869
10870 qogir-kde = libsForQt5.callPackage ../data/themes/qogir-kde { };
10871
10872 ricochet-refresh = callPackage ../by-name/ri/ricochet-refresh/package.nix {
10873 protobuf = protobuf_21; # https://github.com/blueprint-freespeech/ricochet-refresh/issues/178
10874 };
10875
10876 shaderc = callPackage ../development/compilers/shaderc {
10877 inherit (darwin) autoSignDarwinBinariesHook;
10878 };
10879
10880 scheherazade-new = scheherazade.override {
10881 version = "4.400";
10882 };
10883
10884 inherit (callPackages ../data/fonts/gdouros { })
10885 aegan
10886 aegyptus
10887 akkadian
10888 assyrian
10889 eemusic
10890 maya
10891 symbola
10892 textfonts
10893 unidings
10894 ;
10895
10896 inherit (callPackages ../data/fonts/pretendard { })
10897 pretendard
10898 pretendard-gov
10899 pretendard-jp
10900 pretendard-std
10901 ;
10902
10903 sourceHanPackages = dontRecurseIntoAttrs (callPackage ../data/fonts/source-han { });
10904 source-han-sans = sourceHanPackages.sans;
10905 source-han-serif = sourceHanPackages.serif;
10906 source-han-mono = sourceHanPackages.mono;
10907 source-han-sans-vf-otf = sourceHanPackages.sans-vf-otf;
10908 source-han-sans-vf-ttf = sourceHanPackages.sans-vf-ttf;
10909 source-han-serif-vf-otf = sourceHanPackages.serif-vf-otf;
10910 source-han-serif-vf-ttf = sourceHanPackages.serif-vf-ttf;
10911
10912 tango-icon-theme = callPackage ../data/icons/tango-icon-theme {
10913 gtk = res.gtk2;
10914 };
10915
10916 themes = name: callPackage (../data/misc/themes + ("/" + name + ".nix")) { };
10917
10918 tex-gyre = callPackages ../data/fonts/tex-gyre { };
10919
10920 tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { };
10921
10922 whitesur-kde = kdePackages.callPackage ../data/themes/whitesur-kde { };
10923
10924 xkeyboard_config = xkeyboard-config;
10925
10926 xlsx2csv = with python3Packages; toPythonApplication xlsx2csv;
10927
10928 ### APPLICATIONS / GIS
10929
10930 qgis-ltr = callPackage ../applications/gis/qgis/ltr.nix { };
10931
10932 qgis = callPackage ../applications/gis/qgis { };
10933
10934 ### APPLICATIONS
10935
10936 _2bwm = callPackage ../applications/window-managers/2bwm {
10937 patches = config."2bwm".patches or [ ];
10938 };
10939
10940 inherit (qt6Packages.callPackage ../applications/office/activitywatch { })
10941 aw-qt
10942 aw-notify
10943 aw-server-rust
10944 aw-watcher-afk
10945 aw-watcher-window
10946 ;
10947
10948 activitywatch = callPackage ../applications/office/activitywatch/wrapper.nix { };
10949
10950 anilibria-winmaclinux = libsForQt5.callPackage ../applications/video/anilibria-winmaclinux { };
10951
10952 masterpdfeditor4 = libsForQt5.callPackage ../applications/misc/masterpdfeditor4 { };
10953
10954 inherit
10955 ({
10956 pdfstudio2021 = callPackage ../applications/misc/pdfstudio { year = "2021"; };
10957 pdfstudio2022 = callPackage ../applications/misc/pdfstudio { year = "2022"; };
10958 pdfstudio2023 = callPackage ../applications/misc/pdfstudio { year = "2023"; };
10959 pdfstudio2024 = callPackage ../applications/misc/pdfstudio { year = "2024"; };
10960 pdfstudioviewer = callPackage ../applications/misc/pdfstudio { program = "pdfstudioviewer"; };
10961 })
10962 pdfstudio2021
10963 pdfstudio2022
10964 pdfstudio2023
10965 pdfstudio2024
10966 pdfstudioviewer
10967 ;
10968
10969 airwave = libsForQt5.callPackage ../applications/audio/airwave { };
10970
10971 androidStudioPackages = recurseIntoAttrs (callPackage ../applications/editors/android-studio { });
10972 android-studio = androidStudioPackages.stable;
10973 android-studio-full = android-studio.full;
10974
10975 androidStudioForPlatformPackages = recurseIntoAttrs (
10976 callPackage ../applications/editors/android-studio-for-platform { }
10977 );
10978 android-studio-for-platform = androidStudioForPlatformPackages.stable;
10979
10980 apngasm = callPackage ../applications/graphics/apngasm { };
10981 apngasm_2 = callPackage ../applications/graphics/apngasm/2.nix { };
10982
10983 ardour = callPackage ../applications/audio/ardour { };
10984 ardour_7 = callPackage ../applications/audio/ardour/7.nix { };
10985
10986 arelle = with python3Packages; toPythonApplication arelle;
10987
10988 astroid = callPackage ../applications/networking/mailreaders/astroid {
10989 vim = vim-full.override { features = "normal"; };
10990 protobuf = protobuf_21;
10991 };
10992
10993 audacious = audacious-bare.override { withPlugins = true; };
10994
10995 av-98 = callPackage ../applications/networking/browsers/av-98 { };
10996
10997 bambootracker-qt6 = bambootracker.override { withQt6 = true; };
10998
10999 ausweisapp = qt6Packages.callPackage ../applications/misc/ausweisapp { };
11000
11001 awesome = callPackage ../applications/window-managers/awesome {
11002 cairo = cairo.override { xcbSupport = true; };
11003 inherit (texFunctions) fontsConf;
11004 };
11005
11006 awesomebump = libsForQt5.callPackage ../applications/graphics/awesomebump { };
11007
11008 backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { };
11009
11010 backintime-qt = qt6.callPackage ../applications/networking/sync/backintime/qt.nix { };
11011
11012 backintime = backintime-qt;
11013
11014 bespokesynth-with-vst2 = bespokesynth.override {
11015 enableVST2 = true;
11016 };
11017
11018 bfcal = libsForQt5.callPackage ../applications/misc/bfcal { };
11019
11020 bino3d = qt6Packages.callPackage ../applications/video/bino3d { };
11021
11022 bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { };
11023 bitlbee-plugins = callPackage ../applications/networking/instant-messengers/bitlbee/plugins.nix { };
11024
11025 bitscope = recurseIntoAttrs (
11026 callPackage ../applications/science/electronics/bitscope/packages.nix { }
11027 );
11028
11029 bitwig-studio3 = callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { };
11030 bitwig-studio4 = callPackage ../applications/audio/bitwig-studio/bitwig-studio4.nix {
11031 libjpeg = libjpeg8;
11032 };
11033 bitwig-studio5-unwrapped = callPackage ../applications/audio/bitwig-studio/bitwig-studio5.nix {
11034 libjpeg = libjpeg8;
11035 };
11036
11037 bitwig-studio5 = callPackage ../applications/audio/bitwig-studio/bitwig-wrapper.nix {
11038 bitwig-studio-unwrapped = bitwig-studio5-unwrapped;
11039 };
11040
11041 bitwig-studio = bitwig-studio5;
11042
11043 blackbox = callPackage ../applications/version-management/blackbox {
11044 pinentry = pinentry-curses;
11045 };
11046
11047 blender = callPackage ../by-name/bl/blender/package.nix {
11048 python3Packages = python311Packages;
11049 };
11050
11051 blender-hip = blender.override { hipSupport = true; };
11052
11053 blucontrol = callPackage ../applications/misc/blucontrol/wrapper.nix {
11054 inherit (haskellPackages) ghcWithPackages;
11055 };
11056
11057 breezy = with python3Packages; toPythonApplication breezy;
11058
11059 calcmysky = qt6Packages.callPackage ../applications/science/astronomy/calcmysky { };
11060
11061 # calico-felix and calico-node have not been packaged due to libbpf, linking issues
11062 inherit (callPackage ../applications/networking/cluster/calico { })
11063 calico-apiserver
11064 calico-app-policy
11065 calico-cni-plugin
11066 calico-kube-controllers
11067 calico-pod2daemon
11068 calico-typha
11069 calicoctl
11070 confd-calico
11071 ;
11072
11073 carla = libsForQt5.callPackage ../applications/audio/carla { };
11074
11075 cb2bib = libsForQt5.callPackage ../applications/office/cb2bib { };
11076
11077 cbconvert-gui = cbconvert.gui;
11078
11079 cdparanoia = cdparanoiaIII;
11080
11081 cdxj-indexer = with python3Packages; toPythonApplication cdxj-indexer;
11082
11083 chromium = callPackage ../applications/networking/browsers/chromium (config.chromium or { });
11084
11085 chuck = callPackage ../applications/audio/chuck {
11086 inherit (darwin) DarwinTools;
11087 };
11088
11089 clight = callPackage ../applications/misc/clight { };
11090
11091 clight-gui = libsForQt5.callPackage ../applications/misc/clight/clight-gui.nix { };
11092
11093 clightd = callPackage ../applications/misc/clight/clightd.nix { };
11094
11095 clipgrab = libsForQt5.callPackage ../applications/video/clipgrab { };
11096
11097 cmus = callPackage ../applications/audio/cmus {
11098 libjack = libjack2;
11099 };
11100
11101 cni = callPackage ../applications/networking/cluster/cni { };
11102 cni-plugins = callPackage ../applications/networking/cluster/cni/plugins.nix { };
11103
11104 communi = libsForQt5.callPackage ../applications/networking/irc/communi { };
11105
11106 confclerk = libsForQt5.callPackage ../applications/misc/confclerk { };
11107
11108 copyq = qt6Packages.callPackage ../applications/misc/copyq { };
11109
11110 csound = callPackage ../applications/audio/csound { };
11111
11112 csound-qt = libsForQt5.callPackage ../applications/audio/csound/csound-qt { };
11113
11114 codeblocksFull = codeblocks.override { contribPlugins = true; };
11115
11116 cudatext-qt = callPackage ../applications/editors/cudatext { widgetset = "qt5"; };
11117 cudatext-gtk = callPackage ../applications/editors/cudatext { widgetset = "gtk2"; };
11118 cudatext = cudatext-qt;
11119
11120 cqrlog = callPackage ../applications/radio/cqrlog {
11121 hamlib = hamlib_4;
11122 };
11123
11124 cutecom = libsForQt5.callPackage ../tools/misc/cutecom { };
11125
11126 darcs = haskell.lib.compose.disableCabalFlag "library" (
11127 haskell.lib.compose.justStaticExecutables haskellPackages.darcs
11128 );
11129
11130 darktable = callPackage ../by-name/da/darktable/package.nix {
11131 lua = lua5_4;
11132 pugixml = pugixml.override { shared = true; };
11133 };
11134
11135 datadog-agent = callPackage ../tools/networking/dd-agent/datadog-agent.nix {
11136 pythonPackages = datadog-integrations-core { };
11137 };
11138 datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { };
11139 datadog-integrations-core =
11140 extras:
11141 callPackage ../tools/networking/dd-agent/integrations-core.nix {
11142 extraIntegrations = extras;
11143 };
11144
11145 dbeaver-bin = callPackage ../by-name/db/dbeaver-bin/package.nix {
11146 inherit (darwin) autoSignDarwinBinariesHook;
11147 };
11148
11149 deadbeef = callPackage ../applications/audio/deadbeef { };
11150
11151 deadbeefPlugins = {
11152 headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { };
11153 lyricbar = callPackage ../applications/audio/deadbeef/plugins/lyricbar.nix { };
11154 mpris2 = callPackage ../applications/audio/deadbeef/plugins/mpris2.nix { };
11155 musical-spectrum = callPackage ../applications/audio/deadbeef/plugins/musical-spectrum.nix { };
11156 statusnotifier = callPackage ../applications/audio/deadbeef/plugins/statusnotifier.nix { };
11157 playlist-manager = callPackage ../applications/audio/deadbeef/plugins/playlist-manager.nix { };
11158 waveform-seekbar = callPackage ../applications/audio/deadbeef/plugins/waveform-seekbar.nix { };
11159 };
11160
11161 deadbeef-with-plugins = callPackage ../applications/audio/deadbeef/wrapper.nix {
11162 plugins = [ ];
11163 };
11164
11165 inherit (callPackage ../development/tools/devpod { }) devpod devpod-desktop;
11166
11167 dfasma = libsForQt5.callPackage ../applications/audio/dfasma { };
11168
11169 direwolf = callPackage ../applications/radio/direwolf {
11170 hamlib = hamlib_4;
11171 };
11172
11173 djv = callPackage ../by-name/dj/djv/package.nix { openexr = openexr_2; };
11174
11175 djview4 = djview;
11176
11177 dmenu-rs-enable-plugins = dmenu-rs.override { enablePlugins = true; };
11178
11179 inherit (callPackage ../applications/virtualization/docker { })
11180 docker_25
11181 docker_28
11182 ;
11183
11184 docker = docker_28;
11185 docker-client = docker.override { clientOnly = true; };
11186
11187 docker-gc = callPackage ../applications/virtualization/docker/gc.nix { };
11188 docker-machine-hyperkit =
11189 callPackage ../applications/networking/cluster/docker-machine/hyperkit.nix
11190 { };
11191 docker-machine-kvm2 = callPackage ../applications/networking/cluster/docker-machine/kvm2.nix { };
11192
11193 docker-buildx = callPackage ../applications/virtualization/docker/buildx.nix { };
11194 docker-compose = callPackage ../applications/virtualization/docker/compose.nix { };
11195 docker-sbom = callPackage ../applications/virtualization/docker/sbom.nix { };
11196
11197 drawio = callPackage ../applications/graphics/drawio {
11198 inherit (darwin) autoSignDarwinBinariesHook;
11199 };
11200 drawio-headless = callPackage ../applications/graphics/drawio/headless.nix { };
11201
11202 drawpile-server-headless = drawpile.override {
11203 buildClient = false;
11204 buildServerGui = false;
11205 };
11206
11207 drawterm-wayland = callPackage ../by-name/dr/drawterm/package.nix { withWayland = true; };
11208
11209 droopy = python3Packages.callPackage ../applications/networking/droopy { };
11210
11211 dwl = callPackage ../by-name/dw/dwl/package.nix {
11212 wlroots = wlroots_0_18;
11213 };
11214
11215 evilwm = callPackage ../applications/window-managers/evilwm {
11216 patches = config.evilwm.patches or [ ];
11217 };
11218
11219 eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { });
11220
11221 electrum = libsForQt5.callPackage ../applications/misc/electrum { };
11222
11223 electrum-grs = libsForQt5.callPackage ../applications/misc/electrum/grs.nix { };
11224
11225 electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { };
11226
11227 elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { };
11228
11229 elinks = callPackage ../applications/networking/browsers/elinks { };
11230
11231 inherit (recurseIntoAttrs (callPackage ../applications/editors/emacs { }))
11232 emacs30
11233 emacs30-gtk3
11234 emacs30-nox
11235 emacs30-pgtk
11236
11237 emacs30-macport
11238 ;
11239
11240 emacs-macport = emacs30-macport;
11241 emacs = emacs30;
11242 emacs-gtk = emacs30-gtk3;
11243 emacs-nox = emacs30-nox;
11244 emacs-pgtk = emacs30-pgtk;
11245
11246 emacsPackagesFor =
11247 emacs:
11248 import ./emacs-packages.nix {
11249 inherit (lib) makeScope makeOverridable dontRecurseIntoAttrs;
11250 emacs' = emacs;
11251 pkgs' = pkgs; # default pkgs used for bootstrapping the emacs package set
11252 };
11253
11254 espeak-classic = callPackage ../applications/audio/espeak { };
11255
11256 espeak-ng = callPackage ../applications/audio/espeak-ng { };
11257 espeak = res.espeak-ng;
11258
11259 espeakedit = callPackage ../applications/audio/espeak/edit.nix { };
11260
11261 input-leap = qt6Packages.callPackage ../applications/misc/input-leap {
11262 avahi = avahi.override { withLibdnssdCompat = true; };
11263 };
11264
11265 evolution-data-server-gtk4 = evolution-data-server.override {
11266 withGtk3 = false;
11267 withGtk4 = true;
11268 };
11269 evolution = callPackage ../applications/networking/mailreaders/evolution/evolution { };
11270 evolutionWithPlugins =
11271 callPackage ../applications/networking/mailreaders/evolution/evolution/wrapper.nix
11272 {
11273 plugins = [
11274 evolution
11275 evolution-ews
11276 ];
11277 };
11278
11279 fetchmail = callPackage ../applications/misc/fetchmail { };
11280 fetchmail_7 = callPackage ../applications/misc/fetchmail/v7.nix { };
11281
11282 firewalld-gui = firewalld.override { withGui = true; };
11283
11284 flacon = libsForQt5.callPackage ../applications/audio/flacon { };
11285
11286 fldigi = callPackage ../applications/radio/fldigi {
11287 hamlib = hamlib_4;
11288 };
11289
11290 focuswriter = qt6Packages.callPackage ../applications/editors/focuswriter { };
11291
11292 fossil = callPackage ../applications/version-management/fossil {
11293 sqlite = sqlite.override { enableDeserialize = true; };
11294 };
11295
11296 fritzing = qt6Packages.callPackage ../applications/science/electronics/fritzing { };
11297
11298 fvwm = fvwm2;
11299
11300 gaucheBootstrap = callPackage ../development/interpreters/gauche/boot.nix { };
11301
11302 gauche = callPackage ../development/interpreters/gauche { };
11303
11304 geany = callPackage ../applications/editors/geany { };
11305 geany-with-vte = callPackage ../applications/editors/geany/with-vte.nix { };
11306
11307 gImageReader-qt = qt6Packages.callPackage ../by-name/gi/gImageReader/package.nix {
11308 withQt6 = true;
11309 };
11310
11311 gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix {
11312 unwrapped = callPackage ../applications/radio/gnuradio {
11313 python = python3;
11314 };
11315 };
11316 gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs;
11317
11318 goldendict = libsForQt5.callPackage ../applications/misc/goldendict { };
11319 goldendict-ng = qt6Packages.callPackage ../applications/misc/goldendict-ng { };
11320
11321 inherit (ocamlPackages) google-drive-ocamlfuse;
11322
11323 gqrx-portaudio = gqrx.override {
11324 portaudioSupport = true;
11325 pulseaudioSupport = false;
11326 };
11327 gqrx-gr-audio = gqrx.override {
11328 portaudioSupport = false;
11329 pulseaudioSupport = false;
11330 };
11331
11332 guitarix = callPackage ../applications/audio/guitarix {
11333 fftw = fftwSinglePrec;
11334 };
11335
11336 welle-io = qt6Packages.callPackage ../applications/radio/welle-io { };
11337
11338 wireshark = qt6Packages.callPackage ../applications/networking/sniffers/wireshark {
11339 libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
11340 };
11341 wireshark-qt = wireshark;
11342
11343 qtwirediff = qt6Packages.callPackage ../applications/networking/sniffers/qtwirediff { };
11344
11345 tshark = wireshark-cli;
11346 wireshark-cli = wireshark.override {
11347 withQt = false;
11348 libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
11349 };
11350
11351 fclones = callPackage ../tools/misc/fclones { };
11352
11353 buildMozillaMach =
11354 opts: callPackage (import ../build-support/build-mozilla-mach/default.nix opts) { };
11355
11356 firefox-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox.nix {
11357 inherit
11358 stdenv
11359 lib
11360 callPackage
11361 fetchurl
11362 nixosTests
11363 buildMozillaMach
11364 ;
11365 };
11366 firefox-beta-unwrapped =
11367 import ../applications/networking/browsers/firefox/packages/firefox-beta.nix
11368 {
11369 inherit
11370 stdenv
11371 lib
11372 callPackage
11373 fetchurl
11374 nixosTests
11375 buildMozillaMach
11376 ;
11377 };
11378 firefox-devedition-unwrapped =
11379 import ../applications/networking/browsers/firefox/packages/firefox-devedition.nix
11380 {
11381 inherit
11382 stdenv
11383 lib
11384 callPackage
11385 fetchurl
11386 nixosTests
11387 buildMozillaMach
11388 ;
11389 };
11390 firefox-esr-140-unwrapped =
11391 import ../applications/networking/browsers/firefox/packages/firefox-esr-140.nix
11392 {
11393 inherit
11394 stdenv
11395 lib
11396 callPackage
11397 fetchurl
11398 nixosTests
11399 buildMozillaMach
11400 ;
11401 };
11402 firefox-esr-unwrapped = firefox-esr-140-unwrapped;
11403
11404 firefox = wrapFirefox firefox-unwrapped { };
11405 firefox-beta = wrapFirefox firefox-beta-unwrapped { };
11406 firefox-devedition = wrapFirefox firefox-devedition-unwrapped { };
11407
11408 firefox-mobile = callPackage ../applications/networking/browsers/firefox/mobile-config.nix { };
11409
11410 firefox-esr-140 = wrapFirefox firefox-esr-140-unwrapped {
11411 nameSuffix = "-esr";
11412 wmClass = "firefox-esr";
11413 icon = "firefox-esr";
11414 };
11415 firefox-esr = firefox-esr-140;
11416
11417 firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin {
11418 inherit (firefox-unwrapped.passthru) applicationName;
11419 generated = import ../applications/networking/browsers/firefox-bin/release_sources.nix;
11420 };
11421
11422 firefox-bin = wrapFirefox firefox-bin-unwrapped {
11423 pname = "firefox-bin";
11424 };
11425
11426 librewolf-unwrapped = import ../applications/networking/browsers/librewolf {
11427 inherit
11428 stdenv
11429 lib
11430 callPackage
11431 buildMozillaMach
11432 nixosTests
11433 ;
11434 };
11435
11436 librewolf = wrapFirefox librewolf-unwrapped {
11437 inherit (librewolf-unwrapped) extraPrefsFiles extraPoliciesFiles;
11438 libName = "librewolf";
11439 };
11440
11441 librewolf-bin = wrapFirefox librewolf-bin-unwrapped {
11442 pname = "librewolf-bin";
11443 extraPrefsFiles = [
11444 "${librewolf-bin-unwrapped}/lib/librewolf-bin-${librewolf-bin-unwrapped.version}/librewolf.cfg"
11445 ];
11446 extraPoliciesFiles = [
11447 "${librewolf-bin-unwrapped}/lib/librewolf-bin-${librewolf-bin-unwrapped.version}/distribution/extra-policies.json"
11448 ];
11449 };
11450
11451 floorp-bin = wrapFirefox floorp-bin-unwrapped {
11452 pname = "floorp-bin";
11453 };
11454
11455 formiko =
11456 with python3Packages;
11457 callPackage ../applications/editors/formiko {
11458 inherit buildPythonApplication;
11459 };
11460
11461 freedv = callPackage ../by-name/fr/freedv/package.nix {
11462 codec2 = codec2.override {
11463 freedvSupport = true;
11464 };
11465 };
11466
11467 inherit
11468 ({
11469 freeoffice = callPackage ../applications/office/softmaker/freeoffice.nix { };
11470 })
11471 freeoffice
11472 ;
11473
11474 gimp3 = callPackage ../applications/graphics/gimp {
11475 lcms = lcms2;
11476 };
11477
11478 gimp3-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix {
11479 gimpPlugins = gimp3Plugins;
11480 plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied
11481 };
11482
11483 gimp3Plugins = recurseIntoAttrs (
11484 callPackage ../applications/graphics/gimp/plugins {
11485 gimp = gimp3;
11486 }
11487 );
11488
11489 gimp = callPackage ../applications/graphics/gimp/2.0 {
11490 lcms = lcms2;
11491 };
11492
11493 gimp-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix {
11494 plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied
11495 };
11496
11497 gimpPlugins = recurseIntoAttrs (callPackage ../applications/graphics/gimp/plugins { });
11498
11499 gtk-pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { withGtk3 = true; };
11500
11501 kemai = qt6Packages.callPackage ../applications/misc/kemai { };
11502
11503 jetbrains = (
11504 recurseIntoAttrs (
11505 callPackages ../applications/editors/jetbrains {
11506 vmopts = config.jetbrains.vmopts or null;
11507 jdk = jetbrains.jdk;
11508 }
11509 )
11510 // {
11511 jdk-no-jcef = callPackage ../development/compilers/jetbrains-jdk {
11512 jdk = jdk21;
11513 withJcef = false;
11514 };
11515 jdk-no-jcef-17 = callPackage ../development/compilers/jetbrains-jdk/17.nix {
11516 withJcef = false;
11517 };
11518 jdk = callPackage ../development/compilers/jetbrains-jdk {
11519 jdk = jdk21;
11520 };
11521 jcef = callPackage ../development/compilers/jetbrains-jdk/jcef.nix {
11522 jdk = jdk21;
11523 };
11524 }
11525 );
11526
11527 librespot = callPackage ../applications/audio/librespot {
11528 withALSA = stdenv.hostPlatform.isLinux;
11529 withPulseAudio = config.pulseaudio or stdenv.hostPlatform.isLinux;
11530 withPortAudio = stdenv.hostPlatform.isDarwin;
11531 };
11532
11533 linssid = libsForQt5.callPackage ../applications/networking/linssid { };
11534
11535 linvstmanager = qt5.callPackage ../applications/audio/linvstmanager { };
11536
11537 deadd-notification-center = haskell.lib.compose.justStaticExecutables (
11538 haskellPackages.callPackage ../applications/misc/deadd-notification-center { }
11539 );
11540
11541 m32edit = callPackage ../applications/audio/midas/m32edit.nix { };
11542
11543 manim = python3Packages.toPythonApplication python3Packages.manim;
11544
11545 manim-slides =
11546 (python3Packages.toPythonApplication python3Packages.manim-slides).overridePythonAttrs
11547 (oldAttrs: {
11548 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.pyqt6-full;
11549 });
11550
11551 manuskript = libsForQt5.callPackage ../applications/editors/manuskript { };
11552
11553 minari = python3Packages.toPythonApplication python3Packages.minari;
11554
11555 mindforger = libsForQt5.callPackage ../applications/editors/mindforger { };
11556
11557 molsketch = libsForQt5.callPackage ../applications/editors/molsketch { };
11558
11559 gphoto2 = callPackage ../applications/misc/gphoto2 { };
11560
11561 gphoto2fs = callPackage ../applications/misc/gphoto2/gphotofs.nix { };
11562
11563 graphicsmagick_q16 = graphicsmagick.override { quantumdepth = 16; };
11564 graphicsmagick-imagemagick-compat = graphicsmagick.imagemagick-compat;
11565
11566 q4wine = libsForQt5.callPackage ../applications/misc/q4wine { };
11567
11568 googleearth-pro = libsForQt5.callPackage ../applications/misc/googleearth-pro { };
11569
11570 gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel { };
11571
11572 gpsbabel-gui = gpsbabel.override {
11573 withGUI = true;
11574 withDoc = true;
11575 };
11576
11577 guvcview = libsForQt5.callPackage ../os-specific/linux/guvcview { };
11578
11579 hachoir = with python3Packages; toPythonApplication hachoir;
11580
11581 heimer = libsForQt5.callPackage ../applications/misc/heimer { };
11582
11583 hydrogen-web-unwrapped =
11584 callPackage ../applications/networking/instant-messengers/hydrogen-web/unwrapped.nix
11585 { };
11586
11587 hydrogen-web = callPackage ../applications/networking/instant-messengers/hydrogen-web/wrapper.nix {
11588 conf = config.hydrogen-web.conf or { };
11589 };
11590
11591 hledger = haskell.lib.compose.justStaticExecutables haskellPackages.hledger;
11592 hledger-iadd = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-iadd;
11593 hledger-interest = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-interest;
11594 hledger-ui = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-ui;
11595 hledger-web =
11596 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
11597 (
11598 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
11599 lib.id
11600 else
11601 haskell.lib.compose.justStaticExecutables
11602 )
11603 haskellPackages.hledger-web;
11604 hledger-utils = with python3.pkgs; toPythonApplication hledger-utils;
11605
11606 hpack = haskell.lib.compose.justStaticExecutables haskellPackages.hpack;
11607
11608 hpmyroom = libsForQt5.callPackage ../applications/networking/hpmyroom { };
11609
11610 hugin = callPackage ../applications/graphics/hugin {
11611 wxGTK = wxGTK32;
11612 };
11613
11614 huggle = libsForQt5.callPackage ../applications/misc/huggle { };
11615
11616 hyperion-ng = libsForQt5.callPackage ../applications/video/hyperion-ng { };
11617
11618 jackline = callPackage ../applications/networking/instant-messengers/jackline {
11619 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
11620 };
11621
11622 libmt32emu = callPackage ../applications/audio/munt/libmt32emu.nix { };
11623
11624 mt32emu-qt = libsForQt5.callPackage ../applications/audio/munt/mt32emu-qt.nix { };
11625
11626 mt32emu-smf2wav = callPackage ../applications/audio/munt/mt32emu-smf2wav.nix { };
11627
11628 noson = libsForQt5.callPackage ../applications/audio/noson { };
11629
11630 pass2csv = python3Packages.callPackage ../tools/security/pass2csv { };
11631
11632 pinboard = with python3Packages; toPythonApplication pinboard;
11633
11634 pinboard-notes-backup = haskell.lib.compose.justStaticExecutables haskellPackages.pinboard-notes-backup;
11635
11636 pixel2svg = python310Packages.callPackage ../tools/graphics/pixel2svg { };
11637
11638 inherit (callPackage ../applications/virtualization/singularity/packages.nix { })
11639 apptainer
11640 singularity
11641 apptainer-overriden-nixos
11642 singularity-overriden-nixos
11643 ;
11644
11645 inherit (callPackages ../development/libraries/wlroots { })
11646 wlroots_0_17
11647 wlroots_0_18
11648 wlroots_0_19
11649 ;
11650
11651 sway-contrib = recurseIntoAttrs (callPackages ../applications/misc/sway-contrib { });
11652
11653 i3 = callPackage ../applications/window-managers/i3 {
11654 xcb-util-cursor = if stdenv.hostPlatform.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
11655 };
11656
11657 i3-auto-layout = callPackage ../applications/window-managers/i3/auto-layout.nix { };
11658
11659 i3-rounded = callPackage ../applications/window-managers/i3/rounded.nix { };
11660
11661 i3altlayout = callPackage ../applications/window-managers/i3/altlayout.nix { };
11662
11663 i3-balance-workspace =
11664 python3Packages.callPackage ../applications/window-managers/i3/balance-workspace.nix
11665 { };
11666
11667 i3-cycle-focus = callPackage ../applications/window-managers/i3/cycle-focus.nix { };
11668
11669 i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { };
11670
11671 i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.nix { };
11672
11673 i3-ratiosplit = callPackage ../applications/window-managers/i3/i3-ratiosplit.nix { };
11674
11675 i3-resurrect = python3Packages.callPackage ../applications/window-managers/i3/i3-resurrect.nix { };
11676
11677 i3-swallow = python3Packages.callPackage ../applications/window-managers/i3/swallow.nix { };
11678
11679 i3blocks = callPackage ../applications/window-managers/i3/blocks.nix { };
11680
11681 i3blocks-gaps = callPackage ../applications/window-managers/i3/blocks-gaps.nix { };
11682
11683 i3ipc-glib = callPackage ../applications/window-managers/i3/i3ipc-glib.nix { };
11684
11685 i3lock = callPackage ../applications/window-managers/i3/lock.nix {
11686 cairo = cairo.override { xcbSupport = true; };
11687 };
11688
11689 i3lock-blur = callPackage ../applications/window-managers/i3/lock-blur.nix { };
11690
11691 i3lock-color = callPackage ../applications/window-managers/i3/lock-color.nix { };
11692
11693 i3lock-fancy = callPackage ../applications/window-managers/i3/lock-fancy.nix { };
11694
11695 i3lock-fancy-rapid = callPackage ../applications/window-managers/i3/lock-fancy-rapid.nix { };
11696
11697 i3status = callPackage ../applications/window-managers/i3/status.nix { };
11698
11699 i3wsr = callPackage ../applications/window-managers/i3/wsr.nix { };
11700
11701 i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { };
11702
11703 kitti3 = python3.pkgs.callPackage ../applications/window-managers/i3/kitti3.nix { };
11704
11705 waybox = callPackage ../by-name/wa/waybox/package.nix {
11706 wlroots = wlroots_0_17;
11707 };
11708
11709 workstyle = callPackage ../applications/window-managers/i3/workstyle.nix { };
11710
11711 wmfocus = callPackage ../applications/window-managers/i3/wmfocus.nix { };
11712
11713 ii = callPackage ../applications/networking/irc/ii {
11714 stdenv = gccStdenv;
11715 };
11716
11717 ikiwiki = callPackage ../applications/misc/ikiwiki {
11718 inherit
11719 (perlPackages.override {
11720 pkgs = pkgs // {
11721 imagemagick = imagemagickBig;
11722 };
11723 })
11724 ImageMagick
11725 ;
11726 };
11727
11728 ikiwiki-full = ikiwiki.override {
11729 bazaarSupport = false; # tests broken
11730 cvsSupport = true;
11731 docutilsSupport = true;
11732 gitSupport = true;
11733 mercurialSupport = true;
11734 monotoneSupport = true;
11735 subversionSupport = true;
11736 };
11737
11738 avalonia-ilspy = callPackage ../applications/misc/avalonia-ilspy {
11739 inherit (darwin) autoSignDarwinBinariesHook;
11740 };
11741
11742 imagemagick6_light = imagemagick6.override {
11743 bzip2Support = false;
11744 zlibSupport = false;
11745 libX11Support = false;
11746 libXtSupport = false;
11747 fontconfigSupport = false;
11748 freetypeSupport = false;
11749 ghostscriptSupport = false;
11750 libjpegSupport = false;
11751 djvulibreSupport = false;
11752 lcms2Support = false;
11753 openexrSupport = false;
11754 libpngSupport = false;
11755 liblqr1Support = false;
11756 librsvgSupport = false;
11757 libtiffSupport = false;
11758 libxml2Support = false;
11759 openjpegSupport = false;
11760 libwebpSupport = false;
11761 libheifSupport = false;
11762 libde265Support = false;
11763 };
11764
11765 imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix { };
11766
11767 imagemagick6Big = imagemagick6.override {
11768 ghostscriptSupport = true;
11769 };
11770
11771 imagemagick_light = lowPrio (
11772 imagemagick.override {
11773 bzip2Support = false;
11774 zlibSupport = false;
11775 libX11Support = false;
11776 libXtSupport = false;
11777 fontconfigSupport = false;
11778 freetypeSupport = false;
11779 libraqmSupport = false;
11780 libjpegSupport = false;
11781 djvulibreSupport = false;
11782 lcms2Support = false;
11783 openexrSupport = false;
11784 libjxlSupport = false;
11785 libpngSupport = false;
11786 liblqr1Support = false;
11787 librsvgSupport = false;
11788 libtiffSupport = false;
11789 libxml2Support = false;
11790 openjpegSupport = false;
11791 libwebpSupport = false;
11792 libheifSupport = false;
11793 }
11794 );
11795
11796 imagemagick = lowPrio (
11797 callPackage ../applications/graphics/ImageMagick {
11798 }
11799 );
11800
11801 imagemagickBig = lowPrio (
11802 imagemagick.override {
11803 ghostscriptSupport = true;
11804 }
11805 );
11806
11807 inherit (nodePackages) imapnotify;
11808
11809 img2pdf = with python3Packages; toPythonApplication img2pdf;
11810
11811 inkscape = callPackage ../applications/graphics/inkscape {
11812 lcms = lcms2;
11813 };
11814
11815 inkscape-with-extensions = callPackage ../applications/graphics/inkscape/with-extensions.nix { };
11816
11817 inkscape-extensions = recurseIntoAttrs (
11818 callPackages ../applications/graphics/inkscape/extensions.nix { }
11819 );
11820
11821 ion3 = callPackage ../applications/window-managers/ion-3 {
11822 lua = lua5_1;
11823 };
11824
11825 jabcode = callPackage ../development/libraries/jabcode { };
11826
11827 jabcode-writer = callPackage ../development/libraries/jabcode {
11828 subproject = "writer";
11829 };
11830
11831 jabcode-reader = callPackage ../development/libraries/jabcode {
11832 subproject = "reader";
11833 };
11834
11835 jackmix = libsForQt5.callPackage ../applications/audio/jackmix { };
11836 jackmix_jack1 = jackmix.override { jack = jack1; };
11837
11838 js8call = qt5.callPackage ../applications/radio/js8call { };
11839
11840 jwm = callPackage ../applications/window-managers/jwm { };
11841
11842 jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { };
11843
11844 inherit (callPackage ../applications/networking/cluster/k3s { })
11845 k3s_1_31
11846 k3s_1_32
11847 k3s_1_33
11848 ;
11849 k3s = k3s_1_33;
11850
11851 kapow = libsForQt5.callPackage ../applications/misc/kapow { };
11852
11853 okteta = libsForQt5.callPackage ../applications/editors/okteta { };
11854
11855 k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { };
11856
11857 kiwix = qt6Packages.callPackage ../applications/misc/kiwix { };
11858
11859 kiwix-tools = callPackage ../applications/misc/kiwix/tools.nix { };
11860
11861 klayout = libsForQt5.callPackage ../applications/misc/klayout { };
11862
11863 klee = callPackage ../applications/science/logic/klee {
11864 llvmPackages = llvmPackages_18;
11865 };
11866
11867 kotatogram-desktop =
11868 callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop
11869 { };
11870
11871 kubeval = callPackage ../applications/networking/cluster/kubeval { };
11872
11873 kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { };
11874
11875 kubectl-convert = kubectl.convert;
11876
11877 kubectl-view-allocations =
11878 callPackage ../applications/networking/cluster/kubectl-view-allocations
11879 { };
11880
11881 kthxbye = callPackage ../servers/monitoring/prometheus/kthxbye.nix { };
11882
11883 linkerd = callPackage ../applications/networking/cluster/linkerd { };
11884 linkerd_edge = callPackage ../applications/networking/cluster/linkerd/edge.nix { };
11885 linkerd_stable = linkerd;
11886
11887 kuma = callPackage ../applications/networking/cluster/kuma { isFull = true; };
11888 kuma-experimental = callPackage ../applications/networking/cluster/kuma {
11889 isFull = true;
11890 enableGateway = true;
11891 pname = "kuma-experimental";
11892 };
11893 kumactl = callPackage ../applications/networking/cluster/kuma {
11894 components = [ "kumactl" ];
11895 pname = "kumactl";
11896 };
11897 kuma-cp = callPackage ../applications/networking/cluster/kuma {
11898 components = [ "kuma-cp" ];
11899 pname = "kuma-cp";
11900 };
11901 kuma-dp = callPackage ../applications/networking/cluster/kuma {
11902 components = [ "kuma-dp" ];
11903 pname = "kuma-dp";
11904 };
11905
11906 kubernetes-helm = callPackage ../applications/networking/cluster/helm { };
11907
11908 wrapHelm = callPackage ../applications/networking/cluster/helm/wrapper.nix { };
11909
11910 kubernetes-helm-wrapped = wrapHelm kubernetes-helm { };
11911
11912 kubernetes-helmPlugins = recurseIntoAttrs (
11913 callPackage ../applications/networking/cluster/helm/plugins { }
11914 );
11915
11916 kup = libsForQt5.callPackage ../applications/misc/kup { };
11917
11918 kvirc = libsForQt5.callPackage ../applications/networking/irc/kvirc { };
11919
11920 ladspaH = callPackage ../applications/audio/ladspa-sdk/ladspah.nix { };
11921
11922 ladspaPlugins = callPackage ../applications/audio/ladspa-plugins {
11923 fftw = fftwSinglePrec;
11924 };
11925
11926 ladspa-sdk = callPackage ../applications/audio/ladspa-sdk { };
11927
11928 lemonbar = callPackage ../applications/window-managers/lemonbar { };
11929
11930 lemonbar-xft = callPackage ../applications/window-managers/lemonbar/xft.nix { };
11931
11932 lenovo-legion = libsForQt5.callPackage ../os-specific/linux/lenovo-legion/app.nix { };
11933
11934 libkiwix = callPackage ../applications/misc/kiwix/lib.nix { };
11935
11936 libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { };
11937
11938 libreoffice = hiPrio libreoffice-still;
11939 libreoffice-unwrapped = libreoffice.unwrapped;
11940
11941 libreoffice-qt = hiPrio libreoffice-qt-still;
11942 libreoffice-qt-unwrapped = libreoffice-qt.unwrapped;
11943
11944 libreoffice-qt-fresh = lowPrio (
11945 callPackage ../applications/office/libreoffice/wrapper.nix {
11946 unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
11947 kdeIntegration = true;
11948 variant = "fresh";
11949 };
11950 }
11951 );
11952 libreoffice-qt-fresh-unwrapped = libreoffice-qt-fresh.unwrapped;
11953
11954 libreoffice-qt-still = lowPrio (
11955 callPackage ../applications/office/libreoffice/wrapper.nix {
11956 unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
11957 kdeIntegration = true;
11958 variant = "still";
11959 };
11960 }
11961 );
11962 libreoffice-qt-still-unwrapped = libreoffice-qt-still.unwrapped;
11963
11964 libreoffice-fresh = lowPrio (
11965 callPackage ../applications/office/libreoffice/wrapper.nix {
11966 unwrapped = callPackage ../applications/office/libreoffice {
11967 variant = "fresh";
11968 };
11969 }
11970 );
11971 libreoffice-fresh-unwrapped = libreoffice-fresh.unwrapped;
11972
11973 libreoffice-still = lowPrio (
11974 callPackage ../applications/office/libreoffice/wrapper.nix {
11975 unwrapped = callPackage ../applications/office/libreoffice {
11976 variant = "still";
11977 };
11978 }
11979 );
11980 libreoffice-still-unwrapped = libreoffice-still.unwrapped;
11981
11982 libreoffice-collabora = callPackage ../applications/office/libreoffice {
11983 variant = "collabora";
11984 withFonts = true;
11985 };
11986
11987 libutp = callPackage ../applications/networking/p2p/libutp { };
11988 libutp_3_4 = callPackage ../applications/networking/p2p/libutp/3.4.nix { };
11989
11990 linphone = libsForQt5.callPackage ../applications/networking/instant-messengers/linphone { };
11991
11992 lmms = libsForQt5.callPackage ../applications/audio/lmms {
11993 lame = null;
11994 libsoundio = null;
11995 portaudio = null;
11996 };
11997
11998 luminanceHDR = callPackage ../applications/graphics/luminance-hdr {
11999 openexr = openexr_2;
12000 };
12001
12002 luddite = with python3Packages; toPythonApplication luddite;
12003
12004 lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris {
12005 inherit (pkgs) meson;
12006 };
12007 lutris = callPackage ../applications/misc/lutris/fhsenv.nix { };
12008 lutris-free = lutris.override {
12009 steamSupport = false;
12010 };
12011
12012 lv2lint = callPackage ../applications/audio/lv2lint/default.nix { };
12013
12014 lxi-tools = callPackage ../tools/networking/lxi-tools { };
12015 lxi-tools-gui = callPackage ../tools/networking/lxi-tools { withGui = true; };
12016
12017 lyx = libsForQt5.callPackage ../applications/misc/lyx { };
12018
12019 magic-wormhole = with python3Packages; toPythonApplication magic-wormhole;
12020
12021 magnetophonDSP = lib.recurseIntoAttrs {
12022 CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { };
12023 CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { };
12024 ConstantDetuneChorus = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { };
12025 faustCompressors = callPackage ../applications/audio/magnetophonDSP/faustCompressors { };
12026 LazyLimiter = callPackage ../applications/audio/magnetophonDSP/LazyLimiter { };
12027 MBdistortion = callPackage ../applications/audio/magnetophonDSP/MBdistortion { };
12028 pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { };
12029 RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
12030 VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
12031 shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { };
12032 };
12033
12034 mandelbulber = callPackage ../applications/graphics/mandelbulber { };
12035
12036 mastodon-bot = nodePackages.mastodon-bot;
12037
12038 matrix-commander =
12039 python3Packages.callPackage ../applications/networking/instant-messengers/matrix-commander
12040 { };
12041
12042 mbrola = callPackage ../applications/audio/mbrola { };
12043
12044 mbrola-voices = callPackage ../applications/audio/mbrola/voices.nix { };
12045
12046 mediaelch-qt5 = callPackage ../by-name/me/mediaelch/package.nix { qtVersion = 5; };
12047 mediaelch-qt6 = mediaelch;
12048
12049 mendeley = libsForQt5.callPackage ../applications/office/mendeley {
12050 gconf = gnome2.GConf;
12051 };
12052
12053 mercurialFull = mercurial.override { fullBuild = true; };
12054
12055 meshlab = callPackage ../by-name/me/meshlab/package.nix {
12056 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_18.stdenv else stdenv;
12057 llvmPackages = llvmPackages_18;
12058 };
12059
12060 meshlab-unstable = callPackage ../by-name/me/meshlab-unstable/package.nix {
12061 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_18.stdenv else stdenv;
12062 llvmPackages = llvmPackages_18;
12063 };
12064
12065 meshcentral = callPackage ../tools/admin/meshcentral { };
12066
12067 michabo = libsForQt5.callPackage ../applications/misc/michabo { };
12068
12069 miniaudicle = qt6Packages.callPackage ../applications/audio/miniaudicle { };
12070
12071 minitube = libsForQt5.callPackage ../applications/video/minitube { };
12072
12073 mixxx = qt6Packages.callPackage ../applications/audio/mixxx { };
12074
12075 mldonkey = callPackage ../applications/networking/p2p/mldonkey {
12076 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
12077 };
12078
12079 mmlgui = callPackage ../applications/audio/mmlgui {
12080 libvgm = libvgm.override {
12081 withAllEmulators = false;
12082 emulators = [
12083 "_PRESET_SMD"
12084 ];
12085 enableLibplayer = false;
12086 };
12087 };
12088
12089 monotone = callPackage ../applications/version-management/monotone {
12090 lua = lua5;
12091 };
12092
12093 monotoneViz = callPackage ../applications/version-management/monotone-viz {
12094 ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
12095 };
12096
12097 monitor = callPackage ../applications/system/monitor {
12098 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
12099 };
12100
12101 moolticute = libsForQt5.callPackage ../applications/misc/moolticute { };
12102
12103 mopidyPackages =
12104 (callPackages ../applications/audio/mopidy {
12105 python = python3;
12106 })
12107 // {
12108 __attrsFailEvaluation = true;
12109 };
12110
12111 inherit (mopidyPackages)
12112 mopidy
12113 mopidy-listenbrainz
12114 mopidy-bandcamp
12115 mopidy-iris
12116 mopidy-jellyfin
12117 mopidy-local
12118 mopidy-moped
12119 mopidy-mopify
12120 mopidy-mpd
12121 mopidy-mpris
12122 mopidy-muse
12123 mopidy-musicbox-webclient
12124 mopidy-notify
12125 mopidy-podcast
12126 mopidy-scrobbler
12127 mopidy-somafm
12128 mopidy-soundcloud
12129 mopidy-spotify
12130 mopidy-subidy
12131 mopidy-tidal
12132 mopidy-tunein
12133 mopidy-youtube
12134 mopidy-ytmusic
12135 ;
12136
12137 mpg123 = callPackage ../applications/audio/mpg123 {
12138 jack = libjack2;
12139 };
12140
12141 libmpg123 = mpg123.override {
12142 libOnly = true;
12143 withConplay = false;
12144 };
12145
12146 pragha = libsForQt5.callPackage ../applications/audio/pragha { };
12147
12148 rofi-emoji = (callPackage ../applications/misc/rofi-emoji { }).v3;
12149
12150 rofi-rbw = python3Packages.callPackage ../applications/misc/rofi-rbw {
12151 waylandSupport = false;
12152 x11Support = false;
12153 };
12154
12155 rofi-rbw-wayland = python3Packages.callPackage ../applications/misc/rofi-rbw {
12156 waylandSupport = true;
12157 };
12158
12159 rofi-rbw-x11 = python3Packages.callPackage ../applications/misc/rofi-rbw {
12160 x11Support = true;
12161 };
12162
12163 rquickshare-legacy = rquickshare.override { app-type = "legacy"; };
12164
12165 # a somewhat more maintained fork of ympd
12166 memento = qt6Packages.callPackage ../applications/video/memento { };
12167
12168 mplayer = callPackage ../applications/video/mplayer (
12169 {
12170 libdvdnav = libdvdnav_4_2_1;
12171 }
12172 // (config.mplayer or { })
12173 );
12174
12175 mpv-unwrapped = callPackage ../applications/video/mpv {
12176 stdenv = if stdenv.hostPlatform.isDarwin then swiftPackages.stdenv else stdenv;
12177 };
12178
12179 # Wrap avoiding rebuild
12180 mpv = mpv-unwrapped.wrapper { mpv = mpv-unwrapped; };
12181
12182 mpvScripts = mpv-unwrapped.scripts;
12183
12184 mu-repo = python3Packages.callPackage ../applications/misc/mu-repo { };
12185
12186 murmur =
12187 (callPackages ../applications/networking/mumble {
12188 avahi = avahi-compat;
12189 pulseSupport = config.pulseaudio or false;
12190 iceSupport = config.murmur.iceSupport or true;
12191 }).murmur;
12192
12193 mumble =
12194 (callPackages ../applications/networking/mumble {
12195 avahi = avahi-compat;
12196 jackSupport = config.mumble.jackSupport or false;
12197 speechdSupport = config.mumble.speechdSupport or false;
12198 }).mumble;
12199
12200 mumble_overlay = (callPackages ../applications/networking/mumble { }).overlay;
12201
12202 mup = callPackage ../applications/audio/mup { };
12203
12204 musescore = qt6.callPackage ../applications/audio/musescore { };
12205
12206 mwic = callPackage ../applications/misc/mwic {
12207 pythonPackages = python3Packages;
12208 };
12209
12210 natron = libsForQt5.callPackage ../applications/video/natron { };
12211
12212 netmaker = callPackage ../applications/networking/netmaker { subPackages = [ "." ]; };
12213 netmaker-full = callPackage ../applications/networking/netmaker { };
12214
12215 ninja_1_11 = callPackage ../by-name/ni/ninja/package.nix { ninjaRelease = "1.11"; };
12216
12217 nootka = qt5.callPackage ../applications/audio/nootka { };
12218
12219 opcua-client-gui = libsForQt5.callPackage ../misc/opcua-client-gui { };
12220
12221 ostinato = libsForQt5.callPackage ../applications/networking/ostinato {
12222 protobuf = protobuf_21;
12223 };
12224
12225 p4v = qt6Packages.callPackage ../applications/version-management/p4v { };
12226
12227 pcmanfm-qt = lxqt.pcmanfm-qt;
12228
12229 pdfmixtool = libsForQt5.callPackage ../applications/office/pdfmixtool { };
12230
12231 pijuice = with python3Packages; toPythonApplication pijuice;
12232
12233 pinegrow6 = callPackage ../applications/editors/pinegrow { pinegrowVersion = "6"; };
12234
12235 pinegrow = callPackage ../applications/editors/pinegrow { };
12236
12237 pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { };
12238
12239 playonlinux = callPackage ../applications/misc/playonlinux { stdenv = stdenv_32bit; };
12240
12241 pleroma-bot = python3Packages.callPackage ../development/python-modules/pleroma-bot { };
12242
12243 pnglatex = with python3Packages; toPythonApplication pnglatex;
12244
12245 polybarFull = polybar.override {
12246 alsaSupport = true;
12247 githubSupport = true;
12248 mpdSupport = true;
12249 pulseSupport = true;
12250 iwSupport = false;
12251 nlSupport = true;
12252 i3Support = true;
12253 };
12254
12255 polyphone = qt6.callPackage ../applications/audio/polyphone { };
12256
12257 scx = recurseIntoAttrs (callPackage ../os-specific/linux/scx { });
12258
12259 shogun = callPackage ../applications/science/machine-learning/shogun {
12260 protobuf = protobuf_21;
12261 };
12262
12263 smtube = libsForQt5.callPackage ../applications/video/smtube { };
12264
12265 inherit
12266 ({
12267 softmaker-office = callPackage ../applications/office/softmaker/softmaker-office.nix { };
12268 softmaker-office-nx = callPackage ../applications/office/softmaker/softmaker-office-nx.nix { };
12269 })
12270 softmaker-office
12271 softmaker-office-nx
12272 ;
12273
12274 taxi-cli = with python3Packages; toPythonApplication taxi;
12275
12276 imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix {
12277 lua = lua5;
12278 };
12279
12280 pdfsam-basic = callPackage ../applications/misc/pdfsam-basic {
12281 jdk21 = openjdk21.override { enableJavaFX = true; };
12282 };
12283
12284 mupdf-headless = mupdf.override {
12285 enableX11 = false;
12286 enableGL = false;
12287 };
12288
12289 diffpdf = libsForQt5.callPackage ../applications/misc/diffpdf { };
12290
12291 diff-pdf = callPackage ../applications/misc/diff-pdf {
12292 wxGTK = wxGTK32;
12293 };
12294
12295 mypaint-brushes1 = callPackage ../development/libraries/mypaint-brushes/1.0.nix { };
12296
12297 mypaint-brushes = callPackage ../development/libraries/mypaint-brushes { };
12298
12299 mythtv = libsForQt5.callPackage ../applications/video/mythtv { };
12300
12301 ncdu_1 = callPackage ../by-name/nc/ncdu/1.nix { };
12302
12303 notepadqq = libsForQt5.callPackage ../applications/editors/notepadqq { };
12304
12305 notmuch = callPackage ../applications/networking/mailreaders/notmuch {
12306 pythonPackages = python3Packages;
12307 };
12308
12309 notmuch-mutt = callPackage ../applications/networking/mailreaders/notmuch/mutt.nix { };
12310
12311 muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { };
12312
12313 nufraw = callPackage ../applications/graphics/nufraw { };
12314
12315 nufraw-thumbnailer = callPackage ../applications/graphics/nufraw {
12316 addThumbnailer = true;
12317 };
12318
12319 obs-studio = qt6Packages.callPackage ../applications/video/obs-studio { };
12320
12321 obs-studio-plugins = recurseIntoAttrs (callPackage ../applications/video/obs-studio/plugins { });
12322 wrapOBS = callPackage ../applications/video/obs-studio/wrapper.nix { };
12323
12324 omegat = callPackage ../applications/misc/omegat.nix { };
12325
12326 openambit = qt5.callPackage ../applications/misc/openambit { };
12327
12328 openbox-menu = callPackage ../applications/misc/openbox-menu {
12329 stdenv = gccStdenv;
12330 };
12331
12332 openbrf = libsForQt5.callPackage ../applications/misc/openbrf { };
12333
12334 opencpn = callPackage ../applications/misc/opencpn {
12335 inherit (darwin) DarwinTools;
12336 };
12337
12338 open-music-kontrollers = lib.recurseIntoAttrs {
12339 eteroj = callPackage ../applications/audio/open-music-kontrollers/eteroj.nix { };
12340 jit = callPackage ../applications/audio/open-music-kontrollers/jit.nix { };
12341 mephisto = callPackage ../applications/audio/open-music-kontrollers/mephisto.nix { };
12342 midi_matrix = callPackage ../applications/audio/open-music-kontrollers/midi_matrix.nix { };
12343 moony = callPackage ../applications/audio/open-music-kontrollers/moony.nix { };
12344 orbit = callPackage ../applications/audio/open-music-kontrollers/orbit.nix { };
12345 patchmatrix = callPackage ../applications/audio/open-music-kontrollers/patchmatrix.nix { };
12346 router = callPackage ../applications/audio/open-music-kontrollers/router.nix { };
12347 sherlock = callPackage ../applications/audio/open-music-kontrollers/sherlock.nix { };
12348 synthpod = callPackage ../applications/audio/open-music-kontrollers/synthpod.nix { };
12349 vm = callPackage ../applications/audio/open-music-kontrollers/vm.nix { };
12350 };
12351
12352 inherit (callPackages ../data/fonts/open-relay { })
12353 constructium
12354 fairfax
12355 fairfax-hd
12356 kreative-square
12357 ;
12358
12359 opentx = libsForQt5.callPackage ../applications/misc/opentx { };
12360
12361 organicmaps = qt6Packages.callPackage ../applications/misc/organicmaps { };
12362
12363 openrazer-daemon = python3Packages.toPythonApplication python3Packages.openrazer-daemon;
12364
12365 orpie = callPackage ../applications/misc/orpie {
12366 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
12367 };
12368
12369 osmscout-server = libsForQt5.callPackage ../applications/misc/osmscout-server {
12370 protobuf = protobuf_21.override {
12371 abseil-cpp = abseil-cpp_202103.override {
12372 cxxStandard = "17";
12373 };
12374 };
12375 };
12376
12377 palemoon-bin = callPackage ../applications/networking/browsers/palemoon/bin.nix { };
12378 palemoon-gtk2-bin = palemoon-bin.override { withGTK3 = false; };
12379
12380 pantalaimon = callPackage ../applications/networking/instant-messengers/pantalaimon { };
12381
12382 pantalaimon-headless = callPackage ../applications/networking/instant-messengers/pantalaimon {
12383 enableDbusUi = false;
12384 };
12385
12386 parsec-bin = callPackage ../applications/misc/parsec/bin.nix { };
12387
12388 pekwm = callPackage ../by-name/pe/pekwm/package.nix {
12389 awk = gawk;
12390 grep = gnugrep;
12391 sed = gnused;
12392 };
12393
12394 petrifoo = callPackage ../applications/audio/petrifoo {
12395 inherit (gnome2) libgnomecanvas;
12396 };
12397
12398 pdfpc = callPackage ../applications/misc/pdfpc {
12399 inherit (gst_all_1)
12400 gstreamer
12401 gst-plugins-base
12402 gst-plugins-good
12403 gst-libav
12404 ;
12405 };
12406
12407 peaclock = callPackage ../applications/misc/peaclock {
12408 stdenv = gccStdenv;
12409 };
12410
12411 pianoteq = callPackage ../applications/audio/pianoteq { };
12412
12413 pidginPackages = recurseIntoAttrs (
12414 callPackage ../applications/networking/instant-messengers/pidgin/pidgin-plugins { }
12415 );
12416
12417 inherit (pidginPackages) pidgin;
12418
12419 pithos = callPackage ../applications/audio/pithos {
12420 pythonPackages = python3Packages;
12421 };
12422
12423 pineapple-pictures = qt6Packages.callPackage ../applications/graphics/pineapple-pictures { };
12424
12425 plexamp = callPackage ../applications/audio/plexamp { };
12426
12427 plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { };
12428
12429 plover = recurseIntoAttrs (libsForQt5.callPackage ../applications/misc/plover { });
12430
12431 pokefinder = qt6Packages.callPackage ../tools/games/pokefinder { };
12432
12433 pothos = libsForQt5.callPackage ../applications/radio/pothos { };
12434
12435 qiv = callPackage ../applications/graphics/qiv {
12436 imlib2 = imlib2Full;
12437 };
12438
12439 # perhaps there are better apps for this task? It's how I had configured my previous system.
12440 # And I don't want to rewrite all rules
12441 profanity = callPackage ../applications/networking/instant-messengers/profanity (
12442 {
12443 }
12444 // (config.profanity or { })
12445 );
12446
12447 protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
12448 protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
12449
12450 protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
12451
12452 psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
12453
12454 psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { };
12455
12456 pulseview = libsForQt5.callPackage ../applications/science/electronics/pulseview { };
12457
12458 puredata = callPackage ../applications/audio/puredata { };
12459 puredata-with-plugins =
12460 plugins: callPackage ../applications/audio/puredata/wrapper.nix { inherit plugins; };
12461
12462 pure-maps = libsForQt5.callPackage ../applications/misc/pure-maps { };
12463
12464 qbittorrent-nox = qbittorrent.override { guiSupport = false; };
12465
12466 qbittorrent-enhanced-nox = qbittorrent-enhanced.override { guiSupport = false; };
12467
12468 qcad = libsForQt5.callPackage ../applications/misc/qcad { };
12469
12470 qctools = libsForQt5.callPackage ../applications/video/qctools { };
12471
12472 qelectrotech = libsForQt5.callPackage ../applications/misc/qelectrotech { };
12473
12474 eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { };
12475
12476 qemu = callPackage ../applications/virtualization/qemu {
12477 inherit (darwin) sigtool;
12478 };
12479
12480 qemu-python-utils = python3Packages.toPythonApplication (
12481 python3Packages.qemu.override {
12482 fuseSupport = true;
12483 tuiSupport = true;
12484 }
12485 );
12486
12487 qemu-utils = qemu.override {
12488 toolsOnly = true;
12489 };
12490
12491 # variant of qemu building user space emulator only - intended to be used from pkgsStatic
12492 qemu-user = qemu.override {
12493 userOnly = true;
12494 };
12495
12496 canokey-qemu = callPackage ../applications/virtualization/qemu/canokey-qemu.nix { };
12497
12498 wrapQemuBinfmtP = callPackage ../applications/virtualization/qemu/binfmt-p-wrapper.nix { };
12499
12500 qjackctl = libsForQt5.callPackage ../applications/audio/qjackctl { };
12501
12502 qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { };
12503
12504 qmplay2-qt5 = qmplay2.override { qtVersion = "5"; };
12505 qmplay2-qt6 = qmplay2.override { qtVersion = "6"; };
12506
12507 qmidinet = libsForQt5.callPackage ../applications/audio/qmidinet { };
12508
12509 qnotero = libsForQt5.callPackage ../applications/office/qnotero { };
12510
12511 qpwgraph = qt6Packages.callPackage ../applications/audio/qpwgraph { };
12512
12513 qsampler = libsForQt5.callPackage ../applications/audio/qsampler { };
12514
12515 qsstv = qt5.callPackage ../applications/radio/qsstv { };
12516
12517 qsyncthingtray = libsForQt5.callPackage ../applications/misc/qsyncthingtray { };
12518
12519 qsudo = libsForQt5.callPackage ../applications/misc/qsudo { };
12520
12521 qsynth = libsForQt5.callPackage ../applications/audio/qsynth { };
12522
12523 qtbitcointrader = libsForQt5.callPackage ../applications/misc/qtbitcointrader { };
12524
12525 qtemu = libsForQt5.callPackage ../applications/virtualization/qtemu { };
12526
12527 qtpass = libsForQt5.callPackage ../applications/misc/qtpass { };
12528
12529 quassel = libsForQt5.callPackage ../applications/networking/irc/quassel { };
12530
12531 quasselClient = quassel.override {
12532 monolithic = false;
12533 client = true;
12534 tag = "-client-kf5";
12535 };
12536
12537 quasselDaemon = quassel.override {
12538 monolithic = false;
12539 enableDaemon = true;
12540 withKDE = false;
12541 tag = "-daemon-qt5";
12542 };
12543
12544 quiterss = libsForQt5.callPackage ../applications/networking/newsreaders/quiterss { };
12545
12546 quodlibet = callPackage ../applications/audio/quodlibet {
12547 kakasi = null;
12548 keybinder3 = null;
12549 libappindicator-gtk3 = null;
12550 libmodplug = null;
12551 };
12552
12553 quodlibet-without-gst-plugins = quodlibet.override {
12554 tag = "-without-gst-plugins";
12555 withGstPlugins = false;
12556 };
12557
12558 quodlibet-xine = quodlibet.override {
12559 tag = "-xine";
12560 withGstreamerBackend = false;
12561 withXineBackend = true;
12562 };
12563
12564 quodlibet-full = quodlibet.override {
12565 inherit gtksourceview;
12566 kakasi = kakasi;
12567 keybinder3 = keybinder3;
12568 libappindicator-gtk3 = libappindicator-gtk3;
12569 libmodplug = libmodplug;
12570 tag = "-full";
12571 withDbusPython = true;
12572 withMusicBrainzNgs = true;
12573 withPahoMqtt = true;
12574 withPypresence = true;
12575 withSoco = true;
12576 };
12577
12578 quodlibet-xine-full = quodlibet-full.override {
12579 tag = "-xine-full";
12580 withGstreamerBackend = false;
12581 withXineBackend = true;
12582 };
12583
12584 qutebrowser-qt5 = qutebrowser.override {
12585 qt6Packages = libsForQt5;
12586 };
12587
12588 rakarrack = callPackage ../applications/audio/rakarrack {
12589 fltk = fltk13;
12590 };
12591
12592 radiotray-ng = callPackage ../applications/audio/radiotray-ng {
12593 wxGTK = wxGTK32;
12594 };
12595
12596 rawtherapee = callPackage ../applications/graphics/rawtherapee {
12597 fftw = fftwSinglePrec;
12598 };
12599
12600 rclone = callPackage ../applications/networking/sync/rclone { };
12601
12602 rclone-browser = libsForQt5.callPackage ../applications/networking/sync/rclone/browser.nix { };
12603
12604 reaper = callPackage ../applications/audio/reaper {
12605 jackLibrary = libjack2; # Another option is "pipewire.jack".
12606 ffmpeg = ffmpeg_4-headless;
12607 };
12608
12609 rednotebook = python3Packages.callPackage ../applications/editors/rednotebook { };
12610
12611 retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { };
12612
12613 rgp = libsForQt5.callPackage ../development/tools/rgp { };
12614
12615 ripcord =
12616 if stdenv.hostPlatform.isLinux then
12617 qt5.callPackage ../applications/networking/instant-messengers/ripcord { }
12618 else
12619 callPackage ../applications/networking/instant-messengers/ripcord/darwin.nix { };
12620
12621 inherit (callPackage ../applications/networking/cluster/rke2 { })
12622 rke2_1_30
12623 rke2_1_31
12624 rke2_1_32
12625 rke2_stable
12626 rke2_latest
12627 ;
12628 rke2 = rke2_stable;
12629
12630 rofi-pass = callPackage ../tools/security/pass/rofi-pass.nix { };
12631 rofi-pass-wayland = callPackage ../tools/security/pass/rofi-pass.nix {
12632 backend = "wayland";
12633 };
12634
12635 rstudio-server = rstudio.override { server = true; };
12636
12637 rsync = callPackage ../applications/networking/sync/rsync (config.rsync or { });
12638 rrsync = callPackage ../applications/networking/sync/rsync/rrsync.nix { };
12639
12640 inherit (callPackages ../applications/radio/rtl-sdr { })
12641 rtl-sdr-librtlsdr
12642 rtl-sdr-osmocom
12643 rtl-sdr-blog
12644 ;
12645
12646 rtl-sdr = rtl-sdr-blog;
12647
12648 rusty-psn-gui = rusty-psn.override { withGui = true; };
12649
12650 sayonara = libsForQt5.callPackage ../applications/audio/sayonara { };
12651
12652 scantailor-advanced = callPackage ../applications/graphics/scantailor/advanced.nix { };
12653
12654 scantailor-universal = callPackage ../applications/graphics/scantailor/universal.nix { };
12655
12656 seq66 = qt5.callPackage ../applications/audio/seq66 { };
12657
12658 sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { };
12659
12660 spotify-qt = qt6Packages.callPackage ../applications/audio/spotify-qt { };
12661
12662 sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { };
12663
12664 stag = callPackage ../applications/misc/stag {
12665 curses = ncurses;
12666 };
12667
12668 sweethome3d = recurseIntoAttrs (
12669 (callPackage ../applications/misc/sweethome3d { })
12670 // (callPackage ../applications/misc/sweethome3d/editors.nix {
12671 sweethome3dApp = sweethome3d.application;
12672 })
12673 );
12674
12675 sxiv = callPackage ../applications/graphics/sxiv {
12676 imlib2 = imlib2Full;
12677 };
12678
12679 nsxiv = callPackage ../by-name/ns/nsxiv/package.nix {
12680 imlib2 = imlib2Full;
12681 };
12682
12683 dropbox = callPackage ../applications/networking/dropbox { };
12684
12685 dropbox-cli = callPackage ../applications/networking/dropbox/cli.nix { };
12686
12687 maestral = with python3Packages; toPythonApplication maestral;
12688
12689 maestral-gui = qt6Packages.callPackage ../applications/networking/maestral-qt { };
12690
12691 myfitnesspal = with python3Packages; toPythonApplication myfitnesspal;
12692
12693 libstrangle = callPackage ../tools/X11/libstrangle {
12694 stdenv = stdenv_32bit;
12695 };
12696
12697 lightdm = libsForQt5.callPackage ../applications/display-managers/lightdm { };
12698
12699 lightdm_qt = lightdm.override { withQt5 = true; };
12700
12701 lightdm-gtk-greeter = callPackage ../applications/display-managers/lightdm/gtk-greeter.nix {
12702 inherit (xfce) xfce4-dev-tools;
12703 };
12704
12705 curaengine_stable = callPackage ../applications/misc/curaengine/stable.nix { };
12706
12707 curaengine = callPackage ../applications/misc/curaengine {
12708 inherit (python3.pkgs) libarcus;
12709 protobuf = protobuf_21;
12710 };
12711
12712 cura = libsForQt5.callPackage ../applications/misc/cura { };
12713
12714 curaPlugins = callPackage ../applications/misc/cura/plugins.nix { };
12715
12716 prusa-slicer = callPackage ../applications/misc/prusa-slicer {
12717 # Build with clang even on Linux, because GCC uses absolutely obscene amounts of memory
12718 # on this particular code base (OOM with 32GB memory and --cores 16 on GCC, succeeds
12719 # with --cores 32 on clang).
12720 stdenv = clangStdenv;
12721 };
12722
12723 super-slicer = callPackage ../applications/misc/prusa-slicer/super-slicer.nix { };
12724
12725 super-slicer-beta = super-slicer.beta;
12726
12727 super-slicer-latest = super-slicer.latest;
12728
12729 skrooge = kdePackages.callPackage ../applications/office/skrooge { };
12730
12731 soci = callPackage ../development/libraries/soci { };
12732
12733 socialscan = with python3.pkgs; toPythonApplication socialscan;
12734
12735 sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { };
12736
12737 sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { };
12738
12739 squeezelite-pulse = callPackage ../by-name/sq/squeezelite/package.nix {
12740 audioBackend = "pulse";
12741 };
12742
12743 inherit (ocaml-ng.ocamlPackages) stog;
12744
12745 # Stumpwm is broken on SBCL 2.4.11, see
12746 # https://github.com/NixOS/nixpkgs/pull/360320
12747 stumpwm = callPackage ../applications/window-managers/stumpwm {
12748 stdenv = stdenvNoCC;
12749 sbcl = sbcl_2_4_10.withPackages (
12750 ps: with ps; [
12751 alexandria
12752 cl-ppcre
12753 clx
12754 fiasco
12755 ]
12756 );
12757 };
12758
12759 stumpwm-unwrapped = sbcl_2_4_10.pkgs.stumpwm;
12760
12761 sublime3Packages = recurseIntoAttrs (
12762 callPackage ../applications/editors/sublime/3/packages.nix { }
12763 );
12764
12765 sublime3 = sublime3Packages.sublime3;
12766
12767 sublime3-dev = sublime3Packages.sublime3-dev;
12768
12769 inherit (recurseIntoAttrs (callPackage ../applications/editors/sublime/4/packages.nix { }))
12770 sublime4
12771 sublime4-dev
12772 ;
12773
12774 inherit (callPackage ../applications/version-management/sublime-merge { })
12775 sublime-merge
12776 sublime-merge-dev
12777 ;
12778
12779 inherit
12780 (callPackages ../applications/version-management/subversion {
12781 sasl = cyrus_sasl;
12782 })
12783 subversion
12784 ;
12785
12786 subversionClient = subversion.override {
12787 bdbSupport = false;
12788 perlBindings = true;
12789 pythonBindings = true;
12790 };
12791
12792 supersonic-wayland = supersonic.override {
12793 waylandSupport = true;
12794 };
12795
12796 syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { };
12797
12798 syncplay-nogui = syncplay.override { enableGUI = false; };
12799
12800 inherit
12801 (callPackages ../applications/networking/syncthing {
12802 inherit (darwin) autoSignDarwinBinariesHook;
12803 })
12804 syncthing
12805 syncthing-discovery
12806 syncthing-relay
12807 ;
12808
12809 syncthingtray = kdePackages.callPackage ../applications/misc/syncthingtray {
12810 # renamed in KF5 -> KF6
12811 plasma-framework = kdePackages.libplasma;
12812 };
12813 syncthingtray-minimal = syncthingtray.override {
12814 webviewSupport = false;
12815 jsSupport = false;
12816 kioPluginSupport = false;
12817 plasmoidSupport = false;
12818 systemdSupport = true;
12819 };
12820
12821 synergy = libsForQt5.callPackage ../applications/misc/synergy { };
12822
12823 synergyWithoutGUI = synergy.override { withGUI = false; };
12824
12825 tabbed = callPackage ../applications/window-managers/tabbed {
12826 # if you prefer a custom config, write the config.h in tabbed.config.h
12827 # and enable
12828 # customConfig = builtins.readFile ./tabbed.config.h;
12829 };
12830
12831 taffybar = callPackage ../applications/window-managers/taffybar {
12832 inherit (haskellPackages) ghcWithPackages taffybar;
12833 };
12834
12835 tagainijisho = libsForQt5.callPackage ../applications/office/tagainijisho { };
12836
12837 telegram-desktop =
12838 kdePackages.callPackage ../applications/networking/instant-messengers/telegram/telegram-desktop
12839 {
12840 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_19.stdenv else stdenv;
12841 };
12842
12843 termdown = python3Packages.callPackage ../applications/misc/termdown { };
12844
12845 terminaltexteffects = with python3Packages; toPythonApplication terminaltexteffects;
12846
12847 inherit
12848 (callPackage ../applications/graphics/tesseract {
12849 })
12850 tesseract3
12851 tesseract4
12852 tesseract5
12853 ;
12854 tesseract = tesseract5;
12855
12856 thunderbirdPackages = recurseIntoAttrs (
12857 callPackage ../applications/networking/mailreaders/thunderbird/packages.nix {
12858 callPackage = newScope {
12859 inherit (rustPackages) cargo rustc;
12860 };
12861 }
12862 );
12863
12864 thunderbird-unwrapped = thunderbirdPackages.thunderbird;
12865 thunderbird = wrapThunderbird thunderbird-unwrapped { };
12866
12867 thunderbird-latest-unwrapped = thunderbirdPackages.thunderbird-latest;
12868 thunderbird-latest = wrapThunderbird thunderbird-latest-unwrapped { };
12869
12870 thunderbird-esr-unwrapped = thunderbirdPackages.thunderbird-esr;
12871 thunderbird-esr = wrapThunderbird thunderbird-esr-unwrapped { };
12872
12873 thunderbird-140-unwrapped = thunderbirdPackages.thunderbird-140;
12874 thunderbird-140 = wrapThunderbird thunderbirdPackages.thunderbird-140 { };
12875
12876 thunderbird-bin = thunderbird-latest-bin;
12877 thunderbird-latest-bin = wrapThunderbird thunderbird-latest-bin-unwrapped {
12878 pname = "thunderbird-bin";
12879 };
12880 thunderbird-latest-bin-unwrapped =
12881 callPackage ../applications/networking/mailreaders/thunderbird-bin
12882 {
12883 generated = import ../applications/networking/mailreaders/thunderbird-bin/release_sources.nix;
12884 };
12885 thunderbird-esr-bin = wrapThunderbird thunderbird-esr-bin-unwrapped {
12886 pname = "thunderbird-esr-bin";
12887 };
12888 thunderbird-esr-bin-unwrapped = callPackage ../applications/networking/mailreaders/thunderbird-bin {
12889 generated = import ../applications/networking/mailreaders/thunderbird-bin/release_esr_sources.nix;
12890 versionSuffix = "esr";
12891 };
12892
12893 timbreid = callPackage ../applications/audio/pd-plugins/timbreid {
12894 fftw = fftwSinglePrec;
12895 };
12896
12897 inherit
12898 ({
12899 timeshift-unwrapped = callPackage ../applications/backup/timeshift/unwrapped.nix { };
12900 timeshift = callPackage ../applications/backup/timeshift { grubPackage = grub2; };
12901 timeshift-minimal = callPackage ../applications/backup/timeshift/minimal.nix { };
12902 })
12903 timeshift-unwrapped
12904 timeshift
12905 timeshift-minimal
12906 ;
12907
12908 tipp10 = qt6.callPackage ../applications/misc/tipp10 { };
12909
12910 tlp = callPackage ../tools/misc/tlp {
12911 inherit (linuxPackages) x86_energy_perf_policy;
12912 };
12913
12914 tony = libsForQt5.callPackage ../applications/audio/tony { };
12915
12916 trustedqsl = tqsl; # Alias added 2019-02-10
12917
12918 libtransmission_3 = transmission_3.override {
12919 installLib = true;
12920 enableDaemon = false;
12921 enableCli = false;
12922 };
12923 transmission_3-gtk = transmission_3.override { enableGTK3 = true; };
12924 transmission_3-qt = transmission_3.override { enableQt = true; };
12925 transmission_3_noSystemd = transmission_3.override { enableSystemd = false; };
12926
12927 transmission_4 = callPackage ../applications/networking/p2p/transmission/4.nix {
12928 fmt = fmt_9;
12929 libutp = libutp_3_4;
12930 };
12931 libtransmission_4 = transmission_4.override {
12932 installLib = true;
12933 enableDaemon = false;
12934 enableCli = false;
12935 };
12936 transmission_4-gtk = transmission_4.override { enableGTK3 = true; };
12937 transmission_4-qt5 = transmission_4.override { enableQt5 = true; };
12938 transmission_4-qt6 = transmission_4.override { enableQt6 = true; };
12939 transmission_4-qt = transmission_4-qt5;
12940
12941 traverso = libsForQt5.callPackage ../applications/audio/traverso { };
12942
12943 tinywl = callPackage ../applications/window-managers/tinywl {
12944 wlroots = wlroots_0_19;
12945 };
12946
12947 tuxclocker = libsForQt5.callPackage ../applications/misc/tuxclocker {
12948 tuxclocker-plugins = tuxclocker-plugins-with-unfree;
12949 };
12950
12951 tuxclocker-without-unfree = libsForQt5.callPackage ../applications/misc/tuxclocker { };
12952
12953 twmn = libsForQt5.callPackage ../applications/misc/twmn { };
12954
12955 tests-stdenv-gcc-stageCompare = callPackage ../test/stdenv/gcc-stageCompare.nix { };
12956
12957 twinkle = qt5.callPackage ../applications/networking/instant-messengers/twinkle { };
12958
12959 buildTypstPackage = callPackage ../build-support/build-typst-package.nix { };
12960
12961 typstPackages = typst.packages;
12962
12963 ueberzug = with python3Packages; toPythonApplication ueberzug;
12964
12965 uefitoolPackages = recurseIntoAttrs (callPackage ../tools/system/uefitool/variants.nix { });
12966 uefitool = uefitoolPackages.new-engine;
12967
12968 ungoogled-chromium = callPackage ../applications/networking/browsers/chromium (
12969 (config.chromium or { })
12970 // {
12971 ungoogled = true;
12972 }
12973 );
12974
12975 unigine-tropics = pkgsi686Linux.callPackage ../applications/graphics/unigine-tropics { };
12976
12977 unigine-sanctuary = pkgsi686Linux.callPackage ../applications/graphics/unigine-sanctuary { };
12978
12979 unigine-superposition = libsForQt5.callPackage ../applications/graphics/unigine-superposition { };
12980
12981 uuagc = haskell.lib.compose.justStaticExecutables haskellPackages.uuagc;
12982
12983 valentina = libsForQt5.callPackage ../applications/misc/valentina { };
12984
12985 vdirsyncer = with python3Packages; toPythonApplication vdirsyncer;
12986
12987 vim = vimUtils.makeCustomizable (
12988 callPackage ../applications/editors/vim {
12989 }
12990 );
12991
12992 macvim =
12993 let
12994 macvimUtils = callPackage ../applications/editors/vim/macvim-configurable.nix { };
12995 in
12996 macvimUtils.makeCustomizable (
12997 callPackage ../applications/editors/vim/macvim.nix {
12998 stdenv = clangStdenv;
12999 }
13000 );
13001
13002 vim-full = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/full.nix { });
13003
13004 vim-darwin =
13005 (vim-full.override {
13006 config = {
13007 vim = {
13008 gui = "none";
13009 darwin = true;
13010 };
13011 };
13012 }).overrideAttrs
13013 {
13014 pname = "vim-darwin";
13015 meta = {
13016 platforms = lib.platforms.darwin;
13017 };
13018 };
13019
13020 vimacs = callPackage ../applications/editors/vim/vimacs.nix { };
13021
13022 qpdfview = libsForQt5.callPackage ../applications/office/qpdfview { };
13023
13024 # this is a lower-level alternative to wrapNeovim conceived to handle
13025 # more usecases when wrapping neovim. The interface is being actively worked on
13026 # so expect breakage. use wrapNeovim instead if you want a stable alternative
13027 wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
13028 wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
13029 neovim-unwrapped = callPackage ../by-name/ne/neovim-unwrapped/package.nix {
13030 lua = if lib.meta.availableOn stdenv.hostPlatform luajit then luajit else lua5_1;
13031 };
13032
13033 neovimUtils = callPackage ../applications/editors/neovim/utils.nix {
13034 lua = lua5_1;
13035 };
13036 neovim = wrapNeovim neovim-unwrapped { };
13037
13038 gnvim-unwrapped = callPackage ../applications/editors/neovim/gnvim { };
13039
13040 gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { };
13041
13042 virt-top = callPackage ../applications/virtualization/virt-top {
13043 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
13044 };
13045
13046 virt-manager = callPackage ../applications/virtualization/virt-manager { };
13047
13048 virtualbox = libsForQt5.callPackage ../applications/virtualization/virtualbox {
13049 stdenv = stdenv_32bit;
13050
13051 # VirtualBox uses wsimport, which was removed after JDK 8.
13052 jdk = jdk8;
13053
13054 # Opt out of building the guest BIOS sources with the problematic Open Watcom
13055 # toolchain. People who need to build the BIOS from sources (for example to
13056 # apply patches) can override this.
13057 open-watcom-bin = null;
13058 };
13059
13060 virtualboxKvm = lowPrio (
13061 virtualbox.override {
13062 enableKvm = true;
13063 }
13064 );
13065
13066 virtualboxHardened = lowPrio (
13067 virtualbox.override {
13068 enableHardening = true;
13069 }
13070 );
13071
13072 virtualboxHeadless = lowPrio (
13073 virtualbox.override {
13074 enableHardening = true;
13075 headless = true;
13076 }
13077 );
13078
13079 virtualboxExtpack = callPackage ../applications/virtualization/virtualbox/extpack.nix { };
13080
13081 virtualboxWithExtpack = lowPrio (
13082 virtualbox.override {
13083 extensionPack = virtualboxExtpack;
13084 }
13085 );
13086
13087 virtualglLib = callPackage ../tools/X11/virtualgl/lib.nix {
13088 fltk = fltk13;
13089 };
13090
13091 virtualgl = callPackage ../tools/X11/virtualgl {
13092 virtualglLib_i686 =
13093 if stdenv.hostPlatform.system == "x86_64-linux" then pkgsi686Linux.virtualglLib else null;
13094 };
13095
13096 vlc-bin-universal = vlc-bin.override { variant = "universal"; };
13097
13098 libvlc = vlc.override {
13099 withQt5 = false;
13100 onlyLibVLC = true;
13101 };
13102
13103 vscode = callPackage ../applications/editors/vscode/vscode.nix { };
13104 vscode-fhs = vscode.fhs;
13105 vscode-fhsWithPackages = vscode.fhsWithPackages;
13106
13107 vscode-with-extensions = callPackage ../applications/editors/vscode/with-extensions.nix { };
13108
13109 vscode-utils = callPackage ../applications/editors/vscode/extensions/vscode-utils.nix { };
13110
13111 vscode-extensions = recurseIntoAttrs (callPackage ../applications/editors/vscode/extensions { });
13112
13113 vscode-extension-update-script =
13114 callPackage ../by-name/vs/vscode-extension-update/vscode-extension-update-script.nix
13115 { };
13116
13117 vscodium = callPackage ../applications/editors/vscode/vscodium.nix { };
13118 vscodium-fhs = vscodium.fhs;
13119 vscodium-fhsWithPackages = vscodium.fhsWithPackages;
13120
13121 code-cursor = callPackage ../by-name/co/code-cursor/package.nix {
13122 vscode-generic = ../applications/editors/vscode/generic.nix;
13123 };
13124 code-cursor-fhs = code-cursor.fhs;
13125 code-cursor-fhsWithPackages = code-cursor.fhsWithPackages;
13126
13127 windsurf = callPackage ../by-name/wi/windsurf/package.nix {
13128 vscode-generic = ../applications/editors/vscode/generic.nix;
13129 };
13130
13131 code-server = callPackage ../servers/code-server {
13132 nodejs = nodejs_20;
13133 };
13134
13135 kiro = callPackage ../by-name/ki/kiro/package.nix {
13136 vscode-generic = ../applications/editors/vscode/generic.nix;
13137 };
13138 kiro-fhs = kiro.fhs;
13139 kiro-fhsWithPackages = kiro.fhsWithPackages;
13140
13141 whispers = with python3Packages; toPythonApplication whispers;
13142
13143 # Should always be the version with the most features
13144 w3m-full = w3m;
13145
13146 # Version without X11
13147 w3m-nox = w3m.override {
13148 x11Support = false;
13149 imlib2 = imlib2-nox;
13150 };
13151
13152 # Version without X11 or graphics
13153 w3m-nographics = w3m.override {
13154 x11Support = false;
13155 graphicsSupport = false;
13156 };
13157
13158 # Version for batch text processing, not a good browser
13159 w3m-batch = w3m.override {
13160 graphicsSupport = false;
13161 mouseSupport = false;
13162 x11Support = false;
13163 imlib2 = imlib2-nox;
13164 };
13165
13166 wayfire = callPackage ../applications/window-managers/wayfire/default.nix {
13167 wlroots = wlroots_0_17;
13168 };
13169 wf-config = callPackage ../applications/window-managers/wayfire/wf-config.nix { };
13170
13171 wayfirePlugins = recurseIntoAttrs (
13172 callPackage ../applications/window-managers/wayfire/plugins.nix { }
13173 );
13174 wayfire-with-plugins = callPackage ../applications/window-managers/wayfire/wrapper.nix {
13175 plugins = with wayfirePlugins; [
13176 wcm
13177 wf-shell
13178 ];
13179 };
13180
13181 webcamoid = qt6Packages.callPackage ../applications/video/webcamoid { };
13182
13183 webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {
13184 stdenv = if stdenv.cc.isClang then gccStdenv else stdenv;
13185 };
13186
13187 webssh = with python3Packages; toPythonApplication webssh;
13188
13189 wrapWeechat = callPackage ../applications/networking/irc/weechat/wrapper.nix { };
13190
13191 weechat-unwrapped = callPackage ../applications/networking/irc/weechat {
13192 inherit (darwin) libresolv;
13193 guile = guile_3_0;
13194 };
13195
13196 weechat = wrapWeechat weechat-unwrapped { };
13197
13198 weechatScripts = recurseIntoAttrs (callPackage ../applications/networking/irc/weechat/scripts { });
13199
13200 westonLite = weston.override {
13201 demoSupport = false;
13202 jpegSupport = false;
13203 lcmsSupport = false;
13204 pangoSupport = false;
13205 pipewireSupport = false;
13206 rdpSupport = false;
13207 remotingSupport = false;
13208 vaapiSupport = false;
13209 vncSupport = false;
13210 webpSupport = false;
13211 xwaylandSupport = false;
13212 };
13213
13214 whalebird = callPackage ../applications/misc/whalebird { };
13215
13216 inherit (windowmaker) dockapps;
13217
13218 wofi-pass = callPackage ../../pkgs/tools/security/pass/wofi-pass.nix { };
13219
13220 worldengine-cli = python3Packages.worldengine;
13221
13222 wrapFirefox = callPackage ../applications/networking/browsers/firefox/wrapper.nix { };
13223
13224 wrapThunderbird = callPackage ../applications/networking/mailreaders/thunderbird/wrapper.nix { };
13225
13226 wsjtx = qt5.callPackage ../applications/radio/wsjtx { };
13227
13228 x2goclient = callPackage ../applications/networking/remote/x2goclient { };
13229
13230 x2gokdriveclient = libsForQt5.callPackage ../applications/networking/remote/x2gokdriveclient { };
13231
13232 x32edit = callPackage ../applications/audio/midas/x32edit.nix { };
13233
13234 xbindkeys-config = callPackage ../tools/X11/xbindkeys-config {
13235 gtk = gtk2;
13236 };
13237
13238 kodiPackages = recurseIntoAttrs (kodi.packages);
13239
13240 kodi = callPackage ../applications/video/kodi {
13241 ffmpeg = ffmpeg_6;
13242 jre_headless = buildPackages.jdk11_headless;
13243 };
13244
13245 kodi-wayland = callPackage ../applications/video/kodi {
13246 ffmpeg = ffmpeg_6;
13247 jre_headless = buildPackages.jdk11_headless;
13248 waylandSupport = true;
13249 };
13250
13251 kodi-gbm = callPackage ../applications/video/kodi {
13252 ffmpeg = ffmpeg_6;
13253 jre_headless = buildPackages.jdk11_headless;
13254 gbmSupport = true;
13255 };
13256
13257 xca = qt6Packages.callPackage ../applications/misc/xca { };
13258
13259 inherit (xorg) xcompmgr;
13260
13261 xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { };
13262
13263 xdg-desktop-portal-hyprland =
13264 callPackage ../applications/window-managers/hyprwm/xdg-desktop-portal-hyprland
13265 {
13266 stdenv = gcc15Stdenv;
13267 inherit (qt6)
13268 qtbase
13269 qttools
13270 qtwayland
13271 wrapQtAppsHook
13272 ;
13273 };
13274
13275 xournalpp = callPackage ../applications/graphics/xournalpp {
13276 lua = lua5_3;
13277 };
13278
13279 xpdf = libsForQt5.callPackage ../applications/misc/xpdf { };
13280
13281 xmobar = haskellPackages.xmobar.bin;
13282
13283 xmonad-with-packages = callPackage ../applications/window-managers/xmonad/wrapper.nix {
13284 inherit (haskellPackages) ghcWithPackages;
13285 packages = _: [ haskellPackages.xmonad-contrib ];
13286 };
13287
13288 xmonadctl = callPackage ../applications/window-managers/xmonad/xmonadctl.nix {
13289 inherit (haskellPackages) ghcWithPackages;
13290 };
13291
13292 xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
13293 inherit (xfce) libxfce4util xfce4-panel;
13294 };
13295
13296 xmonad_log_applet_mate = xmonad_log_applet.override {
13297 desktopSupport = "mate";
13298 };
13299
13300 xmonad_log_applet_xfce = xmonad_log_applet.override {
13301 desktopSupport = "xfce4";
13302 };
13303
13304 libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { };
13305
13306 xygrib = libsForQt5.callPackage ../applications/misc/xygrib { };
13307
13308 ydiff = with python3.pkgs; toPythonApplication ydiff;
13309
13310 yokadi = python3Packages.callPackage ../applications/misc/yokadi { };
13311
13312 your-editor = callPackage ../applications/editors/your-editor { stdenv = gccStdenv; };
13313
13314 youtube-dl = with python3Packages; toPythonApplication youtube-dl;
13315
13316 youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light;
13317
13318 youtube-music = callPackage ../applications/audio/youtube-music {
13319 pnpm = pnpm_10;
13320 };
13321
13322 yt-dlp-light = yt-dlp.override {
13323 atomicparsleySupport = false;
13324 ffmpegSupport = false;
13325 rtmpSupport = false;
13326 };
13327
13328 youtube-viewer = perlPackages.WWWYoutubeViewer;
13329
13330 zathuraPkgs = callPackage ../applications/misc/zathura { };
13331 zathura = zathuraPkgs.zathuraWrapper;
13332
13333 zeroc-ice-cpp11 = zeroc-ice.override { cpp11 = true; };
13334
13335 zexy = callPackage ../applications/audio/pd-plugins/zexy { };
13336
13337 zed-editor-fhs = zed-editor.fhs;
13338
13339 zgv = callPackage ../applications/graphics/zgv {
13340 # Enable the below line for terminal display. Note
13341 # that it requires sixel graphics compatible terminals like mlterm
13342 # or xterm -ti 340
13343 SDL = SDL_sixel;
13344 SDL_image = SDL_image.override { SDL = SDL_sixel; };
13345 };
13346
13347 zotero_7 = pkgs.zotero;
13348
13349 zynaddsubfx = callPackage ../applications/audio/zynaddsubfx {
13350 guiModule = "zest";
13351 fftw = fftwSinglePrec;
13352 };
13353
13354 zynaddsubfx-fltk = zynaddsubfx.override {
13355 guiModule = "fltk";
13356 };
13357
13358 zynaddsubfx-ntk = zynaddsubfx.override {
13359 guiModule = "ntk";
13360 };
13361
13362 ### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS
13363
13364 alfis-nogui = alfis.override {
13365 withGui = false;
13366 };
13367
13368 bitcoin = libsForQt5.callPackage ../applications/blockchains/bitcoin {
13369 withGui = true;
13370 inherit (darwin) autoSignDarwinBinariesHook;
13371 };
13372
13373 bitcoind = callPackage ../applications/blockchains/bitcoin {
13374 withGui = false;
13375 inherit (darwin) autoSignDarwinBinariesHook;
13376 };
13377
13378 bitcoin-knots = libsForQt5.callPackage ../applications/blockchains/bitcoin-knots {
13379 withGui = true;
13380 inherit (darwin) autoSignDarwinBinariesHook;
13381 };
13382
13383 bitcoind-knots = callPackage ../applications/blockchains/bitcoin-knots {
13384 withGui = false;
13385 inherit (darwin) autoSignDarwinBinariesHook;
13386 };
13387
13388 elements = libsForQt5.callPackage ../applications/blockchains/elements {
13389 withGui = true;
13390 inherit (darwin) autoSignDarwinBinariesHook;
13391 };
13392 elementsd = callPackage ../applications/blockchains/elements {
13393 withGui = false;
13394 inherit (darwin) autoSignDarwinBinariesHook;
13395 };
13396
13397 fulcrum = libsForQt5.callPackage ../applications/blockchains/fulcrum { };
13398
13399 gridcoin-research = libsForQt5.callPackage ../applications/blockchains/gridcoin-research {
13400 boost = boost179;
13401 };
13402
13403 groestlcoin = libsForQt5.callPackage ../applications/blockchains/groestlcoin {
13404 withGui = true;
13405 inherit (darwin) autoSignDarwinBinariesHook;
13406 };
13407
13408 groestlcoind = callPackage ../applications/blockchains/groestlcoin {
13409 inherit (darwin) autoSignDarwinBinariesHook;
13410 };
13411
13412 ledger-agent = with python3Packages; toPythonApplication ledger-agent;
13413
13414 napari = with python312Packages; toPythonApplication napari;
13415
13416 nano-wallet = libsForQt5.callPackage ../applications/blockchains/nano-wallet { };
13417
13418 pycoin = with python3Packages; toPythonApplication pycoin;
13419
13420 inherit (callPackages ../applications/blockchains/teos { })
13421 teos
13422 teos-watchtower-plugin
13423 ;
13424
13425 vertcoin = libsForQt5.callPackage ../applications/blockchains/vertcoin {
13426 withGui = true;
13427 };
13428 vertcoind = callPackage ../applications/blockchains/vertcoin {
13429 withGui = false;
13430 };
13431
13432 zcash = callPackage ../applications/blockchains/zcash {
13433 stdenv = llvmPackages.stdenv;
13434 };
13435
13436 samplv1 = qt6.callPackage ../applications/audio/samplv1 { };
13437
13438 beancount = with python3.pkgs; toPythonApplication beancount;
13439
13440 beancount_2 = with python3.pkgs; toPythonApplication beancount_2;
13441
13442 beancount-black = with python3.pkgs; toPythonApplication beancount-black;
13443
13444 beanhub-cli = with python3.pkgs; toPythonApplication beanhub-cli;
13445
13446 bean-add = callPackage ../applications/office/beancount/bean-add.nix { };
13447
13448 beanquery = with python3.pkgs; toPythonApplication beanquery;
13449
13450 bench =
13451 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
13452 (
13453 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
13454 lib.id
13455 else
13456 haskell.lib.compose.justStaticExecutables
13457 )
13458 haskellPackages.bench;
13459
13460 cri-o = callPackage ../applications/virtualization/cri-o/wrapper.nix { };
13461 cri-o-unwrapped = callPackage ../applications/virtualization/cri-o { };
13462
13463 drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { };
13464
13465 phonemizer = with python3Packages; toPythonApplication phonemizer;
13466
13467 ### GAMES
13468
13469 _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; };
13470
13471 inherit (callPackages ../games/fteqw { })
13472 fteqw
13473 fteqw-dedicated
13474 fteqcc
13475 ;
13476
13477 pmars-x11 = pmars.override { enableXwinGraphics = true; };
13478
13479 vanillatd = callPackage ../by-name/va/vanillatd/package.nix { appName = "vanillatd"; };
13480
13481 vanillara = callPackage ../by-name/va/vanillatd/package.nix { appName = "vanillara"; };
13482
13483 ### GAMES/DOOM-PORTS
13484
13485 doomseeker = qt5.callPackage ../games/doom-ports/doomseeker { };
13486
13487 enyo-launcher = libsForQt5.callPackage ../games/doom-ports/enyo-launcher { };
13488
13489 zandronum = callPackage ../games/doom-ports/zandronum { };
13490
13491 zandronum-server = zandronum.override {
13492 serverOnly = true;
13493 };
13494
13495 zandronum-alpha = callPackage ../games/doom-ports/zandronum/alpha { };
13496
13497 zandronum-alpha-server = zandronum-alpha.override {
13498 serverOnly = true;
13499 };
13500
13501 fmodex = callPackage ../games/doom-ports/zandronum/fmod.nix { };
13502
13503 pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { };
13504
13505 qgo = libsForQt5.callPackage ../games/qgo { };
13506
13507 amoeba = callPackage ../games/amoeba { };
13508 amoeba-data = callPackage ../games/amoeba/data.nix { };
13509
13510 anki = callPackage ../games/anki {
13511 protobuf = protobuf_31;
13512 };
13513 anki-utils = callPackage ../games/anki/addons/anki-utils.nix { };
13514 ankiAddons = recurseIntoAttrs (callPackage ../games/anki/addons { });
13515 anki-bin = callPackage ../games/anki/bin.nix { };
13516 anki-sync-server = callPackage ../games/anki/sync-server.nix { };
13517
13518 armagetronad = callPackage ../games/armagetronad { };
13519
13520 armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; };
13521
13522 art = callPackage ../by-name/ar/art/package.nix {
13523 fftw = fftwSinglePrec;
13524 };
13525
13526 arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { };
13527
13528 asc = callPackage ../games/asc {
13529 lua = lua5_1;
13530 physfs = physfs_2;
13531 };
13532
13533 beancount-ing-diba = callPackage ../applications/office/beancount/beancount-ing-diba.nix {
13534 inherit (python3Packages) beancount beangulp;
13535 };
13536
13537 beancount-share = callPackage ../applications/office/beancount/beancount_share.nix {
13538 inherit (python3Packages) beancount beancount-plugin-utils;
13539 };
13540
13541 cataclysmDDA = callPackage ../games/cataclysm-dda { };
13542
13543 cataclysm-dda = cataclysmDDA.stable.tiles;
13544
13545 cataclysm-dda-git = cataclysmDDA.git.tiles;
13546
13547 chiaki = libsForQt5.callPackage ../games/chiaki { };
13548
13549 chiaki-ng = kdePackages.callPackage ../games/chiaki-ng { };
13550
13551 cockatrice = libsForQt5.callPackage ../games/cockatrice {
13552 protobuf = protobuf_21;
13553 };
13554
13555 construoBase = lowPrio (
13556 callPackage ../games/construo {
13557 libGL = null;
13558 libGLU = null;
13559 libglut = null;
13560 }
13561 );
13562
13563 construo = construoBase.override {
13564 inherit libGL libGLU libglut;
13565 };
13566
13567 crawlTiles = callPackage ../games/crawl {
13568 tileMode = true;
13569 };
13570
13571 crawl = callPackage ../games/crawl { };
13572
13573 curseofwar = callPackage ../games/curseofwar { SDL = null; };
13574 curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; };
13575
13576 cutechess = qt5.callPackage ../games/cutechess { };
13577
13578 cutemaze = qt6Packages.callPackage ../games/cutemaze { };
13579
13580 ddnet-server = ddnet.override { buildClient = false; };
13581
13582 duckmarines = callPackage ../games/duckmarines { love = love_0_10; };
13583
13584 dwarf-fortress-packages = recurseIntoAttrs (callPackage ../games/dwarf-fortress { });
13585
13586 inherit (dwarf-fortress-packages) dwarf-fortress dwarf-fortress-full dwarf-therapist;
13587
13588 dfhack = dwarf-fortress-packages.dwarf-fortress-full;
13589
13590 dxx-rebirth = callPackage ../games/dxx-rebirth { };
13591
13592 inherit (callPackages ../games/dxx-rebirth/assets.nix { })
13593 descent1-assets
13594 descent2-assets
13595 ;
13596
13597 inherit (callPackages ../games/dxx-rebirth/full.nix { })
13598 d1x-rebirth-full
13599 d2x-rebirth-full
13600 ;
13601
13602 fallout-ce = callPackage ../games/fallout-ce/fallout-ce.nix { };
13603 fallout2-ce = callPackage ../games/fallout-ce/fallout2-ce.nix { };
13604
13605 fltrator = callPackage ../games/fltrator {
13606 fltk = fltk-minimal;
13607 };
13608
13609 factorio = callPackage ../by-name/fa/factorio/package.nix { releaseType = "alpha"; };
13610
13611 factorio-experimental = factorio.override {
13612 releaseType = "alpha";
13613 experimental = true;
13614 };
13615
13616 factorio-headless = factorio.override { releaseType = "headless"; };
13617
13618 factorio-headless-experimental = factorio.override {
13619 releaseType = "headless";
13620 experimental = true;
13621 };
13622
13623 factorio-demo = factorio.override { releaseType = "demo"; };
13624
13625 factorio-demo-experimental = factorio.override {
13626 releaseType = "demo";
13627 experimental = true;
13628 };
13629
13630 factorio-space-age = factorio.override { releaseType = "expansion"; };
13631
13632 factorio-space-age-experimental = factorio.override {
13633 releaseType = "expansion";
13634 experimental = true;
13635 };
13636
13637 factorio-utils = callPackage ../by-name/fa/factorio/utils.nix { };
13638
13639 flightgear = libsForQt5.callPackage ../games/flightgear { };
13640
13641 freeciv = callPackage ../games/freeciv {
13642 sdl2Client = false;
13643 gtkClient = true;
13644 qtClient = false;
13645 };
13646
13647 freeciv_sdl2 = freeciv.override {
13648 sdl2Client = true;
13649 gtkClient = false;
13650 qtClient = false;
13651 };
13652
13653 freeciv_qt = freeciv.override {
13654 sdl2Client = false;
13655 gtkClient = false;
13656 qtClient = true;
13657 };
13658
13659 freeciv_gtk = freeciv;
13660
13661 garden-of-coloured-lights = callPackage ../games/garden-of-coloured-lights { allegro = allegro4; };
13662
13663 gl-gsync-demo = callPackage ../games/gl-gsync-demo {
13664 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
13665 };
13666
13667 gscrabble = python3Packages.callPackage ../games/gscrabble { };
13668
13669 qtads = qt5.callPackage ../games/qtads { };
13670
13671 ibmcloud-cli = callPackage ../tools/admin/ibmcloud-cli { stdenv = stdenvNoCC; };
13672
13673 iortcw = callPackage ../games/iortcw { };
13674 # used as base package for iortcw forks
13675 iortcw_sp = callPackage ../games/iortcw/sp.nix { };
13676
13677 katagoWithCuda = katago.override {
13678 backend = "cuda";
13679 };
13680
13681 katagoCPU = katago.override {
13682 backend = "eigen";
13683 };
13684
13685 katagoTensorRT = katago.override {
13686 backend = "tensorrt";
13687 };
13688
13689 koboredux = callPackage ../games/koboredux { };
13690
13691 koboredux-free = callPackage ../games/koboredux {
13692 useProprietaryAssets = false;
13693 };
13694
13695 ldmud-full = callPackage ../by-name/ld/ldmud/package.nix {
13696 ipv6Support = true;
13697 mccpSupport = true;
13698 mysqlSupport = true;
13699 postgresSupport = true;
13700 sqliteSupport = true;
13701 tlsSupport = true;
13702 pythonSupport = true;
13703 };
13704
13705 leela-zero = libsForQt5.callPackage ../games/leela-zero { };
13706
13707 legendary-gl = python3Packages.callPackage ../games/legendary-gl { };
13708
13709 lincity = callPackage ../games/lincity { };
13710
13711 lincity_ng = callPackage ../games/lincity/ng.nix {
13712 # https://github.com/lincity-ng/lincity-ng/issues/25
13713 physfs = physfs_2;
13714 };
13715
13716 liquidwar = callPackage ../games/liquidwar {
13717 guile = guile_2_0;
13718 };
13719
13720 liquidwar5 = callPackage ../games/liquidwar/5.nix { };
13721
13722 mindustry-wayland = callPackage ../by-name/mi/mindustry/package.nix {
13723 enableWayland = true;
13724 };
13725
13726 mindustry-server = callPackage ../by-name/mi/mindustry/package.nix {
13727 enableClient = false;
13728 enableServer = true;
13729 };
13730
13731 minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; };
13732 minecraft-server = minecraftServers.vanilla; # backwards compatibility
13733
13734 luanti-client = luanti.override { buildServer = false; };
13735 luanti-server = luanti.override { buildClient = false; };
13736
13737 mrrescue = callPackage ../games/mrrescue { love = love_0_10; };
13738
13739 mudlet = libsForQt5.callPackage ../games/mudlet {
13740 lua = lua5_1;
13741 };
13742
13743 blightmud = callPackage ../games/blightmud { };
13744
13745 blightmud-tts = callPackage ../games/blightmud { withTTS = true; };
13746
13747 nethack = callPackage ../games/nethack { };
13748
13749 nethack-qt = callPackage ../games/nethack {
13750 qtMode = true;
13751 stdenv = gccStdenv;
13752 };
13753
13754 nethack-x11 = callPackage ../games/nethack { x11Mode = true; };
13755
13756 npush = callPackage ../games/npush { };
13757 run-npush = callPackage ../games/npush/run.nix { };
13758
13759 openloco = pkgsi686Linux.callPackage ../games/openloco { };
13760
13761 openraPackages_2019 = import ../games/openra_2019 {
13762 inherit lib;
13763 pkgs = pkgs.__splicedPackages;
13764 };
13765
13766 openra_2019 = openraPackages_2019.engines.release;
13767
13768 openraPackages = recurseIntoAttrs (callPackage ../games/openra { });
13769
13770 openra = openraPackages.engines.release;
13771
13772 openttd = callPackage ../games/openttd {
13773 zlib = zlib.override {
13774 static = true;
13775 };
13776 };
13777 openttd-jgrpp = callPackage ../games/openttd/jgrpp.nix {
13778 zlib = zlib.override {
13779 static = true;
13780 };
13781 };
13782 openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix { };
13783 openttd-nml = callPackage ../games/openttd/nml.nix { };
13784
13785 openxcom = callPackage ../games/openxcom { SDL = SDL_compat; };
13786
13787 openxray = callPackage ../games/openxray {
13788 # Builds with Clang, but hits an assertion failure unless GCC is used
13789 # https://github.com/OpenXRay/xray-16/issues/1224
13790 stdenv = gccStdenv;
13791 };
13792
13793 orthorobot = callPackage ../games/orthorobot { love = love_0_10; };
13794
13795 papermcServers = callPackages ../games/papermc { };
13796
13797 papermc = papermcServers.papermc;
13798
13799 path-of-building = qt6Packages.callPackage ../games/path-of-building { };
13800
13801 pentobi = libsForQt5.callPackage ../games/pentobi { };
13802
13803 pokerth = libsForQt5.callPackage ../games/pokerth {
13804 protobuf = protobuf_21;
13805 };
13806
13807 pokerth-server = libsForQt5.callPackage ../games/pokerth {
13808 target = "server";
13809 protobuf = protobuf_21;
13810 };
13811
13812 inherit (import ../games/quake3 pkgs.callPackage)
13813 quake3wrapper
13814 quake3arenadata
13815 quake3demodata
13816 quake3pointrelease
13817 quake3arena
13818 quake3arena-hires
13819 quake3demo
13820 quake3demo-hires
13821 quake3hires
13822 ;
13823
13824 quakespasm = callPackage ../games/quakespasm { };
13825 vkquake = callPackage ../games/quakespasm/vulkan.nix { };
13826
13827 rogue = callPackage ../games/rogue {
13828 ncurses = ncurses5;
13829 };
13830
13831 rott-shareware = callPackage ../by-name/ro/rott/package.nix {
13832 buildShareware = true;
13833 };
13834
13835 scummvm = callPackage ../games/scummvm { };
13836
13837 inherit (callPackage ../games/scummvm/games.nix { })
13838 beneath-a-steel-sky
13839 broken-sword-25
13840 drascula-the-vampire-strikes-back
13841 dreamweb
13842 flight-of-the-amazon-queen
13843 lure-of-the-temptress
13844 ;
13845
13846 sgt-puzzles = callPackage ../games/sgt-puzzles { };
13847
13848 sgt-puzzles-mobile = callPackage ../games/sgt-puzzles {
13849 isMobile = true;
13850 };
13851
13852 shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { };
13853 rkpd2 = callPackage ../games/shattered-pixel-dungeon/rkpd2 { };
13854 rat-king-adventure = callPackage ../games/shattered-pixel-dungeon/rat-king-adventure { };
13855 experienced-pixel-dungeon =
13856 callPackage ../games/shattered-pixel-dungeon/experienced-pixel-dungeon
13857 { };
13858 summoning-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/summoning-pixel-dungeon { };
13859 shorter-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/shorter-pixel-dungeon { };
13860 tower-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/tower-pixel-dungeon { };
13861
13862 # get binaries without data built by Hydra
13863 simutrans_binaries = lowPrio simutrans.binaries;
13864
13865 soi = callPackage ../games/soi {
13866 lua = lua5_1;
13867 };
13868
13869 steam-run = steam.run;
13870 steam-run-free = steam.run-free;
13871
13872 steamback = python3.pkgs.callPackage ../tools/games/steamback { };
13873
13874 protontricks = python3Packages.callPackage ../tools/package-management/protontricks {
13875 steam-run = steam-run-free;
13876 inherit winetricks yad;
13877 };
13878
13879 protonup-ng = with python3Packages; toPythonApplication protonup-ng;
13880
13881 stuntrally = callPackage ../games/stuntrally { boost = boost183; };
13882
13883 synthv1 = libsForQt5.callPackage ../applications/audio/synthv1 { };
13884
13885 the-powder-toy = callPackage ../by-name/th/the-powder-toy/package.nix {
13886 lua = lua5_2;
13887 };
13888
13889 tbe = libsForQt5.callPackage ../games/the-butterfly-effect { };
13890
13891 teeworlds-server = teeworlds.override { buildClient = false; };
13892
13893 tengine = callPackage ../servers/http/tengine {
13894 modules = with nginxModules; [
13895 rtmp
13896 dav
13897 moreheaders
13898 modsecurity
13899 ];
13900 };
13901
13902 tibia = pkgsi686Linux.callPackage ../games/tibia { };
13903
13904 speed_dreams = callPackage ../games/speed-dreams {
13905 # Torcs wants to make shared libraries linked with plib libraries (it provides static).
13906 # i686 is the only platform I know than can do that linking without plib built with -fPIC
13907 libpng = libpng12;
13908 };
13909
13910 ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { };
13911
13912 ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { };
13913
13914 ue4demos = recurseIntoAttrs (callPackage ../games/ue4demos { });
13915
13916 # To ensure vdrift's code is built on hydra
13917 vdrift-bin = vdrift.bin;
13918
13919 vessel = pkgsi686Linux.callPackage ../games/vessel { };
13920
13921 warsow-engine = callPackage ../games/warsow/engine.nix { };
13922
13923 warsow = callPackage ../games/warsow { };
13924
13925 inherit (callPackage ../games/xonotic { })
13926 xonotic-data
13927 xonotic
13928 ;
13929
13930 xonotic-glx =
13931 (callPackage ../games/xonotic {
13932 withSDL = false;
13933 withGLX = true;
13934 }).xonotic;
13935
13936 xonotic-dedicated =
13937 (callPackage ../games/xonotic {
13938 withSDL = false;
13939 withDedicated = true;
13940 }).xonotic;
13941
13942 xonotic-sdl = xonotic;
13943 xonotic-sdl-unwrapped = xonotic-sdl.xonotic-unwrapped;
13944 xonotic-glx-unwrapped = xonotic-glx.xonotic-unwrapped;
13945 xonotic-dedicated-unwrapped = xonotic-dedicated.xonotic-unwrapped;
13946
13947 xpilot-ng = callPackage ../games/xpilot { };
13948 bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix { };
13949 bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix { };
13950
13951 inherit
13952 (callPackage ../games/quake2/yquake2 {
13953 })
13954 yquake2
13955 yquake2-ctf
13956 yquake2-ground-zero
13957 yquake2-the-reckoning
13958 yquake2-all-games
13959 ;
13960
13961 zeroad-unwrapped = callPackage ../by-name/ze/zeroad-unwrapped/package.nix {
13962 wxGTK = wxGTK32;
13963 fmt = fmt_9;
13964 };
13965
13966 ### DESKTOP ENVIRONMENTS
13967
13968 arcan-wrapped = arcan.wrapper.override { };
13969 arcan-all-wrapped = arcan.wrapper.override {
13970 name = "arcan-all-wrapped";
13971 appls = [
13972 cat9
13973 durden
13974 pipeworld
13975 ];
13976
13977 };
13978 cat9-wrapped = arcan.wrapper.override {
13979 name = "cat9-wrapped";
13980 appls = [ cat9 ];
13981 };
13982 durden-wrapped = arcan.wrapper.override {
13983 name = "durden-wrapped";
13984 appls = [ durden ];
13985 };
13986 pipeworld-wrapped = arcan.wrapper.override {
13987 name = "pipeworld-wrapped";
13988 appls = [ pipeworld ];
13989 };
13990 prio-wrapped = arcan.wrapper.override {
13991 name = "prio-wrapped";
13992 appls = [ prio ];
13993 };
13994
13995 enlightenment = recurseIntoAttrs (callPackage ../desktops/enlightenment { });
13996
13997 expidus = recurseIntoAttrs (
13998 callPackages ../desktops/expidus {
13999 # Use the Nix built Flutter Engine for testing.
14000 # Also needed when we eventually package Genesis Shell.
14001 flutterPackages = flutterPackages-source;
14002 }
14003 );
14004
14005 gnome2 = recurseIntoAttrs (callPackage ../desktops/gnome-2 { });
14006
14007 gnome = recurseIntoAttrs (callPackage ../desktops/gnome { });
14008
14009 inherit (callPackage ../desktops/gnome/extensions { })
14010 gnomeExtensions
14011 gnome38Extensions
14012 gnome40Extensions
14013 gnome41Extensions
14014 gnome42Extensions
14015 gnome43Extensions
14016 gnome44Extensions
14017 gnome45Extensions
14018 gnome46Extensions
14019 gnome47Extensions
14020 gnome48Extensions
14021 ;
14022
14023 gnome-extensions-cli = python3Packages.callPackage ../desktops/gnome/misc/gnome-extensions-cli { };
14024
14025 gnome-session-ctl = callPackage ../by-name/gn/gnome-session/ctl.nix { };
14026
14027 lomiri = recurseIntoAttrs (callPackage ../desktops/lomiri { });
14028
14029 lumina = recurseIntoAttrs (callPackage ../desktops/lumina { });
14030
14031 ### DESKTOPS/LXDE
14032
14033 lxappearance-gtk2 = callPackage ../by-name/lx/lxappearance/package.nix {
14034 gtk2 = gtk2-x11;
14035 withGtk3 = false;
14036 };
14037
14038 lxqt = recurseIntoAttrs (
14039 import ../desktops/lxqt {
14040 inherit pkgs;
14041 inherit (lib) makeScope;
14042 inherit kdePackages;
14043 }
14044 );
14045
14046 mate = recurseIntoAttrs (callPackage ../desktops/mate { });
14047
14048 # Needed for elementary's gala, wingpanel and greeter until support for higher versions is provided
14049 pantheon = recurseIntoAttrs (callPackage ../desktops/pantheon { });
14050
14051 xfce = recurseIntoAttrs (callPackage ../desktops/xfce { });
14052
14053 inherit
14054 (callPackages ../applications/misc/redshift {
14055 inherit (python3Packages)
14056 python
14057 pygobject3
14058 pyxdg
14059 wrapPython
14060 ;
14061 geoclue = geoclue2;
14062 })
14063 redshift
14064 gammastep
14065 ;
14066
14067 redshift-plasma-applet = libsForQt5.callPackage ../applications/misc/redshift-plasma-applet { };
14068
14069 ### SCIENCE/CHEMISTY
14070
14071 avogadrolibs = libsForQt5.callPackage ../development/libraries/science/chemistry/avogadrolibs { };
14072
14073 molequeue = libsForQt5.callPackage ../development/libraries/science/chemistry/molequeue { };
14074
14075 avogadro2 = libsForQt5.callPackage ../applications/science/chemistry/avogadro2 { };
14076
14077 libxc_7 = pkgs.libxc.override { version = "7.0.0"; };
14078
14079 molbar = with python3Packages; toPythonApplication molbar;
14080
14081 nwchem = callPackage ../applications/science/chemistry/nwchem {
14082 blas = blas-ilp64;
14083 lapack = lapack-ilp64;
14084 };
14085
14086 autodock-vina = callPackage ../applications/science/chemistry/autodock-vina { };
14087
14088 pdb2pqr = with python3Packages; toPythonApplication pdb2pqr;
14089
14090 quantum-espresso = callPackage ../applications/science/chemistry/quantum-espresso {
14091 hdf5 = hdf5-fortran;
14092 };
14093
14094 siesta = callPackage ../applications/science/chemistry/siesta { };
14095
14096 siesta-mpi = callPackage ../applications/science/chemistry/siesta { useMpi = true; };
14097
14098 cp2k = callPackage ../by-name/cp/cp2k/package.nix {
14099 libxc = pkgs.libxc_7;
14100 };
14101
14102 ### SCIENCE/GEOMETRY
14103
14104 ### SCIENCE/BENCHMARK
14105
14106 ### SCIENCE/BIOLOGY
14107
14108 cd-hit = callPackage ../applications/science/biology/cd-hit {
14109 inherit (llvmPackages) openmp;
14110 };
14111
14112 deepdiff = with python3Packages; toPythonApplication deepdiff;
14113
14114 deep-translator = with python3Packages; toPythonApplication deep-translator;
14115
14116 hh-suite = callPackage ../applications/science/biology/hh-suite {
14117 inherit (llvmPackages) openmp;
14118 };
14119
14120 nest-mpi = nest.override { withMpi = true; };
14121
14122 neuron-mpi = neuron.override { useMpi = true; };
14123
14124 neuron-full = neuron-mpi.override {
14125 useCore = true;
14126 useRx3d = true;
14127 };
14128
14129 minc_tools = callPackage ../applications/science/biology/minc-tools {
14130 inherit (perlPackages) perl TextFormat;
14131 };
14132
14133 raxml-mpi = raxml.override { useMpi = true; };
14134
14135 ### SCIENCE/MACHINE LEARNING
14136
14137 streamlit = with python3Packages; toPythonApplication streamlit;
14138
14139 ### SCIENCE/MATH
14140
14141 blas-ilp64 = blas.override { isILP64 = true; };
14142
14143 labplot = libsForQt5.callPackage ../applications/science/math/labplot { };
14144
14145 lapack-ilp64 = lapack.override { isILP64 = true; };
14146
14147 liblapack = lapack-reference;
14148
14149 notus-scanner = with python3Packages; toPythonApplication notus-scanner;
14150
14151 openblas = callPackage ../development/libraries/science/math/openblas {
14152 inherit (llvmPackages) openmp;
14153 };
14154
14155 # A version of OpenBLAS using 32-bit integers on all platforms for compatibility with
14156 # standard BLAS and LAPACK.
14157 openblasCompat = openblas.override { blas64 = false; };
14158
14159 magma-cuda = magma.override {
14160 cudaSupport = true;
14161 rocmSupport = false;
14162 };
14163
14164 magma-cuda-static = magma-cuda.override {
14165 static = true;
14166 };
14167
14168 magma-hip = magma.override {
14169 cudaSupport = false;
14170 rocmSupport = true;
14171 };
14172
14173 mathematica-webdoc = mathematica.override {
14174 webdoc = true;
14175 };
14176
14177 mathematica-cuda = mathematica.override {
14178 cudaSupport = true;
14179 };
14180
14181 mathematica-webdoc-cuda = mathematica.override {
14182 webdoc = true;
14183 cudaSupport = true;
14184 };
14185
14186 math-preview = callPackage ../by-name/ma/math-preview/package.nix {
14187 nodejs = nodejs_20;
14188 };
14189
14190 p4est-sc-dbg = p4est-sc.override { debug = true; };
14191
14192 p4est-dbg = p4est.override { debug = true; };
14193
14194 suitesparse_5_3 = callPackage ../development/libraries/science/math/suitesparse {
14195 inherit (llvmPackages) openmp;
14196 };
14197 suitesparse = suitesparse_5_3;
14198
14199 trilinos-mpi = trilinos.override { withMPI = true; };
14200
14201 wolfram-engine = libsForQt5.callPackage ../applications/science/math/wolfram-engine { };
14202
14203 wolfram-for-jupyter-kernel = callPackage ../applications/editors/jupyter-kernels/wolfram { };
14204
14205 ### SCIENCE/MOLECULAR-DYNAMICS
14206
14207 gromacs = callPackage ../applications/science/molecular-dynamics/gromacs {
14208 singlePrec = true;
14209 fftw = fftwSinglePrec;
14210 };
14211
14212 gromacsPlumed = lowPrio (
14213 gromacs.override {
14214 singlePrec = true;
14215 enablePlumed = true;
14216 fftw = fftwSinglePrec;
14217 }
14218 );
14219
14220 gromacsMpi = lowPrio (
14221 gromacs.override {
14222 singlePrec = true;
14223 enableMpi = true;
14224 fftw = fftwSinglePrec;
14225 }
14226 );
14227
14228 gromacsDouble = lowPrio (
14229 gromacs.override {
14230 singlePrec = false;
14231 fftw = fftw;
14232 }
14233 );
14234
14235 gromacsDoubleMpi = lowPrio (
14236 gromacs.override {
14237 singlePrec = false;
14238 enableMpi = true;
14239 fftw = fftw;
14240 }
14241 );
14242
14243 gromacsCudaMpi = lowPrio (
14244 gromacs.override {
14245 singlePrec = true;
14246 enableMpi = true;
14247 enableCuda = true;
14248 fftw = fftwSinglePrec;
14249 }
14250 );
14251
14252 ### SCIENCE/MEDICINE
14253
14254 ### SCIENCE/PHYSICS
14255
14256 mcfm = callPackage ../applications/science/physics/MCFM {
14257 stdenv = gccStdenv;
14258 lhapdf = lhapdf.override {
14259 stdenv = gccStdenv;
14260 python3 = null;
14261 };
14262 };
14263
14264 xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
14265
14266 ### SCIENCE/PROGRAMMING
14267
14268 ### SCIENCE/LOGIC
14269
14270 abella = callPackage ../applications/science/logic/abella {
14271 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
14272 };
14273
14274 inherit
14275 (callPackage ./rocq-packages.nix {
14276 inherit (ocaml-ng)
14277 ocamlPackages_4_14
14278 ;
14279 })
14280 mkRocqPackages
14281 rocqPackages_9_0
14282 rocq-core_9_0
14283 rocqPackages_9_1
14284 rocq-core_9_1
14285 rocqPackages
14286 rocq-core
14287 ;
14288
14289 inherit
14290 (callPackage ./coq-packages.nix {
14291 inherit (ocaml-ng)
14292 ocamlPackages_4_09
14293 ocamlPackages_4_10
14294 ocamlPackages_4_12
14295 ocamlPackages_4_14
14296 ;
14297 inherit
14298 rocqPackages_9_0
14299 rocqPackages_9_1
14300 rocqPackages
14301 ;
14302 })
14303 mkCoqPackages
14304 coqPackages_8_7
14305 coq_8_7
14306 coqPackages_8_8
14307 coq_8_8
14308 coqPackages_8_9
14309 coq_8_9
14310 coqPackages_8_10
14311 coq_8_10
14312 coqPackages_8_11
14313 coq_8_11
14314 coqPackages_8_12
14315 coq_8_12
14316 coqPackages_8_13
14317 coq_8_13
14318 coqPackages_8_14
14319 coq_8_14
14320 coqPackages_8_15
14321 coq_8_15
14322 coqPackages_8_16
14323 coq_8_16
14324 coqPackages_8_17
14325 coq_8_17
14326 coqPackages_8_18
14327 coq_8_18
14328 coqPackages_8_19
14329 coq_8_19
14330 coqPackages_8_20
14331 coq_8_20
14332 coqPackages_9_0
14333 coq_9_0
14334 coqPackages_9_1
14335 coq_9_1
14336 coqPackages
14337 coq
14338 ;
14339
14340 coq-kernel = callPackage ../applications/editors/jupyter-kernels/coq { };
14341
14342 cubicle = callPackage ../applications/science/logic/cubicle {
14343 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
14344 };
14345
14346 cvc3 = callPackage ../applications/science/logic/cvc3 {
14347 gmp = lib.overrideDerivation gmp (_: {
14348 dontDisableStatic = true;
14349 });
14350 stdenv = gccStdenv;
14351 };
14352
14353 ekrhyper = callPackage ../applications/science/logic/ekrhyper {
14354 ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
14355 };
14356
14357 eprover-ho = eprover.override { enableHO = true; };
14358
14359 giac-with-xcas = giac.override { enableGUI = true; };
14360
14361 glucose-syrup = glucose.override {
14362 enableUnfree = true;
14363 };
14364
14365 inherit (ocamlPackages) hol_light;
14366
14367 isabelle = callPackage ../by-name/is/isabelle/package.nix {
14368 polyml = polyml.overrideAttrs {
14369 pname = "polyml-for-isabelle";
14370 version = "2025";
14371 __intentionallyOverridingVersion = true; # avoid a warning, no src override
14372 configureFlags = [
14373 "--enable-intinf-as-int"
14374 "--with-gmp"
14375 "--disable-shared"
14376 ];
14377 buildFlags = [ "compiler" ];
14378 };
14379
14380 java = openjdk21;
14381 };
14382 isabelle-components = recurseIntoAttrs (callPackage ../by-name/is/isabelle/components { });
14383
14384 lean3 = lean;
14385
14386 leo2 = callPackage ../applications/science/logic/leo2 {
14387 inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml camlp4;
14388 };
14389
14390 prooftree = callPackage ../applications/science/logic/prooftree {
14391 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
14392 };
14393
14394 satallax = callPackage ../applications/science/logic/satallax {
14395 inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
14396 };
14397
14398 statverif = callPackage ../applications/science/logic/statverif {
14399 ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
14400 };
14401
14402 why3 = callPackage ../applications/science/logic/why3 { coqPackages = coqPackages_8_20; };
14403
14404 tlaps = callPackage ../applications/science/logic/tlaplus/tlaps.nix {
14405 inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml;
14406 };
14407
14408 ### SCIENCE / ENGINEERING
14409
14410 ### SCIENCE / ELECTRONICS
14411
14412 simulide_0_4_15 = callPackage ../by-name/si/simulide/package.nix { versionNum = "0.4.15"; };
14413 simulide_1_0_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.0.0"; };
14414 simulide_1_1_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.1.0"; };
14415 simulide_1_2_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.2.0"; };
14416
14417 eagle = libsForQt5.callPackage ../applications/science/electronics/eagle/eagle.nix { };
14418
14419 caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { };
14420
14421 degate = libsForQt5.callPackage ../applications/science/electronics/degate { };
14422
14423 geda = callPackage ../applications/science/electronics/geda {
14424 guile = guile_2_2;
14425 };
14426
14427 gerbv = callPackage ../applications/science/electronics/gerbv {
14428 cairo = cairo.override { x11Support = true; };
14429 };
14430
14431 # this is a wrapper for kicad.base and kicad.libraries
14432 kicad = callPackage ../applications/science/electronics/kicad { };
14433 # this is the same but without the (sizable) 3D models library
14434 kicad-small = kicad.override {
14435 pname = "kicad-small";
14436 with3d = false;
14437 };
14438 # this is the stable branch at whatever point update.sh last updated versions.nix
14439 kicad-testing = kicad.override {
14440 pname = "kicad-testing";
14441 testing = true;
14442 };
14443 # and a small version of that
14444 kicad-testing-small = kicad.override {
14445 pname = "kicad-testing-small";
14446 testing = true;
14447 with3d = false;
14448 };
14449 # this is the master branch at whatever point update.sh last updated versions.nix
14450 kicad-unstable = kicad.override {
14451 pname = "kicad-unstable";
14452 stable = false;
14453 };
14454 # and a small version of that
14455 kicad-unstable-small = kicad.override {
14456 pname = "kicad-unstable-small";
14457 stable = false;
14458 with3d = false;
14459 };
14460
14461 kicadAddons = recurseIntoAttrs (callPackage ../applications/science/electronics/kicad/addons { });
14462
14463 librepcb = qt6Packages.callPackage ../applications/science/electronics/librepcb { };
14464
14465 ngspice = libngspice.override {
14466 withNgshared = false;
14467 };
14468
14469 openems = callPackage ../applications/science/electronics/openems { };
14470
14471 xyce-parallel = callPackage ../by-name/xy/xyce/package.nix {
14472 withMPI = true;
14473 trilinos = trilinos-mpi;
14474 };
14475
14476 ### SCIENCE / MATH
14477
14478 caffe = callPackage ../applications/science/math/caffe (
14479 {
14480 opencv4 = opencv4WithoutCuda; # Used only for image loading.
14481 blas = openblas;
14482 }
14483 // (config.caffe or { })
14484 );
14485
14486 gap-minimal = lowPrio (gap.override { packageSet = "minimal"; });
14487
14488 gap-full = lowPrio (gap.override { packageSet = "full"; });
14489
14490 maxima = callPackage ../applications/science/math/maxima {
14491 lisp-compiler = sbcl;
14492 };
14493 maxima-ecl = maxima.override {
14494 lisp-compiler = ecl;
14495 };
14496
14497 wxmaxima = callPackage ../applications/science/math/wxmaxima {
14498 wxGTK = wxGTK32.override {
14499 withWebKit = true;
14500 };
14501 };
14502
14503 yacas = libsForQt5.callPackage ../applications/science/math/yacas { };
14504
14505 yacas-gui = yacas.override {
14506 enableGui = true;
14507 enableJupyter = false;
14508 };
14509
14510 speedcrunch = libsForQt5.callPackage ../applications/science/math/speedcrunch { };
14511
14512 ### SCIENCE / MISC
14513
14514 boinc-headless = boinc.override { headless = true; };
14515
14516 celestia = callPackage ../applications/science/astronomy/celestia {
14517 inherit (gnome2) gtkglext;
14518 };
14519
14520 convertall = qt5.callPackage ../applications/science/misc/convertall { };
14521
14522 faissWithCuda = faiss.override {
14523 cudaSupport = true;
14524 };
14525
14526 gplates = libsForQt5.callPackage ../applications/science/misc/gplates { };
14527
14528 megam = callPackage ../applications/science/misc/megam {
14529 inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
14530 };
14531
14532 spyder = with python3.pkgs; toPythonApplication spyder;
14533
14534 stellarium = qt6Packages.callPackage ../applications/science/astronomy/stellarium { };
14535
14536 tulip = libsForQt5.callPackage ../applications/science/misc/tulip {
14537 python3 = python312; # fails to build otherwise
14538 };
14539
14540 vite = libsForQt5.callPackage ../applications/science/misc/vite { };
14541
14542 ### SCIENCE / PHYSICS
14543
14544 hepmc3 = callPackage ../development/libraries/physics/hepmc3 {
14545 python = null;
14546 };
14547
14548 pythia = callPackage ../development/libraries/physics/pythia {
14549 hepmc = hepmc2;
14550 };
14551
14552 yoda-with-root = lowPrio (
14553 yoda.override {
14554 withRootSupport = true;
14555 }
14556 );
14557
14558 ### SCIENCE/ROBOTICS
14559
14560 apmplanner2 = libsForQt5.callPackage ../applications/science/robotics/apmplanner2 { };
14561
14562 ### MISC
14563
14564 antimicrox = libsForQt5.callPackage ../tools/misc/antimicrox { };
14565
14566 autotiling = python3Packages.callPackage ../misc/autotiling { };
14567
14568 brgenml1lpr = pkgsi686Linux.callPackage ../misc/cups/drivers/brgenml1lpr { };
14569
14570 foomatic-db-ppds-withNonfreeDb = callPackage ../by-name/fo/foomatic-db-ppds/package.nix {
14571 withNonfreeDb = true;
14572 };
14573
14574 dcp375cwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp375cw { }).driver;
14575
14576 dcp375cw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp375cw { }).cupswrapper;
14577
14578 dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver;
14579
14580 dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper;
14581
14582 cups-brother-hl1110 = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1110 { };
14583
14584 cups-brother-hl1210w = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1210w { };
14585
14586 cups-brother-hl2260d = pkgsi686Linux.callPackage ../misc/cups/drivers/hl2260d { };
14587
14588 cups-brother-hl3140cw = pkgsi686Linux.callPackage ../misc/cups/drivers/hl3140cw { };
14589
14590 cups-brother-hll2340dw = pkgsi686Linux.callPackage ../misc/cups/drivers/hll2340dw { };
14591
14592 cups-brother-hll3230cdw = pkgsi686Linux.callPackage ../misc/cups/drivers/hll3230cdw { };
14593
14594 # this driver ships with pre-compiled 32-bit binary libraries
14595 cnijfilter_2_80 = pkgsi686Linux.callPackage ../misc/cups/drivers/cnijfilter_2_80 { };
14596
14597 faust = faust2;
14598
14599 flashprint = libsForQt5.callPackage ../applications/misc/flashprint { };
14600
14601 gajim = callPackage ../applications/networking/instant-messengers/gajim {
14602 inherit (gst_all_1) gstreamer gst-plugins-base gst-libav;
14603 gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
14604 };
14605
14606 gnuk = callPackage ../misc/gnuk {
14607 gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc;
14608 binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
14609 };
14610
14611 helmfile-wrapped = helmfile.override {
14612 inherit (kubernetes-helm-wrapped.passthru) pluginsDir;
14613 };
14614
14615 hplipWithPlugin = hplip.override { withPlugin = true; };
14616
14617 hjson = with python3Packages; toPythonApplication hjson;
14618
14619 image_optim = callPackage ../applications/graphics/image_optim { };
14620
14621 libjack2 = jack2.override { prefix = "lib"; };
14622
14623 jack-autoconnect = libsForQt5.callPackage ../applications/audio/jack-autoconnect { };
14624 jack_autoconnect = jack-autoconnect;
14625
14626 j2cli = with python311Packages; toPythonApplication j2cli;
14627
14628 j2lint = with python3Packages; toPythonApplication j2lint;
14629
14630 kmonad = haskellPackages.kmonad.bin;
14631
14632 # In general we only want keep the last three minor versions around that
14633 # correspond to the last three supported kubernetes versions:
14634 # https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions
14635 # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases
14636 inherit (callPackage ../applications/networking/cluster/kops { })
14637 mkKops
14638 kops_1_31
14639 kops_1_32
14640 kops_1_33
14641 ;
14642 kops = kops_1_33;
14643
14644 lilypond = callPackage ../misc/lilypond { };
14645
14646 lilypond-unstable = callPackage ../misc/lilypond/unstable.nix { };
14647
14648 lilypond-unstable-with-fonts = callPackage ../misc/lilypond/with-fonts.nix {
14649 lilypond = lilypond-unstable;
14650 openlilylib-fonts = openlilylib-fonts.override {
14651 lilypond = lilypond-unstable;
14652 };
14653 };
14654
14655 lilypond-with-fonts = callPackage ../misc/lilypond/with-fonts.nix { };
14656
14657 openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { };
14658
14659 meilisearch_1_11 = callPackage ../by-name/me/meilisearch/package.nix { version = "1.11.3"; };
14660
14661 muse = libsForQt5.callPackage ../applications/audio/muse { };
14662
14663 nixDependencies = recurseIntoAttrs (
14664 callPackage ../tools/package-management/nix/dependencies-scope.nix { }
14665 );
14666
14667 nixVersions = recurseIntoAttrs (
14668 callPackage ../tools/package-management/nix {
14669 storeDir = config.nix.storeDir or "/nix/store";
14670 stateDir = config.nix.stateDir or "/nix/var";
14671 }
14672 );
14673
14674 nix = nixVersions.stable;
14675
14676 nixStatic = pkgsStatic.nix;
14677
14678 lixPackageSets = recurseIntoAttrs (
14679 callPackage ../tools/package-management/lix {
14680 storeDir = config.nix.storeDir or "/nix/store";
14681 stateDir = config.nix.stateDir or "/nix/var";
14682 }
14683 );
14684
14685 lix = lixPackageSets.stable.lix;
14686
14687 lixStatic = pkgsStatic.lix;
14688
14689 inherit (callPackages ../applications/networking/cluster/nixops { })
14690 nixops_unstable_minimal
14691
14692 # Not recommended; too fragile
14693 nixops_unstable_full
14694 ;
14695
14696 # Useful with ofborg, e.g. commit prefix `nixops_unstablePlugins.nixops-digitalocean: ...` to trigger automatically.
14697 nixops_unstablePlugins = recurseIntoAttrs nixops_unstable_minimal.availablePlugins;
14698
14699 /*
14700 Evaluate a NixOS configuration using this evaluation of Nixpkgs.
14701
14702 With this function you can write, for example, a package that
14703 depends on a custom virtual machine image.
14704
14705 Parameter: A module, path or list of those that represent the
14706 configuration of the NixOS system to be constructed.
14707
14708 Result: An attribute set containing packages produced by this
14709 evaluation of NixOS, such as toplevel, kernel and
14710 initialRamdisk.
14711 The result can be extended in the modules by defining
14712 extra attributes in system.build.
14713 Alternatively, you may use the result's config and
14714 options attributes to query any option.
14715
14716 Example:
14717
14718 let
14719 myOS = pkgs.nixos ({ lib, pkgs, config, ... }: {
14720
14721 config.services.nginx = {
14722 enable = true;
14723 # ...
14724 };
14725
14726 # Use config.system.build to exports relevant parts of a
14727 # configuration. The runner attribute should not be
14728 # considered a fully general replacement for systemd
14729 # functionality.
14730 config.system.build.run-nginx = config.systemd.services.nginx.runner;
14731 });
14732 in
14733 myOS.run-nginx
14734
14735 Unlike in plain NixOS, the nixpkgs.config and
14736 nixpkgs.system options will be ignored by default. Instead,
14737 nixpkgs.pkgs will have the default value of pkgs as it was
14738 constructed right after invoking the nixpkgs function (e.g. the
14739 value of import <nixpkgs> { overlays = [./my-overlay.nix]; }
14740 but not the value of (import <nixpkgs> {} // { extra = ...; }).
14741
14742 If you do want to use the config.nixpkgs options, you are
14743 probably better off by calling nixos/lib/eval-config.nix
14744 directly, even though it is possible to set config.nixpkgs.pkgs.
14745
14746 For more information about writing NixOS modules, see
14747 https://nixos.org/nixos/manual/index.html#sec-writing-modules
14748
14749 Note that you will need to have called Nixpkgs with the system
14750 parameter set to the right value for your deployment target.
14751 */
14752 nixos =
14753 configuration:
14754 let
14755 c = import (path + "/nixos/lib/eval-config.nix") {
14756 modules = [
14757 (
14758 { lib, ... }:
14759 {
14760 config.nixpkgs.pkgs = lib.mkDefault pkgs;
14761 config.nixpkgs.localSystem = lib.mkDefault stdenv.hostPlatform;
14762 }
14763 )
14764 ]
14765 ++ (if builtins.isList configuration then configuration else [ configuration ]);
14766
14767 # The system is inherited from the current pkgs above.
14768 # Set it to null, to remove the "legacy" entrypoint's non-hermetic default.
14769 system = null;
14770 };
14771 in
14772 c.config.system.build // c;
14773
14774 # A NixOS/home-manager/arion/... module that sets the `pkgs` module argument.
14775 pkgsModule =
14776 { options, ... }:
14777 {
14778 config =
14779 if options ? nixpkgs.pkgs then
14780 {
14781 # legacy / nixpkgs.nix style
14782 nixpkgs.pkgs = pkgs;
14783 }
14784 else
14785 {
14786 # minimal
14787 _module.args.pkgs = pkgs;
14788 };
14789 };
14790
14791 nixosOptionsDoc =
14792 attrs:
14793 (import ../../nixos/lib/make-options-doc) (
14794 {
14795 pkgs = pkgs.__splicedPackages;
14796 inherit lib;
14797 }
14798 // attrs
14799 );
14800
14801 nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs {
14802 nixComponents = nixVersions.nixComponents_2_31;
14803 };
14804
14805 nix-delegate = haskell.lib.compose.justStaticExecutables haskellPackages.nix-delegate;
14806 nix-deploy = haskell.lib.compose.justStaticExecutables haskellPackages.nix-deploy;
14807 nix-derivation = haskell.lib.compose.justStaticExecutables haskellPackages.nix-derivation;
14808 nix-diff = haskell.lib.compose.justStaticExecutables haskellPackages.nix-diff;
14809
14810 nix-info = callPackage ../tools/nix/info { };
14811 nix-info-tested = nix-info.override { doCheck = true; };
14812
14813 nix-prefetch-github = with python3Packages; toPythonApplication nix-prefetch-github;
14814
14815 inherit (callPackages ../tools/package-management/nix-prefetch-scripts { })
14816 nix-prefetch-bzr
14817 nix-prefetch-cvs
14818 nix-prefetch-git
14819 nix-prefetch-hg
14820 nix-prefetch-svn
14821 nix-prefetch-scripts
14822 ;
14823
14824 nix-tree = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-tree);
14825
14826 nix-serve-ng =
14827 # FIXME: manually eliminate incorrect references on aarch64-darwin,
14828 # see https://github.com/NixOS/nixpkgs/issues/318013
14829 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
14830 haskellPackages.nix-serve-ng
14831 else
14832 haskell.lib.compose.justStaticExecutables haskellPackages.nix-serve-ng;
14833
14834 nix-visualize = python3.pkgs.callPackage ../tools/package-management/nix-visualize { };
14835
14836 nixfmt-classic = haskellPackages.nixfmt.bin;
14837
14838 nixpkgs-manual = callPackage ../../doc/doc-support/package.nix { };
14839
14840 nixos-artwork = callPackage ../data/misc/nixos-artwork { };
14841
14842 nixos-rebuild = callPackage ../os-specific/linux/nixos-rebuild { };
14843
14844 disnix = callPackage ../tools/package-management/disnix { };
14845
14846 dysnomia = callPackage ../tools/package-management/disnix/dysnomia (
14847 config.disnix or {
14848 inherit (python3Packages) supervisor;
14849 }
14850 );
14851
14852 lice = python3Packages.callPackage ../tools/misc/lice { };
14853
14854 mysql-workbench = callPackage ../by-name/my/mysql-workbench/package.nix (
14855 let
14856 mysql = mysql80;
14857 in
14858 {
14859 gdal = gdal.override {
14860 libmysqlclient = mysql;
14861 };
14862 mysql = mysql;
14863 }
14864 );
14865
14866 resp-app = libsForQt5.callPackage ../applications/misc/resp-app { };
14867
14868 pgadmin4-desktopmode = pgadmin4.override { server-mode = false; };
14869
14870 philipstv = with python3Packages; toPythonApplication philipstv;
14871
14872 pyupgrade = with python3Packages; toPythonApplication pyupgrade;
14873
14874 pwntools = with python3Packages; toPythonApplication pwntools;
14875
14876 putty = callPackage ../applications/networking/remote/putty {
14877 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
14878 };
14879
14880 qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { };
14881
14882 qMasterPassword-wayland = qt6Packages.callPackage ../applications/misc/qMasterPassword {
14883 x11Support = false;
14884 waylandSupport = true;
14885 };
14886
14887 qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { };
14888
14889 qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { };
14890
14891 sail-riscv = callPackage ../applications/virtualization/sail-riscv {
14892 inherit (ocamlPackages) sail;
14893 };
14894
14895 mfcj470dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj470dwlpr { };
14896
14897 mfcj6510dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj6510dwlpr { };
14898
14899 mfcl2700dnlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcl2700dnlpr { };
14900
14901 # This driver is only available as a 32 bit proprietary binary driver
14902 mfcl3770cdwlpr = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).driver;
14903 mfcl3770cdwcupswrapper = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).cupswrapper;
14904
14905 samsung-unified-linux-driver_1_00_37 = callPackage ../misc/cups/drivers/samsung/1.00.37.nix { };
14906 samsung-unified-linux-driver_4_01_17 = callPackage ../misc/cups/drivers/samsung/4.01.17.nix { };
14907 samsung-unified-linux-driver = res.samsung-unified-linux-driver_4_01_17;
14908
14909 sane-backends = callPackage ../applications/graphics/sane/backends (config.sane or { });
14910
14911 sane-drivers = callPackage ../applications/graphics/sane/drivers.nix { };
14912
14913 mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { };
14914
14915 sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { };
14916
14917 snscrape = with python3Packages; toPythonApplication snscrape;
14918
14919 sourceAndTags = callPackage ../misc/source-and-tags {
14920 hasktags = haskellPackages.hasktags;
14921 };
14922
14923 tellico = kdePackages.callPackage ../applications/misc/tellico { };
14924
14925 termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py { };
14926
14927 inherit (callPackage ../applications/networking/cluster/terraform { })
14928 mkTerraform
14929 terraform_1
14930 terraform_plugins_test
14931 ;
14932
14933 terraform = terraform_1;
14934
14935 terraform-providers = recurseIntoAttrs (
14936 callPackage ../applications/networking/cluster/terraform-providers { }
14937 );
14938
14939 vaultenv = haskell.lib.justStaticExecutables haskellPackages.vaultenv;
14940
14941 vaultwarden-sqlite = vaultwarden;
14942 vaultwarden-mysql = vaultwarden.override { dbBackend = "mysql"; };
14943 vaultwarden-postgresql = vaultwarden.override { dbBackend = "postgresql"; };
14944
14945 vimUtils = callPackage ../applications/editors/vim/plugins/utils/vim-utils.nix { };
14946
14947 vimPlugins = recurseIntoAttrs (callPackage ../applications/editors/vim/plugins { });
14948
14949 vimb = wrapFirefox vimb-unwrapped { };
14950
14951 vivisect = with python3Packages; toPythonApplication (vivisect.override { withGui = true; });
14952
14953 vokoscreen = libsForQt5.callPackage ../applications/video/vokoscreen {
14954 ffmpeg = ffmpeg-full;
14955 };
14956
14957 py-wacz = with python3Packages; toPythonApplication wacz;
14958
14959 wibo = pkgsi686Linux.callPackage ../applications/emulators/wibo { };
14960
14961 winePackagesFor =
14962 wineBuild:
14963 lib.makeExtensible (
14964 self: with self; {
14965 callPackage = newScope self;
14966
14967 inherit wineBuild;
14968
14969 inherit (callPackage ./wine-packages.nix { })
14970 minimal
14971 base
14972 full
14973 stable
14974 stableFull
14975 unstable
14976 unstableFull
14977 staging
14978 stagingFull
14979 wayland
14980 waylandFull
14981 yabridge
14982 fonts
14983 ;
14984 }
14985 );
14986
14987 winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32"));
14988 wine64Packages = recurseIntoAttrs (winePackagesFor "wine64");
14989 wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow");
14990 wineWow64Packages = recurseIntoAttrs (winePackagesFor "wineWow64");
14991
14992 wine = winePackages.full;
14993 wine64 = wine64Packages.full;
14994
14995 wine-staging = lowPrio (
14996 winePackages.full.override {
14997 wineRelease = "staging";
14998 }
14999 );
15000
15001 wine-wayland = lowPrio (
15002 winePackages.full.override {
15003 x11Support = false;
15004 }
15005 );
15006
15007 inherit (callPackage ../servers/web-apps/wordpress { })
15008 wordpress
15009 wordpress_6_7
15010 wordpress_6_8
15011 ;
15012
15013 wordpressPackages = recurseIntoAttrs (
15014 callPackage ../servers/web-apps/wordpress/packages {
15015 plugins = lib.importJSON ../servers/web-apps/wordpress/packages/plugins.json;
15016 themes = lib.importJSON ../servers/web-apps/wordpress/packages/themes.json;
15017 languages = lib.importJSON ../servers/web-apps/wordpress/packages/languages.json;
15018 }
15019 );
15020
15021 yamale = with python3Packages; toPythonApplication yamale;
15022
15023 zap-chip-gui = zap-chip.override { withGui = true; };
15024
15025 myEnvFun = callPackage ../misc/my-env {
15026 inherit (stdenv) mkDerivation;
15027 };
15028
15029 znc = callPackage ../applications/networking/znc { };
15030
15031 zncModules = recurseIntoAttrs (callPackage ../applications/networking/znc/modules.nix { });
15032
15033 dart = callPackage ../development/compilers/dart { };
15034
15035 pub2nix = recurseIntoAttrs (callPackage ../build-support/dart/pub2nix { });
15036
15037 buildDartApplication = callPackage ../build-support/dart/build-dart-application { };
15038
15039 dartHooks = callPackage ../build-support/dart/build-dart-application/hooks { };
15040
15041 httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { };
15042
15043 # Overriding does not work when using callPackage on discord using import instead. (https://github.com/NixOS/nixpkgs/pull/179906)
15044 discord = import ../applications/networking/instant-messengers/discord {
15045 inherit lib stdenv;
15046 inherit (pkgs) callPackage fetchurl;
15047 branch = "stable";
15048 };
15049
15050 discord-ptb = import ../applications/networking/instant-messengers/discord {
15051 inherit lib stdenv;
15052 inherit (pkgs) callPackage fetchurl;
15053 branch = "ptb";
15054 };
15055
15056 discord-canary = import ../applications/networking/instant-messengers/discord {
15057 inherit lib stdenv;
15058 inherit (pkgs) callPackage fetchurl;
15059 branch = "canary";
15060 };
15061
15062 discord-development = import ../applications/networking/instant-messengers/discord {
15063 inherit lib stdenv;
15064 inherit (pkgs) callPackage fetchurl;
15065 branch = "development";
15066 };
15067
15068 discord-screenaudio =
15069 qt6Packages.callPackage ../applications/networking/instant-messengers/discord-screenaudio
15070 { };
15071
15072 tomb = callPackage ../by-name/to/tomb/package.nix {
15073 pinentry = pinentry-curses;
15074 };
15075
15076 tora = libsForQt5.callPackage ../development/tools/tora { };
15077
15078 nitrokey-app = libsForQt5.callPackage ../tools/security/nitrokey-app { };
15079
15080 nitrokey-app2 = python3Packages.callPackage ../tools/security/nitrokey-app2 { };
15081
15082 hy = with python3Packages; toPythonApplication hy;
15083
15084 ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { };
15085
15086 vdr = callPackage ../applications/video/vdr { };
15087 vdrPlugins = recurseIntoAttrs (callPackage ../applications/video/vdr/plugins.nix { });
15088 wrapVdr = callPackage ../applications/video/vdr/wrapper.nix { };
15089
15090 chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing { };
15091
15092 linode-cli = python3Packages.callPackage ../tools/virtualization/linode-cli { };
15093
15094 phonetisaurus = callPackage ../development/libraries/phonetisaurus {
15095 # https://github.com/AdolfVonKleist/Phonetisaurus/issues/70
15096 openfst = openfst.overrideAttrs rec {
15097 version = "1.7.9";
15098 src = fetchurl {
15099 url = "http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-${version}.tar.gz";
15100 hash = "sha256-kxmusx0eKVCuJUSYhOJVzCvJ36+Yf2AVkHY+YaEPvd4=";
15101 };
15102 };
15103 };
15104
15105 compressDrv = callPackage ../build-support/compress-drv { };
15106
15107 compressDrvWeb = callPackage ../build-support/compress-drv/web.nix { };
15108
15109 diceware = with python3Packages; toPythonApplication diceware;
15110
15111 xml2rfc = with python3Packages; toPythonApplication xml2rfc;
15112
15113 ape = callPackage ../applications/misc/ape { };
15114 attemptoClex = callPackage ../applications/misc/ape/clex.nix { };
15115 apeClex = callPackage ../applications/misc/ape/apeclex.nix { };
15116
15117 # Unix tools
15118 unixtools = recurseIntoAttrs (callPackages ./unixtools.nix { });
15119 inherit (unixtools)
15120 hexdump
15121 ps
15122 logger
15123 eject
15124 umount
15125 mount
15126 wall
15127 hostname
15128 more
15129 sysctl
15130 getconf
15131 getent
15132 locale
15133 killall
15134 xxd
15135 watch
15136 ;
15137
15138 fts = if stdenv.hostPlatform.isMusl then musl-fts else null;
15139
15140 bsdSetupHook = makeSetupHook {
15141 name = "bsd-setup-hook";
15142 } ../os-specific/bsd/setup-hook.sh;
15143
15144 freebsd = callPackage ../os-specific/bsd/freebsd { };
15145
15146 netbsd = callPackage ../os-specific/bsd/netbsd { };
15147
15148 openbsd = callPackage ../os-specific/bsd/openbsd { };
15149
15150 bcompare = libsForQt5.callPackage ../applications/version-management/bcompare { };
15151
15152 xp-pen-deco-01-v2-driver = libsForQt5.xp-pen-deco-01-v2-driver;
15153
15154 newlib-nano = newlib.override {
15155 nanoizeNewlib = true;
15156 };
15157
15158 wfuzz = with python3Packages; toPythonApplication wfuzz;
15159
15160 sieveshell = with python3.pkgs; toPythonApplication managesieve;
15161
15162 swift-corelibs-libdispatch = swiftPackages.Dispatch;
15163
15164 aitrack = libsForQt5.callPackage ../applications/misc/aitrack { };
15165
15166 tidal-dl = python3Packages.callPackage ../tools/audio/tidal-dl { };
15167
15168 duden = python3Packages.toPythonApplication python3Packages.duden;
15169
15170 yaziPlugins = recurseIntoAttrs (callPackage ../by-name/ya/yazi/plugins { });
15171
15172 dillo = callPackage ../by-name/di/dillo/package.nix {
15173 fltk = fltk13;
15174 };
15175
15176 cantata = callPackage ../by-name/ca/cantata/package.nix {
15177 ffmpeg = ffmpeg_6;
15178 };
15179
15180 libkazv = callPackage ../by-name/li/libkazv/package.nix {
15181 libcpr = libcpr_1_10_5;
15182 };
15183
15184 tree-from-tags = callPackage ../by-name/tr/tree-from-tags/package.nix {
15185 ruby = ruby_3_1;
15186 };
15187
15188 biblioteca = callPackage ../by-name/bi/biblioteca/package.nix {
15189 webkitgtk = webkitgtk_6_0;
15190 };
15191
15192 libpostalWithData = callPackage ../by-name/li/libpostal/package.nix {
15193 withData = true;
15194 };
15195
15196 clash-verge-rev = callPackage ../by-name/cl/clash-verge-rev/package.nix {
15197 libsoup = libsoup_3;
15198 };
15199
15200 rustdesk-flutter = callPackage ../by-name/ru/rustdesk-flutter/package.nix {
15201 flutter = flutter324;
15202 };
15203
15204 davis = callPackage ../by-name/da/davis/package.nix {
15205 php = php83; # https://github.com/tchapi/davis/issues/195
15206 };
15207}