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 = 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_2021;
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 checkpointBuildTools = callPackage ../build-support/checkpoint-build.nix { };
324
325 celeste-classic-pm = pkgs.celeste-classic.override {
326 practiceMod = true;
327 };
328
329 cereal = cereal_1_3_0;
330
331 chef-cli = callPackage ../tools/misc/chef-cli { };
332
333 clang-uml = callPackage ../by-name/cl/clang-uml/package.nix {
334 stdenv = clangStdenv;
335 };
336
337 cope = callPackage ../by-name/co/cope/package.nix {
338 perl = perl538;
339 perlPackages = perl538Packages;
340 };
341
342 coolercontrol = recurseIntoAttrs (callPackage ../applications/system/coolercontrol { });
343
344 copilot-language-server-fhs = copilot-language-server.fhs;
345
346 cup-docker-noserver = cup-docker.override { withServer = false; };
347
348 deck = callPackage ../by-name/de/deck/package.nix {
349 buildGoModule = buildGo123Module;
350 };
351
352 dhallDirectoryToNix = callPackage ../build-support/dhall/directory-to-nix.nix { };
353
354 dhallPackageToNix = callPackage ../build-support/dhall/package-to-nix.nix { };
355
356 dhallToNix = callPackage ../build-support/dhall/to-nix.nix { };
357
358 dinghy = with python3Packages; toPythonApplication dinghy;
359
360 djgpp = djgpp_i586;
361 djgpp_i586 = callPackage ../development/compilers/djgpp {
362 targetArchitecture = "i586";
363 stdenv = gccStdenv;
364 };
365 djgpp_i686 = lowPrio (
366 callPackage ../development/compilers/djgpp {
367 targetArchitecture = "i686";
368 stdenv = gccStdenv;
369 }
370 );
371
372 dnf-plugins-core = with python3Packages; toPythonApplication dnf-plugins-core;
373
374 dnf4 = python3Packages.callPackage ../development/python-modules/dnf4/wrapper.nix { };
375
376 ebpf-verifier = callPackage ../tools/networking/ebpf-verifier {
377 catch2 = catch2_3;
378 };
379
380 eff = callPackage ../by-name/ef/eff/package.nix { ocamlPackages = ocaml-ng.ocamlPackages_5_2; };
381
382 enochecker-test = with python3Packages; callPackage ../development/tools/enochecker-test { };
383
384 inherit (gridlock) nyarr;
385
386 inspec = callPackage ../tools/misc/inspec { };
387
388 lshw-gui = lshw.override { withGUI = true; };
389
390 kdePackages = callPackage ../kde { };
391
392 buildcatrust = with python3.pkgs; toPythonApplication buildcatrust;
393
394 mumps-mpi = callPackage ../by-name/mu/mumps/package.nix { mpiSupport = true; };
395
396 protoc-gen-grpc-web = callPackage ../development/tools/protoc-gen-grpc-web {
397 protobuf = protobuf_21;
398 };
399
400 vcpkg-tool = callPackage ../by-name/vc/vcpkg-tool/package.nix {
401 fmt = fmt_11;
402 };
403
404 r3ctl = qt5.callPackage ../tools/misc/r3ctl { };
405
406 deviceTree = callPackage ../os-specific/linux/device-tree { };
407
408 octodns-providers = octodns.providers;
409
410 oletools = with python3.pkgs; toPythonApplication oletools;
411
412 ollama-rocm = callPackage ../by-name/ol/ollama/package.nix { acceleration = "rocm"; };
413 ollama-cuda = callPackage ../by-name/ol/ollama/package.nix { acceleration = "cuda"; };
414
415 device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix { };
416
417 diffPlugins = (callPackage ../build-support/plugins.nix { }).diffPlugins;
418
419 dieHook = makeSetupHook {
420 name = "die-hook";
421 } ../build-support/setup-hooks/die.sh;
422
423 digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox {
424 autoreconfHook = buildPackages.autoreconfHook269;
425 };
426
427 devShellTools = callPackage ../build-support/dev-shell-tools { };
428
429 dockerTools = callPackage ../build-support/docker {
430 writePython3 = buildPackages.writers.writePython3;
431 };
432
433 tarsum = callPackage ../build-support/docker/tarsum.nix { };
434
435 nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { };
436
437 docker-sync = callPackage ../tools/misc/docker-sync { };
438
439 # Dotnet
440
441 dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet { });
442
443 dotnet-sdk_6 = dotnetCorePackages.sdk_6_0-bin;
444 dotnet-sdk_7 = dotnetCorePackages.sdk_7_0-bin;
445 dotnet-sdk_8 = dotnetCorePackages.sdk_8_0;
446 dotnet-sdk_9 = dotnetCorePackages.sdk_9_0;
447 dotnet-sdk_10 = dotnetCorePackages.sdk_10_0;
448
449 dotnet-runtime_6 = dotnetCorePackages.runtime_6_0-bin;
450 dotnet-runtime_7 = dotnetCorePackages.runtime_7_0-bin;
451 dotnet-runtime_8 = dotnetCorePackages.runtime_8_0;
452 dotnet-runtime_9 = dotnetCorePackages.runtime_9_0;
453 dotnet-runtime_10 = dotnetCorePackages.runtime_10_0;
454
455 dotnet-aspnetcore_6 = dotnetCorePackages.aspnetcore_6_0-bin;
456 dotnet-aspnetcore_7 = dotnetCorePackages.aspnetcore_7_0-bin;
457 dotnet-aspnetcore_8 = dotnetCorePackages.aspnetcore_8_0;
458 dotnet-aspnetcore_9 = dotnetCorePackages.aspnetcore_9_0;
459 dotnet-aspnetcore_10 = dotnetCorePackages.aspnetcore_10_0;
460
461 dotnet-sdk = dotnetCorePackages.sdk_8_0;
462 dotnet-runtime = dotnetCorePackages.runtime_8_0;
463 dotnet-aspnetcore = dotnetCorePackages.aspnetcore_8_0;
464
465 inherit (dotnetCorePackages)
466 buildDotnetModule
467 buildDotnetGlobalTool
468 mkNugetSource
469 mkNugetDeps
470 autoPatchcilHook
471 ;
472
473 buildDotnetPackage = callPackage ../build-support/dotnet/build-dotnet-package { };
474 fetchNuGet = callPackage ../build-support/dotnet/fetchnuget { };
475 dupeguru = callPackage ../applications/misc/dupeguru {
476 python3Packages = python311Packages;
477 };
478
479 fetchbower = callPackage ../build-support/fetchbower { };
480
481 fetchbzr = callPackage ../build-support/fetchbzr { };
482
483 fetchcvs =
484 if
485 stdenv.buildPlatform != stdenv.hostPlatform
486 # hack around splicing being crummy with things that (correctly) don't eval.
487 then
488 buildPackages.fetchcvs
489 else
490 callPackage ../build-support/fetchcvs { };
491
492 fetchdarcs = callPackage ../build-support/fetchdarcs { };
493
494 fetchdocker = callPackage ../build-support/fetchdocker { };
495
496 fetchDockerConfig = callPackage ../build-support/fetchdocker/fetchDockerConfig.nix { };
497
498 fetchDockerLayer = callPackage ../build-support/fetchdocker/fetchDockerLayer.nix { };
499
500 fetchfossil = callPackage ../build-support/fetchfossil { };
501
502 fetchgit =
503 (callPackage ../build-support/fetchgit {
504 git = buildPackages.gitMinimal;
505 cacert = buildPackages.cacert;
506 git-lfs = buildPackages.git-lfs;
507 })
508 // {
509 # fetchgit is a function, so we use // instead of passthru.
510 tests = pkgs.tests.fetchgit;
511 };
512
513 fetchgitLocal = callPackage ../build-support/fetchgitlocal { };
514
515 fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or { });
516
517 fetchMavenArtifact = callPackage ../build-support/fetchmavenartifact { };
518
519 fetchpijul = callPackage ../build-support/fetchpijul { };
520
521 inherit (callPackages ../build-support/node/fetch-yarn-deps { })
522 fixup-yarn-lock
523 prefetch-yarn-deps
524 yarnConfigHook
525 yarnBuildHook
526 yarnInstallHook
527 fetchYarnDeps
528 ;
529
530 prefer-remote-fetch = import ../build-support/prefer-remote-fetch;
531
532 pe-bear = libsForQt5.callPackage ../applications/misc/pe-bear { };
533
534 magika = with python3Packages; toPythonApplication magika;
535
536 mysql-shell = mysql-shell_8;
537
538 inherit
539 ({
540 mysql-shell_8 = callPackage ../development/tools/mysql-shell/8.nix {
541 antlr = antlr4_10;
542 icu = icu73;
543 protobuf = protobuf_25;
544 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_18.stdenv else stdenv;
545 };
546 })
547 mysql-shell_8
548 ;
549
550 mysql-shell-innovation = callPackage ../development/tools/mysql-shell/innovation.nix {
551 antlr = antlr4_10;
552 icu = icu73;
553 protobuf = protobuf_25;
554 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_18.stdenv else stdenv;
555 };
556
557 # this is used by most `fetch*` functions
558 repoRevToNameMaybe = lib.repoRevToName config.fetchedSourceNameDefault;
559
560 fetchpatch =
561 callPackage ../build-support/fetchpatch {
562 # 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154
563 patchutils = __splicedPackages.patchutils_0_3_3;
564 }
565 // {
566 tests = pkgs.tests.fetchpatch;
567 version = 1;
568 };
569
570 fetchpatch2 =
571 callPackage ../build-support/fetchpatch {
572 patchutils = __splicedPackages.patchutils_0_4_2;
573 }
574 // {
575 tests = pkgs.tests.fetchpatch2;
576 version = 2;
577 };
578
579 fetchs3 = callPackage ../build-support/fetchs3 { };
580
581 fetchtorrent = callPackage ../build-support/fetchtorrent { };
582
583 fetchsvn =
584 if
585 stdenv.buildPlatform != stdenv.hostPlatform
586 # hack around splicing being crummy with things that (correctly) don't eval.
587 then
588 buildPackages.fetchsvn
589 else
590 callPackage ../build-support/fetchsvn { };
591
592 fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion;
593
594 fetchsvnssh = callPackage ../build-support/fetchsvnssh { };
595
596 fetchhg = callPackage ../build-support/fetchhg { };
597
598 fetchFirefoxAddon = callPackage ../build-support/fetchfirefoxaddon { } // {
599 tests = pkgs.tests.fetchFirefoxAddon;
600 };
601
602 fetchNextcloudApp = callPackage ../build-support/fetchnextcloudapp { };
603
604 # `fetchurl' downloads a file from the network.
605 fetchurl =
606 if stdenv.buildPlatform != stdenv.hostPlatform then
607 buildPackages.fetchurl # No need to do special overrides twice,
608 else
609 makeOverridable (import ../build-support/fetchurl) {
610 inherit lib stdenvNoCC buildPackages;
611 inherit cacert;
612 inherit (config) rewriteURL;
613 curl = buildPackages.curlMinimal.override (old: rec {
614 # break dependency cycles
615 fetchurl = stdenv.fetchurlBoot;
616 zlib = buildPackages.zlib.override { fetchurl = stdenv.fetchurlBoot; };
617 pkg-config = buildPackages.pkg-config.override (old: {
618 pkg-config = old.pkg-config.override {
619 fetchurl = stdenv.fetchurlBoot;
620 };
621 });
622 perl = buildPackages.perl.override {
623 inherit zlib;
624 fetchurl = stdenv.fetchurlBoot;
625 };
626 openssl = buildPackages.openssl.override {
627 fetchurl = stdenv.fetchurlBoot;
628 buildPackages = {
629 coreutils = buildPackages.coreutils.override {
630 fetchurl = stdenv.fetchurlBoot;
631 inherit perl;
632 xz = buildPackages.xz.override { fetchurl = stdenv.fetchurlBoot; };
633 gmpSupport = false;
634 aclSupport = false;
635 attrSupport = false;
636 };
637 inherit perl;
638 };
639 inherit perl;
640 };
641 libssh2 = buildPackages.libssh2.override {
642 fetchurl = stdenv.fetchurlBoot;
643 inherit zlib openssl;
644 };
645 # On darwin, libkrb5 needs bootstrap_cmds which would require
646 # converting many packages to fetchurl_boot to avoid evaluation cycles.
647 # So turn gssSupport off there, and on Windows.
648 # On other platforms, keep the previous value.
649 gssSupport =
650 if stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWindows then
651 false
652 else
653 old.gssSupport or true; # `? true` is the default
654 libkrb5 = buildPackages.krb5.override {
655 fetchurl = stdenv.fetchurlBoot;
656 inherit pkg-config perl openssl;
657 withLibedit = false;
658 byacc = buildPackages.byacc.override { fetchurl = stdenv.fetchurlBoot; };
659 keyutils = buildPackages.keyutils.override { fetchurl = stdenv.fetchurlBoot; };
660 };
661 nghttp2 = buildPackages.nghttp2.override {
662 fetchurl = stdenv.fetchurlBoot;
663 inherit pkg-config;
664 enableApp = false; # curl just needs libnghttp2
665 enableTests = false; # avoids bringing `cunit` and `tzdata` into scope
666 };
667 });
668 };
669
670 fetchRepoProject = callPackage ../build-support/fetchrepoproject { };
671
672 fetchipfs = callPackage ../build-support/fetchipfs { };
673
674 fetchzip = callPackage ../build-support/fetchzip { } // {
675 tests = pkgs.tests.fetchzip;
676 };
677
678 fetchDebianPatch = callPackage ../build-support/fetchdebianpatch { } // {
679 tests = pkgs.tests.fetchDebianPatch;
680 };
681
682 fetchCrate = callPackage ../build-support/rust/fetchcrate.nix { };
683
684 fetchFromGitea = callPackage ../build-support/fetchgitea { };
685
686 fetchFromGitHub = callPackage ../build-support/fetchgithub { };
687
688 fetchFromBitbucket = callPackage ../build-support/fetchbitbucket { };
689
690 fetchFromSavannah = callPackage ../build-support/fetchsavannah { };
691
692 fetchFromSourcehut = callPackage ../build-support/fetchsourcehut { };
693
694 fetchFromGitLab = callPackage ../build-support/fetchgitlab { };
695
696 fetchFromGitiles = callPackage ../build-support/fetchgitiles { };
697
698 fetchFrom9Front = callPackage ../build-support/fetch9front { };
699
700 fetchFromRepoOrCz = callPackage ../build-support/fetchrepoorcz { };
701
702 fetchgx = callPackage ../build-support/fetchgx { };
703
704 fetchPypi = callPackage ../build-support/fetchpypi { };
705
706 fetchPypiLegacy = callPackage ../build-support/fetchpypilegacy { };
707
708 resolveMirrorURLs =
709 { url }:
710 fetchurl {
711 showURLs = true;
712 inherit url;
713 };
714
715 ld-is-cc-hook = makeSetupHook {
716 name = "ld-is-cc-hook";
717 } ../build-support/setup-hooks/ld-is-cc-hook.sh;
718
719 copyDesktopItems = makeSetupHook {
720 name = "copy-desktop-items-hook";
721 } ../build-support/setup-hooks/copy-desktop-items.sh;
722
723 makeDesktopItem = callPackage ../build-support/make-desktopitem { };
724
725 copyPkgconfigItems = makeSetupHook {
726 name = "copy-pkg-config-items-hook";
727 } ../build-support/setup-hooks/copy-pkgconfig-items.sh;
728
729 makePkgconfigItem = callPackage ../build-support/make-pkgconfigitem { };
730
731 makeDarwinBundle = callPackage ../build-support/make-darwin-bundle { };
732
733 makeAutostartItem = callPackage ../build-support/make-startupitem { };
734
735 makeImpureTest = callPackage ../build-support/make-impure-test.nix;
736
737 makeInitrd = callPackage ../build-support/kernel/make-initrd.nix; # Args intentionally left out
738
739 makeInitrdNG = callPackage ../build-support/kernel/make-initrd-ng.nix;
740 makeInitrdNGTool = callPackage ../build-support/kernel/make-initrd-ng-tool.nix { };
741
742 makeWrapper = makeShellWrapper;
743
744 makeShellWrapper = makeSetupHook {
745 name = "make-shell-wrapper-hook";
746 propagatedBuildInputs = [ dieHook ];
747 substitutions = {
748 # targetPackages.runtimeShell only exists when pkgs == targetPackages (when targetPackages is not __raw)
749 shell =
750 if targetPackages ? runtimeShell then
751 targetPackages.runtimeShell
752 else
753 throw "makeWrapper/makeShellWrapper must be in nativeBuildInputs";
754 };
755 passthru = {
756 tests = tests.makeWrapper;
757 };
758 } ../build-support/setup-hooks/make-wrapper.sh;
759
760 compressFirmwareXz = callPackage ../build-support/kernel/compress-firmware.nix { type = "xz"; };
761
762 compressFirmwareZstd = callPackage ../build-support/kernel/compress-firmware.nix { type = "zstd"; };
763
764 makeModulesClosure =
765 {
766 kernel,
767 firmware,
768 rootModules,
769 allowMissing ? false,
770 extraFirmwarePaths ? [ ],
771 }:
772 callPackage ../build-support/kernel/modules-closure.nix {
773 inherit
774 kernel
775 firmware
776 rootModules
777 allowMissing
778 extraFirmwarePaths
779 ;
780 };
781
782 mkBinaryCache = callPackage ../build-support/binary-cache { };
783
784 mkShell = callPackage ../build-support/mkshell { };
785 mkShellNoCC = mkShell.override { stdenv = stdenvNoCC; };
786
787 mpsolve = libsForQt5.callPackage ../applications/science/math/mpsolve { };
788
789 nixBufferBuilders = import ../applications/editors/emacs/build-support/buffer.nix {
790 inherit lib writeText;
791 inherit (emacs.pkgs) inherit-local;
792 };
793
794 nix-gitignore = callPackage ../build-support/nix-gitignore { };
795
796 ociTools = callPackage ../build-support/oci-tools { };
797
798 inherit (callPackages ../build-support/setup-hooks/patch-rc-path-hooks { })
799 patchRcPathBash
800 patchRcPathCsh
801 patchRcPathFish
802 patchRcPathPosix
803 ;
804
805 pruneLibtoolFiles = makeSetupHook {
806 name = "prune-libtool-files";
807 } ../build-support/setup-hooks/prune-libtool-files.sh;
808
809 closureInfo = callPackage ../build-support/closure-info.nix { };
810
811 serverspec = callPackage ../tools/misc/serverspec { };
812
813 setupSystemdUnits = callPackage ../build-support/setup-systemd-units.nix { };
814
815 shortenPerlShebang = makeSetupHook {
816 name = "shorten-perl-shebang-hook";
817 propagatedBuildInputs = [ dieHook ];
818 } ../build-support/setup-hooks/shorten-perl-shebang.sh;
819
820 sile = callPackage ../by-name/si/sile/package.nix {
821 lua = luajit;
822 };
823
824 singularity-tools = callPackage ../build-support/singularity-tools { };
825
826 srcOnly = callPackage ../build-support/src-only { };
827
828 substitute = callPackage ../build-support/substitute/substitute.nix { };
829
830 replaceDependencies = callPackage ../build-support/replace-dependencies.nix { };
831
832 replaceDependency =
833 {
834 drv,
835 oldDependency,
836 newDependency,
837 verbose ? true,
838 }:
839 replaceDependencies {
840 inherit drv verbose;
841 replacements = [
842 {
843 inherit oldDependency newDependency;
844 }
845 ];
846 # When newDependency depends on drv, instead of causing infinite recursion, keep it as is.
847 cutoffPackages = [ newDependency ];
848 };
849
850 replaceVarsWith = callPackage ../build-support/replace-vars/replace-vars-with.nix { };
851
852 replaceVars = callPackage ../build-support/replace-vars/replace-vars.nix { };
853
854 replaceDirectDependencies = callPackage ../build-support/replace-direct-dependencies.nix { };
855
856 nukeReferences = callPackage ../build-support/nuke-references {
857 inherit (darwin) signingUtils;
858 };
859
860 referencesByPopularity = callPackage ../build-support/references-by-popularity { };
861
862 dockerMakeLayers = callPackage ../build-support/docker/make-layers.nix { };
863
864 removeReferencesTo = callPackage ../build-support/remove-references-to {
865 inherit (darwin) signingUtils;
866 };
867
868 # No callPackage. In particular, we don't want `img` *package* in parameters.
869 vmTools = makeOverridable (import ../build-support/vm) { inherit pkgs lib; };
870
871 releaseTools = callPackage ../build-support/release { };
872
873 inherit (lib.systems) platforms;
874
875 setJavaClassPath = makeSetupHook {
876 name = "set-java-classpath-hook";
877 } ../build-support/setup-hooks/set-java-classpath.sh;
878
879 fixDarwinDylibNames = callPackage (
880 {
881 lib,
882 targetPackages,
883 makeSetupHook,
884 }:
885 makeSetupHook {
886 name = "fix-darwin-dylib-names-hook";
887 substitutions = { inherit (targetPackages.stdenv.cc) targetPrefix; };
888 meta.platforms = lib.platforms.darwin;
889 } ../build-support/setup-hooks/fix-darwin-dylib-names.sh
890 ) { };
891
892 writeDarwinBundle = callPackage ../build-support/make-darwin-bundle/write-darwin-bundle.nix { };
893
894 desktopToDarwinBundle = makeSetupHook {
895 name = "desktop-to-darwin-bundle-hook";
896 propagatedBuildInputs = [
897 writeDarwinBundle
898 librsvg
899 imagemagick
900 (onlyBin python3Packages.icnsutil)
901 ];
902 } ../build-support/setup-hooks/desktop-to-darwin-bundle.sh;
903
904 keepBuildTree = makeSetupHook {
905 name = "keep-build-tree-hook";
906 } ../build-support/setup-hooks/keep-build-tree.sh;
907
908 moveBuildTree = makeSetupHook {
909 name = "move-build-tree-hook";
910 } ../build-support/setup-hooks/move-build-tree.sh;
911
912 enableGCOVInstrumentation = makeSetupHook {
913 name = "enable-gcov-instrumentation-hook";
914 } ../build-support/setup-hooks/enable-coverage-instrumentation.sh;
915
916 makeGCOVReport = makeSetupHook {
917 name = "make-gcov-report-hook";
918 propagatedBuildInputs = [
919 lcov
920 enableGCOVInstrumentation
921 ];
922 } ../build-support/setup-hooks/make-coverage-analysis-report.sh;
923
924 makeHardcodeGsettingsPatch = callPackage ../build-support/make-hardcode-gsettings-patch { };
925
926 # intended to be used like nix-build -E 'with import <nixpkgs> { }; enableDebugging fooPackage'
927 enableDebugging = pkg: pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; };
928
929 findXMLCatalogs = makeSetupHook {
930 name = "find-xml-catalogs-hook";
931 } ../build-support/setup-hooks/find-xml-catalogs.sh;
932
933 wrapGAppsHook3 = wrapGAppsNoGuiHook.override {
934 isGraphical = true;
935 };
936
937 wrapGAppsHook4 = wrapGAppsNoGuiHook.override {
938 isGraphical = true;
939 gtk3 = __splicedPackages.gtk4;
940 };
941
942 wrapGAppsNoGuiHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook {
943 makeWrapper = makeBinaryWrapper;
944 };
945
946 separateDebugInfo = makeSetupHook {
947 name = "separate-debug-info-hook";
948 } ../build-support/setup-hooks/separate-debug-info.sh;
949
950 setupDebugInfoDirs = makeSetupHook {
951 name = "setup-debug-info-dirs-hook";
952 } ../build-support/setup-hooks/setup-debug-info-dirs.sh;
953
954 writableTmpDirAsHomeHook = callPackage (
955 { makeSetupHook }:
956 makeSetupHook {
957 name = "writable-tmpdir-as-home-hook";
958 } ../build-support/setup-hooks/writable-tmpdir-as-home.sh
959 ) { };
960
961 useOldCXXAbi = makeSetupHook {
962 name = "use-old-cxx-abi-hook";
963 } ../build-support/setup-hooks/use-old-cxx-abi.sh;
964
965 validatePkgConfig = makeSetupHook {
966 name = "validate-pkg-config";
967 propagatedBuildInputs = [
968 findutils
969 pkg-config
970 ];
971 } ../build-support/setup-hooks/validate-pkg-config.sh;
972
973 #package writers
974 writers = callPackage ../build-support/writers { };
975
976 # lib functions depending on pkgs
977 inherit
978 (import ../pkgs-lib {
979 # The `lib` variable in this scope doesn't include any applied lib overlays,
980 # `pkgs.lib` does.
981 inherit (pkgs) lib;
982 inherit pkgs;
983 })
984 formats
985 ;
986
987 testers = callPackage ../build-support/testers { };
988
989 ### TOOLS
990
991 _3llo = callPackage ../tools/misc/3llo { };
992
993 _7zz-rar = _7zz.override { enableUnfree = true; };
994
995 acquire = with python3Packages; toPythonApplication acquire;
996
997 actdiag = with python3.pkgs; toPythonApplication actdiag;
998
999 opnplug = adlplug.override { type = "OPN"; };
1000
1001 akkoma = callPackage ../by-name/ak/akkoma/package.nix {
1002 beamPackages = beam_minimal.packages.erlang_26.extend (
1003 self: super: {
1004 elixir = self.elixir_1_16;
1005 rebar3 = self.rebar3WithPlugins {
1006 plugins = with self; [ pc ];
1007 };
1008 }
1009 );
1010 };
1011
1012 akkoma-admin-fe = callPackage ../by-name/ak/akkoma-admin-fe/package.nix {
1013 python3 = python311;
1014 };
1015
1016 aegisub = callPackage ../by-name/ae/aegisub/package.nix (
1017 {
1018 luajit = luajit.override { enable52Compat = true; };
1019 }
1020 // (config.aegisub or { })
1021 );
1022
1023 acme-client = callPackage ../tools/networking/acme-client {
1024 stdenv = gccStdenv;
1025 };
1026
1027 aflplusplus = callPackage ../tools/security/aflplusplus { wine = null; };
1028
1029 libdislocator = callPackage ../tools/security/aflplusplus/libdislocator.nix { };
1030
1031 aioblescan = with python3Packages; toPythonApplication aioblescan;
1032
1033 inherit (recurseIntoAttrs (callPackage ../tools/package-management/akku { }))
1034 akku
1035 akkuPackages
1036 ;
1037
1038 alice-tools = callPackage ../tools/games/alice-tools {
1039 withGUI = false;
1040 };
1041
1042 alice-tools-qt5 = libsForQt5.callPackage ../tools/games/alice-tools { };
1043
1044 alice-tools-qt6 = qt6Packages.callPackage ../tools/games/alice-tools { };
1045
1046 auditwheel = with python3Packages; toPythonApplication auditwheel;
1047
1048 davinci-resolve-studio = callPackage ../by-name/da/davinci-resolve/package.nix {
1049 studioVariant = true;
1050 };
1051
1052 dehinter = with python3Packages; toPythonApplication dehinter;
1053
1054 gamemode = callPackage ../tools/games/gamemode {
1055 libgamemode32 = pkgsi686Linux.gamemode.lib;
1056 };
1057
1058 gamescope = callPackage ../by-name/ga/gamescope/package.nix {
1059 enableExecutable = true;
1060 enableWsi = false;
1061
1062 wlroots = wlroots_0_17;
1063 };
1064
1065 gamescope-wsi = callPackage ../by-name/ga/gamescope/package.nix {
1066 enableExecutable = false;
1067 enableWsi = true;
1068
1069 wlroots = wlroots_0_17;
1070 };
1071
1072 font-v = with python3Packages; toPythonApplication font-v;
1073
1074 fontbakery = with python3Packages; toPythonApplication fontbakery;
1075
1076 genealogos-api = genealogos-cli.override {
1077 crate = "api";
1078 };
1079
1080 # This is to workaround gfal2-python broken against Python 3.12 or later.
1081 # TODO: Remove these lines after solving the breakage.
1082 gfal2-util = callPackage ../by-name/gf/gfal2-util/package.nix (
1083 lib.optionalAttrs python3Packages.gfal2-python.meta.broken {
1084 python3Packages = python311Packages;
1085 }
1086 );
1087
1088 gp-saml-gui = python3Packages.callPackage ../tools/networking/gp-saml-gui { };
1089
1090 inherit (callPackages ../tools/networking/ivpn/default.nix { })
1091 ivpn
1092 ivpn-service
1093 ;
1094
1095 kanata-with-cmd = kanata.override { withCmd = true; };
1096
1097 linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
1098
1099 makehuman = libsForQt5.callPackage ../applications/misc/makehuman { };
1100
1101 mcaselector = callPackage ../tools/games/minecraft/mcaselector {
1102 jre = jre.override {
1103 enableJavaFX = true;
1104 };
1105 };
1106
1107 mkosi = python3Packages.callPackage ../tools/virtualization/mkosi { inherit systemd; };
1108
1109 mkosi-full = mkosi.override { withQemu = true; };
1110
1111 mpremote = python3Packages.callPackage ../tools/misc/mpremote { };
1112
1113 mpy-utils = python3Packages.callPackage ../tools/misc/mpy-utils { };
1114
1115 networkd-notify = python3Packages.callPackage ../tools/networking/networkd-notify {
1116 systemd = pkgs.systemd;
1117 };
1118
1119 ocs-url = libsForQt5.callPackage ../tools/misc/ocs-url { };
1120
1121 openbugs = pkgsi686Linux.callPackage ../applications/science/machine-learning/openbugs { };
1122
1123 openusd = python3Packages.openusd.override {
1124 withTools = true;
1125 withUsdView = true;
1126 };
1127
1128 pricehist = python3Packages.callPackage ../tools/misc/pricehist { };
1129
1130 py7zr = with python3Packages; toPythonApplication py7zr;
1131
1132 qFlipper = libsForQt5.callPackage ../tools/misc/qflipper { };
1133
1134 inherit (callPackage ../development/libraries/sdbus-cpp { }) sdbus-cpp sdbus-cpp_2;
1135
1136 sdkmanager = with python3Packages; toPythonApplication sdkmanager;
1137
1138 shaperglot = with python3Packages; toPythonApplication shaperglot;
1139
1140 slipstream = callPackage ../tools/games/slipstream {
1141 jdk = jdk8;
1142 };
1143
1144 supermin = callPackage ../tools/virtualization/supermin {
1145 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
1146 };
1147
1148 ufolint = with python3Packages; toPythonApplication ufolint;
1149
1150 veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { };
1151
1152 ventoy-full = ventoy.override {
1153 withCryptsetup = true;
1154 withXfs = true;
1155 withExt4 = true;
1156 withNtfs = true;
1157 };
1158
1159 ventoy-full-gtk = ventoy-full.override {
1160 defaultGuiType = "gtk3";
1161 };
1162
1163 ventoy-full-qt = ventoy-full.override {
1164 defaultGuiType = "qt5";
1165 };
1166
1167 vprof = with python3Packages; toPythonApplication vprof;
1168
1169 winbox = winbox3;
1170 winbox3 = callPackage ../tools/admin/winbox {
1171 wine = wineWowPackages.stable;
1172 };
1173
1174 x2t = callPackage ../by-name/x2/x2t/package.nix {
1175 openssl = openssl.override {
1176 enableMD2 = true;
1177 static = true;
1178 };
1179 };
1180
1181 yabridge = callPackage ../tools/audio/yabridge {
1182 wine = wineWowPackages.yabridge;
1183 };
1184
1185 yabridgectl = callPackage ../tools/audio/yabridgectl {
1186 wine = wineWowPackages.yabridge;
1187 };
1188
1189 yafetch = callPackage ../tools/misc/yafetch {
1190 stdenv = clangStdenv;
1191 };
1192
1193 ### APPLICATIONS/VERSION-MANAGEMENT
1194
1195 git = callPackage ../applications/version-management/git {
1196 perlLibs = [
1197 perlPackages.LWP
1198 perlPackages.URI
1199 perlPackages.TermReadKey
1200 ];
1201 smtpPerlLibs = [
1202 perlPackages.libnet
1203 perlPackages.NetSMTPSSL
1204 perlPackages.IOSocketSSL
1205 perlPackages.NetSSLeay
1206 perlPackages.AuthenSASL
1207 perlPackages.DigestHMAC
1208 ];
1209 };
1210
1211 # The full-featured Git.
1212 gitFull = git.override {
1213 svnSupport = true;
1214 guiSupport = true;
1215 sendEmailSupport = true;
1216 withSsh = true;
1217 withLibsecret = !stdenv.hostPlatform.isDarwin;
1218 };
1219
1220 # Git with SVN support, but without GUI.
1221 gitSVN = lowPrio (git.override { svnSupport = true; });
1222
1223 git-doc = lib.addMetaAttrs {
1224 description = "Additional documentation for Git";
1225 longDescription = ''
1226 This package contains additional documentation (HTML and text files) that
1227 is referenced in the man pages of Git.
1228 '';
1229 } gitFull.doc;
1230
1231 gitMinimal = git.override {
1232 withManual = false;
1233 osxkeychainSupport = false;
1234 pythonSupport = false;
1235 perlSupport = false;
1236 withpcre2 = false;
1237 };
1238
1239 bump2version = with python3Packages; toPythonApplication bump2version;
1240
1241 cgit = callPackage ../applications/version-management/cgit { };
1242
1243 cgit-pink = callPackage ../applications/version-management/cgit/pink.nix { };
1244
1245 commitlint = nodePackages."@commitlint/cli";
1246
1247 datalad = with python3Packages; toPythonApplication datalad;
1248
1249 datalad-gooey = with python3Packages; toPythonApplication datalad-gooey;
1250
1251 forgejo-lts = callPackage ../by-name/fo/forgejo/lts.nix { };
1252
1253 gita = python3Packages.callPackage ../applications/version-management/gita { };
1254
1255 github-cli = gh;
1256
1257 git-annex-metadata-gui =
1258 libsForQt5.callPackage ../applications/version-management/git-annex-metadata-gui
1259 {
1260 inherit (python3Packages) buildPythonApplication pyqt5 git-annex-adapter;
1261 };
1262
1263 git-annex-remote-dbx = callPackage ../applications/version-management/git-annex-remote-dbx {
1264 inherit (python3Packages)
1265 buildPythonApplication
1266 dropbox
1267 annexremote
1268 humanfriendly
1269 ;
1270 };
1271
1272 git-annex-remote-googledrive =
1273 python3Packages.callPackage ../applications/version-management/git-annex-remote-googledrive
1274 { };
1275
1276 git-archive-all = python3.pkgs.callPackage ../applications/version-management/git-archive-all { };
1277
1278 git-credential-manager = callPackage ../applications/version-management/git-credential-manager { };
1279
1280 git-imerge = python3Packages.callPackage ../applications/version-management/git-imerge { };
1281
1282 git-publish = python3Packages.callPackage ../applications/version-management/git-publish { };
1283
1284 git-recent = callPackage ../applications/version-management/git-recent {
1285 util-linux = if stdenv.hostPlatform.isLinux then util-linuxMinimal else util-linux;
1286 };
1287
1288 gitRepo = git-repo;
1289 git-repo-updater =
1290 python3Packages.callPackage ../applications/version-management/git-repo-updater
1291 { };
1292
1293 git-review = python3Packages.callPackage ../applications/version-management/git-review { };
1294
1295 gittyup = libsForQt5.callPackage ../applications/version-management/gittyup { };
1296
1297 merge-fmt = callPackage ../applications/version-management/merge-fmt {
1298 inherit (ocamlPackages)
1299 buildDunePackage
1300 cmdliner
1301 base
1302 stdio
1303 ;
1304 };
1305
1306 pass-git-helper =
1307 python3Packages.callPackage ../applications/version-management/pass-git-helper
1308 { };
1309
1310 qgit = qt5.callPackage ../applications/version-management/qgit { };
1311
1312 silver-platter = python3Packages.callPackage ../applications/version-management/silver-platter { };
1313
1314 svn-all-fast-export =
1315 libsForQt5.callPackage ../applications/version-management/svn-all-fast-export
1316 { };
1317
1318 svn2git = callPackage ../applications/version-management/svn2git {
1319 git = gitSVN;
1320 };
1321
1322 inherit (haskellPackages) git-annex;
1323
1324 inherit (haskellPackages) git-brunch;
1325
1326 git-autofixup = perlPackages.GitAutofixup;
1327
1328 ghrepo-stats = with python3Packages; toPythonApplication ghrepo-stats;
1329
1330 git-filter-repo = with python3Packages; toPythonApplication git-filter-repo;
1331
1332 git-revise = with python3Packages; toPythonApplication git-revise;
1333
1334 ### APPLICATIONS/EMULATORS
1335
1336 _86Box-with-roms = _86Box.override {
1337 unfreeEnableRoms = true;
1338 unfreeEnableDiscord = true;
1339 };
1340
1341 box64 = callPackage ../applications/emulators/box64 {
1342 hello-x86_64 = if stdenv.hostPlatform.isx86_64 then hello else pkgsCross.gnu64.hello;
1343 };
1344
1345 box86 =
1346 let
1347 args = {
1348 hello-x86_32 = if stdenv.hostPlatform.isx86_32 then hello else pkgsCross.gnu32.hello;
1349 };
1350 in
1351 if stdenv.hostPlatform.is32bit then
1352 callPackage ../applications/emulators/box86 args
1353 else if stdenv.hostPlatform.isx86_64 then
1354 pkgsCross.gnu32.callPackage ../applications/emulators/box86 args
1355 else if stdenv.hostPlatform.isAarch64 then
1356 pkgsCross.armv7l-hf-multiplatform.callPackage ../applications/emulators/box86 args
1357 else if stdenv.hostPlatform.isRiscV64 then
1358 pkgsCross.riscv32.callPackage ../applications/emulators/box86 args
1359 else
1360 throw "Don't know 32-bit platform for cross from: ${stdenv.hostPlatform.stdenv}";
1361
1362 cdemu-client = callPackage ../applications/emulators/cdemu/client.nix { };
1363
1364 cdemu-daemon = callPackage ../applications/emulators/cdemu/daemon.nix { };
1365
1366 dosbox = callPackage ../applications/emulators/dosbox {
1367 SDL = if stdenv.hostPlatform.isDarwin then SDL else SDL_compat;
1368 };
1369
1370 fceux-qt5 = fceux.override { ___qtVersion = "5"; };
1371 fceux-qt6 = fceux.override { ___qtVersion = "6"; };
1372
1373 firebird-emu = libsForQt5.callPackage ../applications/emulators/firebird-emu { };
1374
1375 fusesoc = python3Packages.callPackage ../tools/package-management/fusesoc { };
1376
1377 gcdemu = callPackage ../applications/emulators/cdemu/gui.nix { };
1378
1379 gensgs = pkgsi686Linux.callPackage ../applications/emulators/gens-gs { };
1380
1381 goldberg-emu = callPackage ../applications/emulators/goldberg-emu {
1382 protobuf = protobuf_21;
1383 };
1384
1385 image-analyzer = callPackage ../applications/emulators/cdemu/analyzer.nix { };
1386
1387 kega-fusion = pkgsi686Linux.callPackage ../applications/emulators/kega-fusion { };
1388
1389 libmirage = callPackage ../applications/emulators/cdemu/libmirage.nix { };
1390
1391 mame = libsForQt5.callPackage ../applications/emulators/mame { };
1392
1393 mame-tools = lib.addMetaAttrs {
1394 description = mame.meta.description + " (tools only)";
1395 } (lib.getOutput "tools" mame);
1396
1397 ppsspp-sdl =
1398 let
1399 argset = {
1400 enableQt = false;
1401 enableVulkan = true;
1402 forceWayland = false;
1403 };
1404 in
1405 ppsspp.override argset;
1406
1407 ppsspp-sdl-wayland =
1408 let
1409 argset = {
1410 enableQt = false;
1411 enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/13845
1412 forceWayland = true;
1413 };
1414 in
1415 ppsspp.override argset;
1416
1417 ppsspp-qt =
1418 let
1419 argset = {
1420 enableQt = true;
1421 enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/11628
1422 forceWayland = false;
1423 };
1424 in
1425 ppsspp.override argset;
1426
1427 punes = libsForQt5.callPackage ../applications/emulators/punes { };
1428
1429 punes-qt6 = qt6Packages.callPackage ../applications/emulators/punes { };
1430
1431 py65 = with python3.pkgs; toPythonApplication py65;
1432
1433 rmg-wayland = callPackage ../by-name/rm/rmg/package.nix {
1434 withWayland = true;
1435 };
1436
1437 shadps4 = callPackage ../by-name/sh/shadps4/package.nix {
1438 # relies on std::sinf & co, which was broken in GCC until GCC 14: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79700
1439 stdenv = gcc14Stdenv;
1440 };
1441
1442 snes9x-gtk = snes9x.override {
1443 withGtk = true;
1444 };
1445
1446 winetricks = callPackage ../applications/emulators/wine/winetricks.nix { };
1447
1448 zsnes = pkgsi686Linux.callPackage ../applications/emulators/zsnes { };
1449 zsnes2 = pkgsi686Linux.callPackage ../applications/emulators/zsnes/2.x.nix { };
1450
1451 ### APPLICATIONS/EMULATORS/RETROARCH
1452
1453 libretro = recurseIntoAttrs (callPackage ../applications/emulators/libretro { });
1454
1455 retroarch = wrapRetroArch { };
1456
1457 # includes only cores for platform with free licenses
1458 retroarch-free = retroarch.withCores (
1459 cores:
1460 lib.filter (
1461 c: (c ? libretroCore) && (lib.meta.availableOn stdenv.hostPlatform c) && (!c.meta.unfree)
1462 ) (lib.attrValues cores)
1463 );
1464
1465 # includes all cores for platform (including ones with non-free licenses)
1466 retroarch-full = retroarch.withCores (
1467 cores:
1468 lib.filter (c: (c ? libretroCore) && (lib.meta.availableOn stdenv.hostPlatform c)) (
1469 lib.attrValues cores
1470 )
1471 );
1472
1473 wrapRetroArch = retroarch-bare.wrapper;
1474
1475 # Aliases kept here because they are easier to use
1476 x16-emulator = x16.emulator;
1477 x16-rom = x16.rom;
1478 x16-run = x16.run;
1479
1480 yabause = libsForQt5.callPackage ../applications/emulators/yabause {
1481 libglut = null;
1482 openal = null;
1483 };
1484
1485 ### APPLICATIONS/FILE-MANAGERS
1486
1487 doublecmd = callPackage ../by-name/do/doublecmd/package.nix {
1488 inherit (libsForQt5) libqtpas wrapQtAppsHook;
1489 };
1490
1491 vifm-full = vifm.override {
1492 mediaSupport = true;
1493 inherit lib udisks2 python3;
1494 };
1495
1496 xfe = callPackage ../by-name/xf/xfe/package.nix {
1497 fox = fox_1_6;
1498 };
1499
1500 johnny-reborn-engine = callPackage ../applications/misc/johnny-reborn { };
1501
1502 johnny-reborn = callPackage ../applications/misc/johnny-reborn/with-data.nix { };
1503
1504 ### APPLICATIONS/TERMINAL-EMULATORS
1505
1506 contour = callPackage ../by-name/co/contour/package.nix {
1507 inherit (darwin) libutil sigtool;
1508 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_17.stdenv else stdenv;
1509 };
1510
1511 cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
1512
1513 kitty = callPackage ../by-name/ki/kitty/package.nix {
1514 inherit (darwin) autoSignDarwinBinariesHook;
1515 };
1516
1517 mlterm-wayland = mlterm.override {
1518 enableX11 = false;
1519 };
1520
1521 rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { };
1522
1523 rxvt-unicode-emoji = rxvt-unicode.override {
1524 rxvt-unicode-unwrapped = rxvt-unicode-unwrapped-emoji;
1525 };
1526
1527 rxvt-unicode-plugins = import ../applications/terminal-emulators/rxvt-unicode-plugins {
1528 inherit callPackage;
1529 };
1530
1531 rxvt-unicode-unwrapped = callPackage ../applications/terminal-emulators/rxvt-unicode { };
1532
1533 rxvt-unicode-unwrapped-emoji = rxvt-unicode-unwrapped.override {
1534 emojiSupport = true;
1535 };
1536
1537 termite = callPackage ../applications/terminal-emulators/termite/wrapper.nix {
1538 termite = termite-unwrapped;
1539 };
1540 termite-unwrapped = callPackage ../applications/terminal-emulators/termite { };
1541
1542 twine = with python3Packages; toPythonApplication twine;
1543
1544 inherit (callPackages ../development/tools/ammonite { })
1545 ammonite_2_12
1546 ammonite_2_13
1547 ammonite_3_3
1548 ;
1549 ammonite = ammonite_3_3;
1550
1551 android-tools = lowPrio (callPackage ../tools/misc/android-tools { });
1552
1553 angie = callPackage ../servers/http/angie {
1554 zlib-ng = zlib-ng.override { withZlibCompat = true; };
1555 withPerl = false;
1556 # We don't use `with` statement here on purpose!
1557 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1558 modules = [
1559 nginxModules.rtmp
1560 nginxModules.dav
1561 nginxModules.moreheaders
1562 ];
1563 };
1564
1565 angieQuic = callPackage ../servers/http/angie {
1566 zlib-ng = zlib-ng.override { withZlibCompat = true; };
1567 withPerl = false;
1568 withQuic = true;
1569 # We don't use `with` statement here on purpose!
1570 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
1571 modules = [
1572 nginxModules.rtmp
1573 nginxModules.dav
1574 nginxModules.moreheaders
1575 ];
1576 # Use latest quictls to allow http3 support
1577 openssl = quictls;
1578 };
1579
1580 angie-console-light = callPackage ../servers/http/angie/console-light.nix { };
1581
1582 apk-tools = callPackage ../tools/package-management/apk-tools {
1583 lua = lua5_3;
1584 };
1585
1586 appimage-run = callPackage ../tools/package-management/appimage-run { };
1587 appimage-run-tests = callPackage ../tools/package-management/appimage-run/test.nix {
1588 appimage-run = appimage-run.override {
1589 appimage-run-tests = null; # break boostrap cycle for passthru.tests
1590 };
1591 };
1592
1593 ArchiSteamFarm = callPackage ../applications/misc/ArchiSteamFarm { };
1594
1595 arduino = arduino-core.override { withGui = true; };
1596
1597 arduino-core = callPackage ../development/embedded/arduino/arduino-core/chrootenv.nix { };
1598 arduino-core-unwrapped = callPackage ../development/embedded/arduino/arduino-core { };
1599
1600 apio = python3Packages.callPackage ../development/embedded/fpga/apio { };
1601
1602 apitrace = libsForQt5.callPackage ../applications/graphics/apitrace { };
1603
1604 arpack-mpi = arpack.override { useMpi = true; };
1605
1606 asymptote = libsForQt5.callPackage ../tools/graphics/asymptote { };
1607
1608 authelia = callPackage ../servers/authelia {
1609 buildGoModule = buildGo124Module;
1610 pnpm = pnpm_10;
1611 };
1612
1613 authentik-outposts = recurseIntoAttrs (callPackages ../by-name/au/authentik/outposts.nix { });
1614
1615 autoflake = with python3.pkgs; toPythonApplication autoflake;
1616
1617 awsume = python3Packages.callPackage ../tools/admin/awsume { };
1618
1619 aws-mfa = python3Packages.callPackage ../tools/admin/aws-mfa { };
1620
1621 azure-cli-extensions = recurseIntoAttrs azure-cli.extensions;
1622
1623 brakeman = callPackage ../development/tools/analysis/brakeman { };
1624
1625 # Derivation's result is not used by nixpkgs. Useful for validation for
1626 # regressions of bootstrapTools on hydra and on ofborg. Example:
1627 # pkgsCross.aarch64-multiplatform.freshBootstrapTools.build
1628 freshBootstrapTools =
1629 if stdenv.hostPlatform.isDarwin then
1630 callPackage ../stdenv/darwin/make-bootstrap-tools.nix {
1631 localSystem = stdenv.buildPlatform;
1632 crossSystem = if stdenv.buildPlatform == stdenv.hostPlatform then null else stdenv.hostPlatform;
1633 }
1634 else if stdenv.hostPlatform.isLinux then
1635 callPackage ../stdenv/linux/make-bootstrap-tools.nix { }
1636 else if stdenv.hostPlatform.isFreeBSD then
1637 callPackage ../stdenv/freebsd/make-bootstrap-tools.nix { }
1638 else
1639 throw "freshBootstrapTools: unknown hostPlatform ${stdenv.hostPlatform.config}";
1640
1641 crystfel = callPackage ../applications/science/physics/crystfel { };
1642
1643 crystfel-headless = callPackage ../applications/science/physics/crystfel { withGui = false; };
1644
1645 amule-daemon = amule.override {
1646 monolithic = false;
1647 enableDaemon = true;
1648 };
1649
1650 amule-gui = amule.override {
1651 monolithic = false;
1652 client = true;
1653 };
1654
1655 amule-web = amule.override {
1656 monolithic = false;
1657 httpServer = true;
1658 };
1659
1660 bashate = python3Packages.callPackage ../development/tools/bashate {
1661 python3Packages = python311Packages;
1662 };
1663
1664 inherit (callPackages ../tools/security/bitwarden-directory-connector { })
1665 bitwarden-directory-connector-cli
1666 bitwarden-directory-connector
1667 ;
1668
1669 bitwarden-menu = python3Packages.callPackage ../applications/misc/bitwarden-menu { };
1670
1671 blocksat-cli = with python3Packages; toPythonApplication blocksat-cli;
1672
1673 bucklespring = bucklespring-x11;
1674 bucklespring-libinput = callPackage ../applications/audio/bucklespring { };
1675 bucklespring-x11 = callPackage ../applications/audio/bucklespring { legacy = true; };
1676
1677 buildbotPackages = recurseIntoAttrs (
1678 callPackage ../development/tools/continuous-integration/buildbot { }
1679 );
1680 inherit (buildbotPackages)
1681 buildbot
1682 buildbot-ui
1683 buildbot-full
1684 buildbot-plugins
1685 buildbot-worker
1686 ;
1687
1688 certipy = with python3Packages; toPythonApplication certipy-ad;
1689
1690 chipsec = callPackage ../tools/security/chipsec {
1691 kernel = null;
1692 withDriver = false;
1693 };
1694
1695 fedora-backgrounds = callPackage ../data/misc/fedora-backgrounds { };
1696
1697 coconut = with python3Packages; toPythonApplication coconut;
1698
1699 coolreader = libsForQt5.callPackage ../applications/misc/coolreader { };
1700
1701 corsair = with python3Packages; toPythonApplication corsair-scan;
1702
1703 inherit (cue) writeCueValidator;
1704
1705 cyclonedx-gomod = callPackage ../tools/security/cyclonedx-gomod {
1706 buildGoModule = buildGo123Module;
1707 };
1708
1709 dazel = python3Packages.callPackage ../development/tools/dazel { };
1710
1711 detect-secrets = with python3Packages; toPythonApplication detect-secrets;
1712
1713 deterministic-host-uname = deterministic-uname.override {
1714 forPlatform = stdenv.targetPlatform; # offset by 1 so it works in nativeBuildInputs
1715 };
1716
1717 dkimpy = with python3Packages; toPythonApplication dkimpy;
1718
1719 esbuild = callPackage ../development/tools/esbuild { };
1720
1721 esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { };
1722
1723 libfx2 = with python3Packages; toPythonApplication fx2;
1724
1725 flirc = libsForQt5.callPackage ../applications/video/flirc {
1726 readline = readline70;
1727 };
1728
1729 foxdot = with python3Packages; toPythonApplication foxdot;
1730
1731 fluffychat-web = fluffychat.override { targetFlutterPlatform = "web"; };
1732
1733 gammaray = qt6Packages.callPackage ../development/tools/gammaray { };
1734
1735 gams = callPackage ../tools/misc/gams (config.gams or { });
1736
1737 gancioPlugins = recurseIntoAttrs (
1738 callPackage ../by-name/ga/gancio/plugins.nix { inherit (gancio) nodejs; }
1739 );
1740
1741 github-changelog-generator = callPackage ../development/tools/github-changelog-generator { };
1742
1743 github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite;
1744
1745 gistyc = with python3Packages; toPythonApplication gistyc;
1746
1747 glances = python3Packages.callPackage ../applications/system/glances { };
1748
1749 glaxnimate = libsForQt5.callPackage ../applications/video/glaxnimate { };
1750
1751 go2tv-lite = go2tv.override { withGui = false; };
1752
1753 guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { };
1754
1755 grc = python3Packages.callPackage ../tools/misc/grc { };
1756
1757 gremlin-console = callPackage ../applications/misc/gremlin-console {
1758 openjdk = openjdk11;
1759 };
1760
1761 gremlin-server = callPackage ../applications/misc/gremlin-server {
1762 openjdk = openjdk11;
1763 };
1764
1765 hinit = haskell.lib.compose.justStaticExecutables haskellPackages.hinit;
1766
1767 hwi = with python3Packages; toPythonApplication hwi;
1768
1769 pass = callPackage ../tools/security/pass { };
1770
1771 pass-nodmenu = callPackage ../tools/security/pass {
1772 dmenuSupport = false;
1773 pass = pass-nodmenu;
1774 };
1775
1776 pass-wayland = callPackage ../tools/security/pass {
1777 waylandSupport = true;
1778 pass = pass-wayland;
1779 };
1780
1781 passExtensions = recurseIntoAttrs pass.extensions;
1782
1783 gopass = callPackage ../tools/security/gopass { };
1784
1785 gopass-hibp = callPackage ../tools/security/gopass/hibp.nix { };
1786
1787 git-credential-gopass = callPackage ../tools/security/gopass/git-credential.nix { };
1788
1789 gopass-summon-provider = callPackage ../tools/security/gopass/summon.nix { };
1790
1791 kerf = kerf_1; # kerf2 is WIP
1792 kerf_1 = callPackage ../development/interpreters/kerf {
1793 stdenv = clangStdenv;
1794 };
1795
1796 kjv = callPackage ../applications/misc/kjv { };
1797
1798 lukesmithxyz-bible-kjv = callPackage ../applications/misc/kjv/lukesmithxyz-kjv.nix { };
1799
1800 plausible = callPackage ../servers/web-apps/plausible {
1801 elixir = elixir_1_17;
1802 beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_17; });
1803 };
1804
1805 reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace { };
1806
1807 xcodeenv = callPackage ../development/mobile/xcodeenv { };
1808
1809 gomobile = callPackage ../development/mobile/gomobile { };
1810
1811 adb-sync = callPackage ../development/mobile/adb-sync {
1812 inherit (androidenv.androidPkgs) platform-tools;
1813 };
1814
1815 androidenv = callPackage ../development/mobile/androidenv { };
1816
1817 androidndkPkgs = androidndkPkgs_26;
1818 androidndkPkgs_21 = (callPackage ../development/androidndk-pkgs { })."21";
1819 androidndkPkgs_23 = (callPackage ../development/androidndk-pkgs { })."23";
1820 androidndkPkgs_24 = (callPackage ../development/androidndk-pkgs { })."24";
1821 androidndkPkgs_25 = (callPackage ../development/androidndk-pkgs { })."25";
1822 androidndkPkgs_26 = (callPackage ../development/androidndk-pkgs { })."26";
1823 androidndkPkgs_27 = (callPackage ../development/androidndk-pkgs { })."27";
1824 androidndkPkgs_28 = (callPackage ../development/androidndk-pkgs { })."28";
1825
1826 androidsdk = androidenv.androidPkgs.androidsdk;
1827
1828 webos = recurseIntoAttrs {
1829 cmake-modules = callPackage ../development/mobile/webos/cmake-modules.nix { };
1830
1831 novacom = callPackage ../development/mobile/webos/novacom.nix { };
1832 novacomd = callPackage ../development/mobile/webos/novacomd.nix { };
1833 };
1834
1835 apprise = with python3Packages; toPythonApplication apprise;
1836
1837 asmrepl = callPackage ../development/interpreters/asmrepl { };
1838
1839 avahi = callPackage ../development/libraries/avahi { };
1840
1841 avahi-compat = callPackage ../development/libraries/avahi {
1842 withLibdnssdCompat = true;
1843 };
1844
1845 axel = callPackage ../tools/networking/axel {
1846 libssl = openssl;
1847 };
1848
1849 babelfish = callPackage ../shells/fish/babelfish.nix { };
1850
1851 bat-extras = recurseIntoAttrs (lib.makeScope newScope (import ../tools/misc/bat-extras));
1852
1853 beauty-line-icon-theme = callPackage ../data/icons/beauty-line-icon-theme {
1854 inherit (plasma5Packages) breeze-icons;
1855 };
1856
1857 beautysh = with python3.pkgs; toPythonApplication beautysh;
1858
1859 inherit (callPackages ../misc/logging/beats/7.x.nix { })
1860 auditbeat7
1861 filebeat7
1862 heartbeat7
1863 metricbeat7
1864 packetbeat7
1865 ;
1866
1867 auditbeat = auditbeat7;
1868 filebeat = filebeat7;
1869 heartbeat = heartbeat7;
1870 metricbeat = metricbeat7;
1871 packetbeat = packetbeat7;
1872
1873 biliass = with python3.pkgs; toPythonApplication biliass;
1874
1875 birdtray = libsForQt5.callPackage ../applications/misc/birdtray { };
1876
1877 charles = charles5;
1878 inherit (callPackages ../applications/networking/charles { })
1879 charles3
1880 charles4
1881 charles5
1882 ;
1883
1884 quaternion-qt6 =
1885 qt6Packages.callPackage ../applications/networking/instant-messengers/quaternion
1886 { };
1887 quaternion = quaternion-qt6;
1888
1889 tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
1890
1891 libtensorflow = python3.pkgs.tensorflow-build.libtensorflow;
1892
1893 libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix { };
1894
1895 behave = with python3Packages; toPythonApplication behave;
1896
1897 blockdiag = with python3Packages; toPythonApplication blockdiag;
1898
1899 boomerang = libsForQt5.callPackage ../development/tools/boomerang { };
1900
1901 bozohttpd-minimal = bozohttpd.override { minimal = true; };
1902
1903 brasero-unwrapped = callPackage ../tools/cd-dvd/brasero { };
1904
1905 brasero = callPackage ../tools/cd-dvd/brasero/wrapper.nix { };
1906
1907 bsh = fetchurl {
1908 url = "http://www.beanshell.org/bsh-2.0b5.jar";
1909 hash = "sha256-YjIZlWOAc1SzvLWs6z3BNlAvAixrDvdDmHqD9m/uWlw=";
1910 };
1911
1912 buildah = callPackage ../development/tools/buildah/wrapper.nix { };
1913 buildah-unwrapped = callPackage ../development/tools/buildah { };
1914
1915 cabal2nix-unwrapped = haskell.lib.compose.justStaticExecutables (
1916 haskellPackages.generateOptparseApplicativeCompletions [ "cabal2nix" ] haskellPackages.cabal2nix
1917 );
1918
1919 cabal2nix = symlinkJoin {
1920 inherit (cabal2nix-unwrapped) name meta;
1921 nativeBuildInputs = [ buildPackages.makeWrapper ];
1922 paths = [ cabal2nix-unwrapped ];
1923 postBuild = ''
1924 wrapProgram $out/bin/cabal2nix \
1925 --prefix PATH ":" "${
1926 lib.makeBinPath [
1927 nix
1928 nix-prefetch-scripts
1929 ]
1930 }"
1931 '';
1932 };
1933
1934 stack2nix =
1935 with haskell.lib;
1936 overrideCabal (justStaticExecutables haskellPackages.stack2nix) (_: {
1937 executableToolDepends = [ makeWrapper ];
1938 postInstall = ''
1939 wrapProgram $out/bin/stack2nix \
1940 --prefix PATH ":" "${git}/bin:${cabal-install}/bin"
1941 '';
1942 });
1943
1944 calamares = libsForQt5.callPackage ../tools/misc/calamares {
1945 boost = boost.override {
1946 enablePython = true;
1947 python = python3;
1948 };
1949 };
1950 calamares-nixos = lowPrio (calamares.override { nixos-extensions = true; });
1951 candle = libsForQt5.callPackage ../applications/misc/candle { };
1952
1953 capstone = callPackage ../development/libraries/capstone { };
1954 capstone_4 = callPackage ../development/libraries/capstone/4.nix { };
1955
1956 cataract = callPackage ../applications/misc/cataract { };
1957 cataract-unstable = callPackage ../applications/misc/cataract/unstable.nix { };
1958
1959 catch2 = callPackage ../development/libraries/catch2 { };
1960
1961 catch2_3 = callPackage ../development/libraries/catch2/3.nix { };
1962
1963 ceres-solver = callPackage ../development/libraries/ceres-solver {
1964 gflags = null; # only required for examples/tests
1965 };
1966
1967 cedille = callPackage ../applications/science/logic/cedille {
1968 inherit (haskellPackages)
1969 alex
1970 happy
1971 Agda
1972 ghcWithPackages
1973 ;
1974 };
1975
1976 clevercsv = with python3Packages; toPythonApplication clevercsv;
1977
1978 cleanit = with python3Packages; toPythonApplication cleanit;
1979
1980 clickgen = with python3Packages; toPythonApplication clickgen;
1981
1982 cloud-init = callPackage ../tools/virtualization/cloud-init { inherit systemd; };
1983
1984 coloredlogs = with python3Packages; toPythonApplication coloredlogs;
1985
1986 czkawka-full = czkawka.wrapper.override {
1987 extraPackages = [ ffmpeg ];
1988 };
1989
1990 commitizen = with python3Packages; toPythonApplication commitizen;
1991
1992 compactor = callPackage ../applications/networking/compactor {
1993 protobuf = protobuf_21;
1994 };
1995
1996 inherit (callPackages ../tools/misc/coreboot-utils { })
1997 msrtool
1998 cbmem
1999 ifdtool
2000 intelmetool
2001 cbfstool
2002 nvramtool
2003 superiotool
2004 ectool
2005 inteltool
2006 amdfwtool
2007 acpidump-all
2008 coreboot-utils
2009 ;
2010
2011 coreboot-configurator = libsForQt5.callPackage ../tools/misc/coreboot-configurator { };
2012
2013 sway-unwrapped = callPackage ../by-name/sw/sway-unwrapped/package.nix {
2014 wlroots = wlroots_0_19;
2015 };
2016
2017 cambrinary = python3Packages.callPackage ../applications/misc/cambrinary { };
2018
2019 cplex = callPackage ../applications/science/math/cplex (config.cplex or { });
2020
2021 cot = with python3Packages; toPythonApplication cot;
2022
2023 crossplane = with python3Packages; toPythonApplication crossplane;
2024
2025 csv2md = with python3Packages; toPythonApplication csv2md;
2026
2027 csvtool = callPackage ../development/ocaml-modules/csv/csvtool.nix { };
2028
2029 dataclass-wizard = with python3Packages; toPythonApplication dataclass-wizard;
2030
2031 datasette = with python3Packages; toPythonApplication datasette;
2032
2033 datovka = libsForQt5.callPackage ../applications/networking/datovka { };
2034
2035 diagrams-builder = callPackage ../tools/graphics/diagrams-builder {
2036 inherit (haskellPackages) ghcWithPackages diagrams-builder;
2037 };
2038
2039 dialogbox = libsForQt5.callPackage ../tools/misc/dialogbox { };
2040
2041 ding = callPackage ../applications/misc/ding {
2042 aspellDicts_de = aspellDicts.de;
2043 aspellDicts_en = aspellDicts.en;
2044 };
2045
2046 discourse = callPackage ../servers/web-apps/discourse { };
2047
2048 discourseAllPlugins = discourse.override {
2049 plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins);
2050 };
2051
2052 disorderfs = callPackage ../tools/filesystems/disorderfs {
2053 asciidoc = asciidoc-full;
2054 };
2055
2056 dino = callPackage ../applications/networking/instant-messengers/dino {
2057 inherit (gst_all_1)
2058 gstreamer
2059 gst-plugins-base
2060 gst-plugins-bad
2061 gst-vaapi
2062 ;
2063 gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
2064 };
2065
2066 dnschef = python3Packages.callPackage ../tools/networking/dnschef { };
2067
2068 inherit (ocamlPackages) dot-merlin-reader;
2069
2070 inherit (ocaml-ng.ocamlPackages_4_10) dune_1;
2071 inherit (ocamlPackages) dune_2 dune_3 dune-release;
2072
2073 dvc = with python3.pkgs; toPythonApplication dvc;
2074
2075 dvc-with-remotes = dvc.override {
2076 enableGoogle = true;
2077 enableAWS = true;
2078 enableAzure = true;
2079 enableSSH = true;
2080 };
2081
2082 easyaudiosync = qt6Packages.callPackage ../applications/audio/easyaudiosync { };
2083
2084 easycrypt = callPackage ../applications/science/logic/easycrypt {
2085 why3 = pkgs.why3.override {
2086 ideSupport = false;
2087 coqPackages = {
2088 coq = null;
2089 flocq = null;
2090 };
2091 };
2092 };
2093
2094 easycrypt-runtest = callPackage ../applications/science/logic/easycrypt/runtest.nix { };
2095
2096 easyocr = with python3.pkgs; toPythonApplication easyocr;
2097
2098 element-web = callPackage ../by-name/el/element-web/package.nix {
2099 conf = config.element-web.conf or { };
2100 };
2101
2102 elm-github-install = callPackage ../tools/package-management/elm-github-install { };
2103
2104 espanso-wayland = espanso.override {
2105 x11Support = false;
2106 waylandSupport = !stdenv.hostPlatform.isDarwin;
2107 };
2108
2109 fast-cli = nodePackages.fast-cli;
2110
2111 ### TOOLS/TYPESETTING/TEX
2112
2113 advi = callPackage ../tools/typesetting/tex/advi {
2114 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
2115 };
2116
2117 dblatexFull = dblatex.override { enableAllFeatures = true; };
2118
2119 latex2mathml = with python3Packages; toPythonApplication latex2mathml;
2120
2121 pgf = pgf2;
2122
2123 tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; };
2124
2125 texFunctions = callPackage ../tools/typesetting/tex/nix pkgs;
2126
2127 # TeX Live; see https://nixos.org/nixpkgs/manual/#sec-language-texlive
2128 texlive = callPackage ../tools/typesetting/tex/texlive { };
2129 inherit (texlive.schemes)
2130 texliveBasic
2131 texliveBookPub
2132 texliveConTeXt
2133 texliveFull
2134 texliveGUST
2135 texliveInfraOnly
2136 texliveMedium
2137 texliveMinimal
2138 texliveSmall
2139 texliveTeTeX
2140 ;
2141 texlivePackages = recurseIntoAttrs (lib.mapAttrs (_: v: v.build) texlive.pkgs);
2142
2143 futhark = haskell.lib.compose.justStaticExecutables haskellPackages.futhark;
2144
2145 qt-video-wlr = libsForQt5.callPackage ../applications/misc/qt-video-wlr { };
2146
2147 g2o = libsForQt5.callPackage ../development/libraries/g2o { };
2148
2149 inherit (go-containerregistry) crane gcrane;
2150
2151 geekbench_4 = callPackage ../tools/misc/geekbench/4.nix { };
2152 geekbench_5 = callPackage ../tools/misc/geekbench/5.nix { };
2153 geekbench_6 = callPackage ../tools/misc/geekbench/6.nix { };
2154 geekbench = geekbench_6;
2155
2156 ghidra = callPackage ../tools/security/ghidra/build.nix {
2157 protobuf = protobuf_21;
2158 };
2159
2160 ghidra-extensions = recurseIntoAttrs (callPackage ../tools/security/ghidra/extensions.nix { });
2161
2162 ghidra-bin = callPackage ../tools/security/ghidra { };
2163
2164 gpg-tui = callPackage ../tools/security/gpg-tui {
2165 inherit (darwin) libresolv;
2166 };
2167
2168 greg = callPackage ../applications/audio/greg {
2169 pythonPackages = python3Packages;
2170 };
2171
2172 hocr-tools = with python3Packages; toPythonApplication hocr-tools;
2173
2174 hopper = qt5.callPackage ../development/tools/analysis/hopper { };
2175
2176 hypr = callPackage ../applications/window-managers/hyprwm/hypr {
2177 cairo = cairo.override { xcbSupport = true; };
2178 };
2179
2180 aquamarine = callPackage ../by-name/aq/aquamarine/package.nix {
2181 stdenv = gcc15Stdenv;
2182 };
2183
2184 hyprcursor = callPackage ../by-name/hy/hyprcursor/package.nix {
2185 stdenv = gcc15Stdenv;
2186 };
2187
2188 hyprgraphics = callPackage ../by-name/hy/hyprgraphics/package.nix {
2189 stdenv = gcc15Stdenv;
2190 };
2191
2192 hypridle = callPackage ../by-name/hy/hypridle/package.nix {
2193 stdenv = gcc15Stdenv;
2194 };
2195
2196 hyprland = callPackage ../by-name/hy/hyprland/package.nix {
2197 stdenv = gcc15Stdenv;
2198 };
2199
2200 hyprland-protocols = callPackage ../by-name/hy/hyprland-protocols/package.nix {
2201 stdenv = gcc15Stdenv;
2202 };
2203
2204 hyprland-qt-support = callPackage ../by-name/hy/hyprland-qt-support/package.nix {
2205 stdenv = gcc15Stdenv;
2206 };
2207
2208 hyprland-qtutils = callPackage ../by-name/hy/hyprland-qtutils/package.nix {
2209 stdenv = gcc15Stdenv;
2210 };
2211
2212 hyprlang = callPackage ../by-name/hy/hyprlang/package.nix {
2213 stdenv = gcc15Stdenv;
2214 };
2215
2216 hyprlock = callPackage ../by-name/hy/hyprlock/package.nix {
2217 stdenv = gcc15Stdenv;
2218 };
2219
2220 hyprpaper = callPackage ../by-name/hy/hyprpaper/package.nix {
2221 stdenv = gcc15Stdenv;
2222 };
2223
2224 hyprpicker = callPackage ../by-name/hy/hyprpicker/package.nix {
2225 stdenv = gcc15Stdenv;
2226 };
2227
2228 hyprpolkitagent = callPackage ../by-name/hy/hyprpolkitagent/package.nix {
2229 stdenv = gcc15Stdenv;
2230 };
2231
2232 hyprsunset = callPackage ../by-name/hy/hyprsunset/package.nix {
2233 stdenv = gcc15Stdenv;
2234 };
2235
2236 hyprsysteminfo = callPackage ../by-name/hy/hyprsysteminfo/package.nix {
2237 stdenv = gcc15Stdenv;
2238 };
2239
2240 hyprutils = callPackage ../by-name/hy/hyprutils/package.nix {
2241 stdenv = gcc15Stdenv;
2242 };
2243
2244 hyprwayland-scanner = callPackage ../by-name/hy/hyprwayland-scanner/package.nix {
2245 stdenv = gcc15Stdenv;
2246 };
2247
2248 hyprshade = python3Packages.callPackage ../applications/window-managers/hyprwm/hyprshade { };
2249
2250 hyprlandPlugins = recurseIntoAttrs (
2251 callPackage ../applications/window-managers/hyprwm/hyprland-plugins { }
2252 );
2253
2254 intensity-normalization = with python3Packages; toPythonApplication intensity-normalization;
2255
2256 jellyfin-media-player = libsForQt5.callPackage ../applications/video/jellyfin-media-player { };
2257
2258 jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { };
2259
2260 klaus = with python3Packages; toPythonApplication klaus;
2261
2262 klipper = callPackage ../servers/klipper { };
2263
2264 klipper-firmware = callPackage ../servers/klipper/klipper-firmware.nix { };
2265
2266 klipper-flash = callPackage ../servers/klipper/klipper-flash.nix { };
2267
2268 klipper-genconf = callPackage ../servers/klipper/klipper-genconf.nix { };
2269
2270 klog = qt5.callPackage ../applications/radio/klog { };
2271
2272 lexicon = with python3Packages; toPythonApplication dns-lexicon;
2273
2274 lief = callPackage ../development/libraries/lief { };
2275
2276 # Less secure variant of lowdown for use inside Nix builds.
2277 lowdown-unsandboxed = lowdown.override {
2278 enableDarwinSandbox = false;
2279 };
2280
2281 kaggle = with python3Packages; toPythonApplication kaggle;
2282
2283 maliit-framework = libsForQt5.callPackage ../applications/misc/maliit-framework { };
2284
2285 maliit-keyboard = libsForQt5.callPackage ../applications/misc/maliit-keyboard { };
2286
2287 mat2 = with python3.pkgs; toPythonApplication mat2;
2288
2289 materialx = with python3Packages; toPythonApplication materialx;
2290
2291 # while building documentation meson may want to run binaries for host
2292 # which needs an emulator
2293 # example of an error which this fixes
2294 # [Errno 8] Exec format error: './gdk3-scan'
2295 mesonEmulatorHook =
2296 makeSetupHook
2297 {
2298 name = "mesonEmulatorHook";
2299 substitutions = {
2300 crossFile = writeText "cross-file.conf" ''
2301 [binaries]
2302 exe_wrapper = '${lib.escape [ "'" "\\" ] (stdenv.targetPlatform.emulator pkgs)}'
2303 '';
2304 };
2305 }
2306 # The throw is moved into the `makeSetupHook` derivation, so that its
2307 # outer level, but not its outPath can still be evaluated if the condition
2308 # doesn't hold. This ensures that splicing still can work correctly.
2309 (
2310 if (!stdenv.hostPlatform.canExecute stdenv.targetPlatform) then
2311 ../by-name/me/meson/emulator-hook.sh
2312 else
2313 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."
2314 );
2315
2316 mkspiffs = callPackage ../tools/filesystems/mkspiffs { };
2317
2318 mkspiffs-presets = recurseIntoAttrs (callPackages ../tools/filesystems/mkspiffs/presets.nix { });
2319
2320 mobilizon = callPackage ../servers/mobilizon {
2321 elixir = beam.packages.erlang_26.elixir_1_15;
2322 beamPackages = beam.packages.erlang_26.extend (self: super: { elixir = self.elixir_1_15; });
2323 mobilizon-frontend = callPackage ../servers/mobilizon/frontend.nix { };
2324 };
2325
2326 monado = callPackage ../by-name/mo/monado/package.nix {
2327 inherit (gst_all_1) gstreamer gst-plugins-base;
2328 };
2329
2330 mpd-sima = python3Packages.callPackage ../tools/audio/mpd-sima { };
2331
2332 nltk-data = lib.recurseIntoAttrs (callPackage ../tools/text/nltk-data { });
2333
2334 seabios-coreboot = seabios.override { ___build-type = "coreboot"; };
2335 seabios-csm = seabios.override { ___build-type = "csm"; };
2336 seabios-qemu = seabios.override { ___build-type = "qemu"; };
2337
2338 seaborn-data = callPackage ../tools/misc/seaborn-data { };
2339
2340 nodepy-runtime = with python3.pkgs; toPythonApplication nodepy-runtime;
2341
2342 nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools;
2343
2344 nsz = with python3.pkgs; toPythonApplication nsz;
2345
2346 ocrmypdf = with python3.pkgs; toPythonApplication ocrmypdf;
2347
2348 online-judge-template-generator =
2349 python3Packages.callPackage ../tools/misc/online-judge-template-generator
2350 { };
2351
2352 online-judge-tools = with python3.pkgs; toPythonApplication online-judge-tools;
2353
2354 inherit (ocamlPackages) patdiff;
2355
2356 patool = with python3Packages; toPythonApplication patool;
2357
2358 pocket-casts = callPackage ../by-name/po/pocket-casts/package.nix {
2359 electron = electron_35;
2360 };
2361
2362 pixcat = with python3Packages; toPythonApplication pixcat;
2363
2364 pyznap = python3Packages.callPackage ../tools/backup/pyznap { };
2365
2366 psrecord = python3Packages.callPackage ../tools/misc/psrecord { };
2367
2368 rare = python3Packages.callPackage ../games/rare { };
2369
2370 rmview = libsForQt5.callPackage ../applications/misc/remarkable/rmview { };
2371
2372 remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { };
2373
2374 ropgadget = with python3Packages; toPythonApplication ropgadget;
2375
2376 scour = with python3Packages; toPythonApplication scour;
2377
2378 steampipePackages = recurseIntoAttrs (callPackage ../tools/misc/steampipe-packages { });
2379
2380 inherit (callPackages ../servers/rainloop { })
2381 rainloop-community
2382 rainloop-standard
2383 ;
2384
2385 razergenie = libsForQt5.callPackage ../applications/misc/razergenie { };
2386
2387 roundcube = callPackage ../servers/roundcube { };
2388
2389 roundcubePlugins = dontRecurseIntoAttrs (callPackage ../servers/roundcube/plugins { });
2390
2391 rsyslog = callPackage ../tools/system/rsyslog {
2392 withHadoop = false; # Currently Broken
2393 withKsi = false; # Currently Broken
2394 };
2395
2396 rsyslog-light = rsyslog.override {
2397 withKrb5 = false;
2398 withSystemd = false;
2399 withJemalloc = false;
2400 withMysql = false;
2401 withPostgres = false;
2402 withDbi = false;
2403 withNetSnmp = false;
2404 withUuid = false;
2405 withCurl = false;
2406 withGnutls = false;
2407 withGcrypt = false;
2408 withLognorm = false;
2409 withMaxminddb = false;
2410 withOpenssl = false;
2411 withRelp = false;
2412 withKsi = false;
2413 withLogging = false;
2414 withNet = false;
2415 withHadoop = false;
2416 withRdkafka = false;
2417 withMongo = false;
2418 withCzmq = false;
2419 withRabbitmq = false;
2420 withHiredis = false;
2421 };
2422
2423 xmlsort = perlPackages.XMLFilterSort;
2424
2425 mcelog = callPackage ../os-specific/linux/mcelog {
2426 util-linux = util-linuxMinimal;
2427 };
2428
2429 sqlint = callPackage ../development/tools/sqlint { };
2430
2431 apc-temp-fetch = with python3.pkgs; callPackage ../tools/networking/apc-temp-fetch { };
2432
2433 asciidoc = callPackage ../tools/typesetting/asciidoc {
2434 inherit (python3.pkgs)
2435 pygments
2436 matplotlib
2437 numpy
2438 aafigure
2439 recursive-pth-loader
2440 ;
2441 w3m = w3m-batch;
2442 enableStandardFeatures = false;
2443 };
2444
2445 asciidoc-full = asciidoc.override {
2446 enableStandardFeatures = true;
2447 };
2448
2449 asciidoc-full-with-plugins = asciidoc.override {
2450 enableStandardFeatures = true;
2451 enableExtraPlugins = true;
2452 };
2453
2454 asciidoctor = callPackage ../tools/typesetting/asciidoctor { };
2455
2456 asciidoctor-with-extensions = callPackage ../tools/typesetting/asciidoctor-with-extensions { };
2457
2458 b2sum = callPackage ../tools/security/b2sum {
2459 inherit (llvmPackages) openmp;
2460 };
2461
2462 beamerpresenter = beamerpresenter-mupdf;
2463
2464 beamerpresenter-mupdf = qt6Packages.callPackage ../applications/office/beamerpresenter {
2465 useMupdf = true;
2466 usePoppler = false;
2467 };
2468
2469 beamerpresenter-poppler = qt6Packages.callPackage ../applications/office/beamerpresenter {
2470 useMupdf = false;
2471 usePoppler = true;
2472 };
2473
2474 beetsPackages = lib.recurseIntoAttrs (callPackage ../tools/audio/beets { });
2475 inherit (beetsPackages) beets beets-unstable;
2476
2477 binlore = callPackage ../development/tools/analysis/binlore { };
2478
2479 birdfont = callPackage ../tools/misc/birdfont { };
2480 xmlbird = callPackage ../tools/misc/birdfont/xmlbird.nix { stdenv = gccStdenv; };
2481
2482 bmrsa = callPackage ../tools/security/bmrsa/11.nix { };
2483
2484 anystyle-cli = callPackage ../tools/misc/anystyle-cli { };
2485
2486 bzip2 = callPackage ../tools/compression/bzip2 { };
2487
2488 bzip2_1_1 = callPackage ../tools/compression/bzip2/1_1.nix { };
2489
2490 bzip3 = callPackage ../tools/compression/bzip3 {
2491 stdenv = clangStdenv;
2492 };
2493
2494 davix-copy = davix.override { enableThirdPartyCopy = true; };
2495
2496 cdist = python3Packages.callPackage ../tools/admin/cdist { };
2497
2498 cemu-ti = qt5.callPackage ../applications/science/math/cemu-ti { };
2499
2500 libceph = ceph.lib;
2501 inherit
2502 (callPackages ../tools/filesystems/ceph {
2503 lua = lua5_4; # Ceph currently requires >= 5.3
2504
2505 # To see which `fmt` version Ceph upstream recommends, check its `src/fmt` submodule.
2506 #
2507 # Ceph does not currently build with `fmt_10`; see https://github.com/NixOS/nixpkgs/issues/281027#issuecomment-1899128557
2508 # If we want to switch for that before upstream fixes it, use this patch:
2509 # https://github.com/NixOS/nixpkgs/pull/281858#issuecomment-1899648638
2510 fmt = fmt_9;
2511
2512 # Remove once Ceph supports arrow-cpp >= 20, see:
2513 # * https://tracker.ceph.com/issues/71269
2514 # * https://github.com/NixOS/nixpkgs/issues/406306
2515 arrow-cpp = callPackage ../tools/filesystems/ceph/arrow-cpp-19.nix { };
2516 })
2517 ceph
2518 ceph-client
2519 ;
2520 ceph-dev = ceph;
2521
2522 clementine = libsForQt5.callPackage ../applications/audio/clementine {
2523 gst_plugins = with gst_all_1; [
2524 gst-plugins-base
2525 gst-plugins-good
2526 gst-plugins-ugly
2527 gst-libav
2528 ];
2529 protobuf = protobuf_21;
2530 };
2531
2532 mellowplayer = libsForQt5.callPackage ../applications/audio/mellowplayer { };
2533
2534 circus = with python310Packages; toPythonApplication circus;
2535
2536 inherit (callPackage ../applications/networking/remote/citrix-workspace { })
2537 citrix_workspace_23_11_0
2538 citrix_workspace_24_02_0
2539 citrix_workspace_24_05_0
2540 citrix_workspace_24_08_0
2541 citrix_workspace_24_11_0
2542 citrix_workspace_25_03_0
2543 citrix_workspace_25_05_0
2544 ;
2545 citrix_workspace = citrix_workspace_25_05_0;
2546
2547 cmst = libsForQt5.callPackage ../tools/networking/cmst { };
2548
2549 colord-gtk4 = colord-gtk.override { withGtk4 = true; };
2550
2551 connmanFull = connman.override {
2552 # TODO: Why is this in `connmanFull` and not the default build? See TODO in
2553 # nixos/modules/services/networking/connman.nix (near the assertions)
2554 enableNetworkManagerCompatibility = true;
2555 enableHh2serialGps = true;
2556 enableL2tp = true;
2557 enableIospm = true;
2558 enableTist = true;
2559 };
2560
2561 connmanMinimal = connman.override {
2562 # enableDatafiles = false; # If disabled, configuration and data files are not installed
2563 # enableEthernet = false; # If disabled no ethernet connection can be performed
2564 # enableWifi = false; # If disabled no WiFi connection can be performed
2565 enableBluetooth = false;
2566 enableClient = false;
2567 enableDundee = false;
2568 enableGadget = false;
2569 enableLoopback = false;
2570 enableNeard = false;
2571 enableOfono = false;
2572 enableOpenconnect = false;
2573 enableOpenvpn = false;
2574 enablePacrunner = false;
2575 enablePolkit = false;
2576 enablePptp = false;
2577 enableStats = false;
2578 enableTools = false;
2579 enableVpnc = false;
2580 enableWireguard = false;
2581 enableWispr = false;
2582 };
2583
2584 collectd = callPackage ../tools/system/collectd { };
2585
2586 collectd-data = callPackage ../tools/system/collectd/data.nix { };
2587
2588 unify = with python3Packages; toPythonApplication unify;
2589
2590 inherit (nodePackages) uppy-companion;
2591
2592 usb-modeswitch-data = callPackage ../by-name/us/usb-modeswitch/data.nix { };
2593
2594 persistent-evdev = python3Packages.callPackage ../servers/persistent-evdev { };
2595
2596 inherit (import ../development/libraries/libsbsms pkgs)
2597 libsbsms
2598 libsbsms_2_0_2
2599 libsbsms_2_3_0
2600 ;
2601
2602 m17n_lib = callPackage ../tools/inputmethods/m17n-lib { };
2603
2604 libotf = callPackage ../tools/inputmethods/m17n-lib/otf.nix { };
2605
2606 skkDictionaries = callPackages ../tools/inputmethods/skk/skk-dicts { };
2607
2608 ibus = callPackage ../tools/inputmethods/ibus { };
2609
2610 ibus-engines = recurseIntoAttrs {
2611 anthy = callPackage ../tools/inputmethods/ibus-engines/ibus-anthy { };
2612
2613 bamboo = callPackage ../tools/inputmethods/ibus-engines/ibus-bamboo { };
2614
2615 cangjie = callPackage ../tools/inputmethods/ibus-engines/ibus-cangjie { };
2616
2617 chewing = callPackage ../tools/inputmethods/ibus-engines/ibus-chewing { };
2618
2619 hangul = callPackage ../tools/inputmethods/ibus-engines/ibus-hangul { };
2620
2621 kkc = callPackage ../tools/inputmethods/ibus-engines/ibus-kkc { };
2622
2623 libpinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-libpinyin { };
2624
2625 libthai = callPackage ../tools/inputmethods/ibus-engines/ibus-libthai { };
2626
2627 m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { };
2628
2629 inherit mozc mozc-ut;
2630
2631 openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard {
2632 withIbusSupport = true;
2633 };
2634
2635 pinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-pinyin { };
2636
2637 rime = callPackage ../tools/inputmethods/ibus-engines/ibus-rime { };
2638
2639 table = callPackage ../tools/inputmethods/ibus-engines/ibus-table { };
2640
2641 table-chinese = callPackage ../tools/inputmethods/ibus-engines/ibus-table-chinese {
2642 ibus-table = ibus-engines.table;
2643 };
2644
2645 table-others = callPackage ../tools/inputmethods/ibus-engines/ibus-table-others {
2646 ibus-table = ibus-engines.table;
2647 };
2648
2649 uniemoji = callPackage ../tools/inputmethods/ibus-engines/ibus-uniemoji { };
2650
2651 typing-booster-unwrapped = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster { };
2652
2653 typing-booster = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster/wrapper.nix {
2654 typing-booster = ibus-engines.typing-booster-unwrapped;
2655 };
2656 };
2657
2658 ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix { };
2659
2660 interception-tools = callPackage ../tools/inputmethods/interception-tools { };
2661 interception-tools-plugins = recurseIntoAttrs {
2662 caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { };
2663 dual-function-keys =
2664 callPackage ../tools/inputmethods/interception-tools/dual-function-keys.nix
2665 { };
2666 };
2667
2668 blacken-docs = with python3Packages; toPythonApplication blacken-docs;
2669
2670 bluetooth_battery = python3Packages.callPackage ../applications/misc/bluetooth_battery { };
2671
2672 calyx-vpn = qt6Packages.callPackage ../tools/networking/bitmask-vpn {
2673 provider = "calyx";
2674 };
2675
2676 cask-server = libsForQt5.callPackage ../applications/misc/cask-server { };
2677
2678 code-browser-qt = libsForQt5.callPackage ../applications/editors/code-browser { withQt = true; };
2679 code-browser-gtk2 = callPackage ../applications/editors/code-browser { withGtk2 = true; };
2680 code-browser-gtk = callPackage ../applications/editors/code-browser { withGtk3 = true; };
2681
2682 cffconvert = python3Packages.toPythonApplication python3Packages.cffconvert;
2683
2684 ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { };
2685
2686 cmdpack = callPackages ../tools/misc/cmdpack { };
2687
2688 cocoapods = callPackage ../development/tools/cocoapods { };
2689
2690 cocoapods-beta = lowPrio (callPackage ../development/tools/cocoapods { beta = true; });
2691
2692 compass = callPackage ../development/tools/compass { };
2693
2694 cone = callPackage ../development/compilers/cone {
2695 llvmPackages = llvmPackages_13;
2696 };
2697
2698 coreutils = callPackage ../tools/misc/coreutils { };
2699
2700 # The coreutils above are built with dependencies from
2701 # bootstrapping. We cannot override it here, because that pulls in
2702 # openssl from the previous stage as well.
2703 coreutils-full = callPackage ../tools/misc/coreutils { minimal = false; };
2704 coreutils-prefixed = coreutils.override {
2705 withPrefix = true;
2706 singleBinary = false;
2707 };
2708
2709 create-cycle-app = nodePackages.create-cycle-app;
2710
2711 cron = isc-cron;
2712
2713 # Top-level fix-point used in `cudaPackages`' internals
2714 _cuda = import ../development/cuda-modules/_cuda;
2715
2716 cudaPackages_11_0 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.0"; };
2717 cudaPackages_11_1 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.1"; };
2718 cudaPackages_11_2 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.2"; };
2719 cudaPackages_11_3 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.3"; };
2720 cudaPackages_11_4 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.4"; };
2721 cudaPackages_11_5 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.5"; };
2722 cudaPackages_11_6 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.6"; };
2723 cudaPackages_11_7 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.7"; };
2724 cudaPackages_11_8 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "11.8"; };
2725 cudaPackages_11 = recurseIntoAttrs cudaPackages_11_8;
2726
2727 cudaPackages_12_0 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.0"; };
2728 cudaPackages_12_1 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.1"; };
2729 cudaPackages_12_2 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.2"; };
2730 cudaPackages_12_3 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.3"; };
2731 cudaPackages_12_4 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.4"; };
2732 cudaPackages_12_5 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.5"; };
2733 cudaPackages_12_6 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.6"; };
2734 cudaPackages_12_8 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.8"; };
2735 cudaPackages_12_9 = callPackage ./cuda-packages.nix { cudaMajorMinorVersion = "12.9"; };
2736 cudaPackages_12 = cudaPackages_12_8; # Latest supported by cudnn
2737
2738 cudaPackages = recurseIntoAttrs cudaPackages_12;
2739
2740 # TODO: move to alias
2741 cudatoolkit = cudaPackages.cudatoolkit;
2742 cudatoolkit_11 = cudaPackages_11.cudatoolkit;
2743
2744 curlFull = curl.override {
2745 ldapSupport = true;
2746 gsaslSupport = true;
2747 rtmpSupport = true;
2748 pslSupport = true;
2749 websocketSupport = true;
2750 };
2751
2752 curlHTTP3 = curl.override {
2753 http3Support = true;
2754 };
2755
2756 curl = curlMinimal.override (
2757 {
2758 idnSupport = true;
2759 pslSupport = true;
2760 zstdSupport = true;
2761 }
2762 // lib.optionalAttrs (!stdenv.hostPlatform.isStatic) {
2763 brotliSupport = true;
2764 }
2765 );
2766
2767 curlWithGnuTls = curl.override {
2768 gnutlsSupport = true;
2769 opensslSupport = false;
2770 };
2771
2772 curl-impersonate-ff = curl-impersonate.curl-impersonate-ff;
2773 curl-impersonate-chrome = curl-impersonate.curl-impersonate-chrome;
2774
2775 cve-bin-tool = python3Packages.callPackage ../tools/security/cve-bin-tool { };
2776
2777 danger-gitlab = callPackage ../applications/version-management/danger-gitlab { };
2778
2779 dconf2nix = callPackage ../development/tools/haskell/dconf2nix { };
2780
2781 ddcui = libsForQt5.callPackage ../applications/misc/ddcui { };
2782
2783 inherit (callPackages ../applications/networking/p2p/deluge { })
2784 deluge-gtk
2785 deluged
2786 deluge
2787 ;
2788
2789 deluge-2_x = deluge;
2790
2791 diffoscopeMinimal = diffoscope.override {
2792 enableBloat = false;
2793 };
2794
2795 diffutils = callPackage ../tools/text/diffutils { };
2796
2797 dmd = callPackage ../by-name/dm/dmd/package.nix (
2798 {
2799 }
2800 // lib.optionalAttrs stdenv.hostPlatform.isLinux {
2801 # https://github.com/NixOS/nixpkgs/pull/206907#issuecomment-1527034123
2802 stdenv = gcc11Stdenv;
2803 }
2804 );
2805
2806 dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { };
2807
2808 dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { };
2809
2810 drone = callPackage ../development/tools/continuous-integration/drone { };
2811 drone-oss = callPackage ../development/tools/continuous-integration/drone {
2812 enableUnfree = false;
2813 };
2814
2815 dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { };
2816
2817 inherit (import ../build-support/dlang/dub-support.nix { inherit callPackage; })
2818 buildDubPackage
2819 dub-to-nix
2820 ;
2821
2822 duff = callPackage ../tools/filesystems/duff { };
2823
2824 dvtm = callPackage ../tools/misc/dvtm {
2825 # if you prefer a custom config, write the config.h in dvtm.config.h
2826 # and enable
2827 # customConfig = builtins.readFile ./dvtm.config.h;
2828 };
2829
2830 dvtm-unstable = callPackage ../tools/misc/dvtm/unstable.nix { };
2831
2832 eid-mw = callPackage ../tools/security/eid-mw { };
2833
2834 engauge-digitizer = libsForQt5.callPackage ../applications/science/math/engauge-digitizer { };
2835
2836 kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { };
2837
2838 rocmPackages = rocmPackages_6;
2839 rocmPackages_6 = recurseIntoAttrs (callPackage ../development/rocm-modules/6 { });
2840
2841 sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { };
2842
2843 schleuder = callPackage ../tools/security/schleuder { };
2844
2845 schleuder-cli = callPackage ../tools/security/schleuder/cli { };
2846
2847 teamocil = callPackage ../tools/misc/teamocil { };
2848
2849 tsm-client-withGui = callPackage ../by-name/ts/tsm-client/package.nix { enableGui = true; };
2850
2851 tracy = callPackage ../by-name/tr/tracy/package.nix { withWayland = stdenv.hostPlatform.isLinux; };
2852 tracy-glfw = callPackage ../by-name/tr/tracy/package.nix { withWayland = false; };
2853 tracy-wayland = callPackage ../by-name/tr/tracy/package.nix { withWayland = true; };
2854
2855 uusi = haskell.lib.compose.justStaticExecutables haskellPackages.uusi;
2856
2857 uutils-coreutils-noprefix = uutils-coreutils.override { prefix = null; };
2858
2859 xkcdpass = with python3Packages; toPythonApplication xkcdpass;
2860
2861 zonemaster-cli = perlPackages.ZonemasterCLI;
2862
2863 ### DEVELOPMENT / EMSCRIPTEN
2864
2865 buildEmscriptenPackage = callPackage ../development/em-modules/generic { };
2866
2867 emscripten = callPackage ../development/compilers/emscripten {
2868 llvmPackages = llvmPackages_20;
2869 };
2870
2871 emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
2872
2873 emscriptenStdenv = stdenv // {
2874 mkDerivation = buildEmscriptenPackage;
2875 };
2876
2877 # The latest version used by elasticsearch, logstash, kibana and the the beats from elastic.
2878 # When updating make sure to update all plugins or they will break!
2879 elk7Version = "7.17.27";
2880
2881 elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix {
2882 util-linux = util-linuxMinimal;
2883 jre_headless = jdk11_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
2884 };
2885 elasticsearch = elasticsearch7;
2886
2887 elasticsearchPlugins = recurseIntoAttrs (
2888 callPackage ../servers/search/elasticsearch/plugins.nix { }
2889 );
2890
2891 embree = callPackage ../development/libraries/embree { };
2892 embree2 = callPackage ../development/libraries/embree/2.x.nix { };
2893
2894 emborg = python3Packages.callPackage ../development/python-modules/emborg { };
2895
2896 encfs = callPackage ../tools/filesystems/encfs {
2897 tinyxml2 = tinyxml-2;
2898 };
2899
2900 ethercalc = callPackage ../servers/web-apps/ethercalc { };
2901
2902 evtest-qt = libsForQt5.callPackage ../applications/misc/evtest-qt { };
2903
2904 executor = with python3Packages; toPythonApplication executor;
2905
2906 exiftool = perlPackages.ImageExifTool;
2907
2908 expect = tclPackages.expect;
2909
2910 Fabric = with python3Packages; toPythonApplication fabric;
2911
2912 chewing-editor = libsForQt5.callPackage ../applications/misc/chewing-editor { };
2913
2914 fcitx5 = callPackage ../tools/inputmethods/fcitx5 { };
2915
2916 fcitx5-bamboo = callPackage ../tools/inputmethods/fcitx5/fcitx5-bamboo.nix { };
2917
2918 fcitx5-skk = qt6Packages.callPackage ../tools/inputmethods/fcitx5/fcitx5-skk.nix { };
2919
2920 fcitx5-anthy = callPackage ../tools/inputmethods/fcitx5/fcitx5-anthy.nix { };
2921
2922 fcitx5-chewing = callPackage ../tools/inputmethods/fcitx5/fcitx5-chewing.nix { };
2923
2924 fcitx5-lua = callPackage ../tools/inputmethods/fcitx5/fcitx5-lua.nix { lua = lua5_3; };
2925
2926 fcitx5-m17n = callPackage ../tools/inputmethods/fcitx5/fcitx5-m17n.nix { };
2927
2928 fcitx5-openbangla-keyboard = libsForQt5.callPackage ../applications/misc/openbangla-keyboard {
2929 withFcitx5Support = true;
2930 };
2931
2932 fcitx5-gtk = callPackage ../tools/inputmethods/fcitx5/fcitx5-gtk.nix { };
2933
2934 fcitx5-hangul = callPackage ../tools/inputmethods/fcitx5/fcitx5-hangul.nix { };
2935
2936 fcitx5-rime = callPackage ../tools/inputmethods/fcitx5/fcitx5-rime.nix { };
2937
2938 fcitx5-table-extra = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-extra.nix { };
2939
2940 fcitx5-table-other = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-other.nix { };
2941
2942 flannel = callPackage ../tools/networking/flannel { };
2943 cni-plugin-flannel = callPackage ../tools/networking/flannel/plugin.nix { };
2944
2945 flatpak-builder = callPackage ../development/tools/flatpak-builder {
2946 binutils = binutils-unwrapped;
2947 };
2948
2949 fltrdr = callPackage ../tools/misc/fltrdr {
2950 icu = icu63;
2951 };
2952
2953 file = callPackage ../tools/misc/file {
2954 inherit (windows) libgnurx;
2955 };
2956
2957 findutils = callPackage ../tools/misc/findutils { };
2958
2959 bsd-fingerd = bsd-finger.override {
2960 buildProduct = "daemon";
2961 };
2962
2963 iprange = callPackage ../applications/networking/firehol/iprange.nix { };
2964
2965 firehol = callPackage ../applications/networking/firehol { };
2966
2967 fluentd = callPackage ../tools/misc/fluentd { };
2968
2969 gemstash = callPackage ../development/tools/gemstash { };
2970
2971 lpd8editor = libsForQt5.callPackage ../applications/audio/lpd8editor { };
2972
2973 lp_solve = callPackage ../applications/science/math/lp_solve {
2974 inherit (darwin) autoSignDarwinBinariesHook;
2975 };
2976
2977 fox = callPackage ../development/libraries/fox { };
2978
2979 fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { };
2980
2981 fpm = callPackage ../tools/package-management/fpm { };
2982
2983 ferdium = callPackage ../applications/networking/instant-messengers/ferdium {
2984 mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
2985 };
2986
2987 franz = callPackage ../applications/networking/instant-messengers/franz {
2988 mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { };
2989 };
2990
2991 freqtweak = callPackage ../applications/audio/freqtweak {
2992 wxGTK = wxGTK32;
2993 };
2994
2995 frostwire-bin = callPackage ../applications/networking/p2p/frostwire/frostwire-bin.nix { };
2996
2997 uniscribe = callPackage ../tools/text/uniscribe { };
2998
2999 gandi-cli = python3Packages.callPackage ../tools/networking/gandi-cli { };
3000
3001 inherit (callPackages ../tools/filesystems/garage { })
3002 garage
3003 garage_0_9
3004 garage_0_9_4
3005
3006 garage_1_2_0
3007 garage_1
3008
3009 garage_2_0_0
3010 garage_2
3011 ;
3012
3013 gaugePlugins = recurseIntoAttrs (callPackage ../by-name/ga/gauge/plugins { });
3014
3015 gawd = python3Packages.toPythonApplication python3Packages.gawd;
3016
3017 gawk = callPackage ../tools/text/gawk {
3018 inherit (darwin) locale;
3019 };
3020
3021 gawk-with-extensions = callPackage ../tools/text/gawk/gawk-with-extensions.nix {
3022 extensions = gawkextlib.full;
3023 };
3024 gawkextlib = callPackage ../tools/text/gawk/gawkextlib.nix { };
3025
3026 gawkInteractive = gawk.override { interactive = true; };
3027
3028 ggshield = callPackage ../tools/security/ggshield {
3029 python3 = python311;
3030 };
3031
3032 gibberish-detector = with python3Packages; toPythonApplication gibberish-detector;
3033
3034 gitlab-ee = callPackage ../by-name/gi/gitlab/package.nix {
3035 gitlabEnterprise = true;
3036 };
3037
3038 gitlab-triage = callPackage ../applications/version-management/gitlab-triage { };
3039
3040 gitlab-workhorse = callPackage ../by-name/gi/gitlab/gitlab-workhorse { };
3041
3042 glogg = libsForQt5.callPackage ../tools/text/glogg { };
3043
3044 gmrender-resurrect = callPackage ../tools/networking/gmrender-resurrect {
3045 inherit (gst_all_1)
3046 gstreamer
3047 gst-plugins-base
3048 gst-plugins-good
3049 gst-plugins-bad
3050 gst-plugins-ugly
3051 gst-libav
3052 ;
3053 };
3054
3055 gnome-panel-with-modules = callPackage ../by-name/gn/gnome-panel/wrapper.nix { };
3056
3057 dapl = callPackage ../development/interpreters/dzaima-apl {
3058 buildNativeImage = false;
3059 stdenv = stdenvNoCC;
3060 jdk = jre;
3061 };
3062 dapl-native = callPackage ../development/interpreters/dzaima-apl {
3063 buildNativeImage = true;
3064 jdk = graalvmPackages.graalvm-ce;
3065 };
3066
3067 gnucap-full = gnucap.withPlugins (p: [ p.verilog ]);
3068
3069 gnugrep = callPackage ../tools/text/gnugrep { };
3070
3071 gnupatch = callPackage ../tools/text/gnupatch { };
3072
3073 gnupg1compat = callPackage ../tools/security/gnupg/1compat.nix { };
3074 gnupg1 = gnupg1compat; # use config.packageOverrides if you prefer original gnupg1
3075
3076 gnupg24 = callPackage ../tools/security/gnupg/24.nix {
3077 pinentry = if stdenv.hostPlatform.isDarwin then pinentry_mac else pinentry-gtk2;
3078 };
3079 gnupg = gnupg24;
3080
3081 gnuplot = libsForQt5.callPackage ../tools/graphics/gnuplot { };
3082
3083 gnuplot_qt = gnuplot.override { withQt = true; };
3084
3085 # must have AquaTerm installed separately
3086 gnuplot_aquaterm = gnuplot.override { aquaterm = true; };
3087
3088 gnused = callPackage ../tools/text/gnused { };
3089
3090 gnutar = callPackage ../tools/archivers/gnutar { };
3091
3092 inherit (callPackage ../development/tools/godot { })
3093 godot3
3094 godot3-export-templates
3095 godot3-headless
3096 godot3-debug-server
3097 godot3-server
3098 godot3-mono
3099 godot3-mono-export-templates
3100 godot3-mono-headless
3101 godot3-mono-debug-server
3102 godot3-mono-server
3103 godotPackages_4_3
3104 godotPackages_4_4
3105 godotPackages_4
3106 godotPackages
3107 godot_4_3
3108 godot_4_3-mono
3109 godot_4_3-export-templates-bin
3110 godot_4_4
3111 godot_4_4-mono
3112 godot_4_4-export-templates-bin
3113 godot_4
3114 godot_4-mono
3115 godot_4-export-templates-bin
3116 godot
3117 godot-mono
3118 godot-export-templates-bin
3119 ;
3120
3121 goattracker = callPackage ../applications/audio/goattracker { };
3122
3123 goattracker-stereo = callPackage ../applications/audio/goattracker {
3124 isStereo = true;
3125 };
3126
3127 google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk {
3128 python3 = python312;
3129 };
3130 google-cloud-sdk-gce = google-cloud-sdk.override {
3131 python3 = python312;
3132 with-gce = true;
3133 };
3134
3135 google-compute-engine = with python3.pkgs; toPythonApplication google-compute-engine;
3136
3137 gdown = with python3Packages; toPythonApplication gdown;
3138
3139 gpt4all-cuda = gpt4all.override {
3140 cudaSupport = true;
3141 };
3142
3143 gprof2dot = with python3Packages; toPythonApplication gprof2dot;
3144
3145 grails = callPackage ../development/web/grails { jdk = null; };
3146
3147 graylog-6_0 = callPackage ../tools/misc/graylog/6.0.nix { };
3148
3149 inherit
3150 ({
3151 graylog-6_1 = callPackage ../tools/misc/graylog/6.1.nix { };
3152 })
3153 graylog-6_1
3154 ;
3155
3156 graylogPlugins = recurseIntoAttrs (
3157 callPackage ../tools/misc/graylog/plugins.nix { graylogPackage = graylog-6_0; }
3158 );
3159
3160 graphviz = callPackage ../tools/graphics/graphviz { };
3161
3162 graphviz-nox = callPackage ../tools/graphics/graphviz {
3163 withXorg = false;
3164 };
3165
3166 grub2 = callPackage ../tools/misc/grub/default.nix { };
3167
3168 grub2_efi = grub2.override {
3169 efiSupport = true;
3170 };
3171
3172 grub2_light = grub2.override {
3173 zfsSupport = false;
3174 };
3175
3176 grub2_xen = grub2.override {
3177 xenSupport = true;
3178 };
3179
3180 grub4dos = callPackage ../tools/misc/grub4dos {
3181 stdenv = stdenv_32bit;
3182 };
3183
3184 gruut = with python3.pkgs; toPythonApplication gruut;
3185
3186 gruut-ipa = with python3.pkgs; toPythonApplication gruut-ipa;
3187
3188 gsmlib = callPackage ../development/libraries/gsmlib { };
3189
3190 gssdp = callPackage ../development/libraries/gssdp { };
3191
3192 gssdp_1_6 = callPackage ../development/libraries/gssdp/1.6.nix { };
3193
3194 gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
3195
3196 gup = callPackage ../development/tools/build-managers/gup { };
3197
3198 gupnp = callPackage ../development/libraries/gupnp { };
3199
3200 gupnp_1_6 = callPackage ../development/libraries/gupnp/1.6.nix { };
3201
3202 gvm-tools = with python3.pkgs; toPythonApplication gvm-tools;
3203
3204 gzip = callPackage ../tools/compression/gzip { };
3205
3206 haskell-language-server =
3207 callPackage ../development/tools/haskell/haskell-language-server/withWrapper.nix
3208 { };
3209
3210 hassil = with python3Packages; toPythonApplication hassil;
3211
3212 haste-client = callPackage ../tools/misc/haste-client { };
3213
3214 hal-hardware-analyzer =
3215 libsForQt5.callPackage ../applications/science/electronics/hal-hardware-analyzer
3216 { };
3217
3218 halide = callPackage ../development/compilers/halide {
3219 llvmPackages = llvmPackages_19;
3220 };
3221
3222 hareThirdParty = recurseIntoAttrs (callPackage ./hare-third-party.nix { });
3223
3224 hdf5 = callPackage ../tools/misc/hdf5 {
3225 fortranSupport = false;
3226 fortran = gfortran;
3227 };
3228
3229 hdf5_1_10 = callPackage ../tools/misc/hdf5/1.10.nix { };
3230
3231 hdf5-mpi = hdf5.override {
3232 mpiSupport = true;
3233 cppSupport = false;
3234 };
3235
3236 hdf5-cpp = hdf5.override { cppSupport = true; };
3237
3238 hdf5-fortran = hdf5.override { fortranSupport = true; };
3239
3240 hdf5-fortran-mpi = hdf5.override {
3241 fortranSupport = true;
3242 mpiSupport = true;
3243 cppSupport = false;
3244 };
3245
3246 hdf5-threadsafe = hdf5.override { threadsafe = true; };
3247
3248 heaptrack = libsForQt5.callPackage ../development/tools/profiling/heaptrack { };
3249
3250 heimdall-gui = heimdall.override { enableGUI = true; };
3251
3252 headscale = callPackage ../servers/headscale { };
3253
3254 highlight = callPackage ../tools/text/highlight {
3255 lua = lua5;
3256 };
3257
3258 hockeypuck = callPackage ../servers/hockeypuck/server.nix { };
3259
3260 hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
3261
3262 homesick = callPackage ../tools/misc/homesick { };
3263
3264 host = bind.host;
3265
3266 hotdoc = python3Packages.callPackage ../development/tools/hotdoc { };
3267
3268 hpccm = with python3Packages; toPythonApplication hpccm;
3269
3270 hqplayer-desktop = qt6Packages.callPackage ../applications/audio/hqplayer-desktop { };
3271
3272 html-proofer = callPackage ../tools/misc/html-proofer { };
3273
3274 httpie = with python3Packages; toPythonApplication httpie;
3275
3276 hue-plus = libsForQt5.callPackage ../applications/misc/hue-plus { };
3277
3278 humanfriendly = with python3Packages; toPythonApplication humanfriendly;
3279
3280 hw-probe = perlPackages.callPackage ../tools/system/hw-probe { };
3281
3282 hyphen = callPackage ../development/libraries/hyphen { };
3283
3284 hyphenDicts = recurseIntoAttrs (callPackages ../development/libraries/hyphen/dictionaries.nix { });
3285
3286 iannix = libsForQt5.callPackage ../applications/audio/iannix { };
3287
3288 iaito = libsForQt5.callPackage ../tools/security/iaito { };
3289
3290 icemon = libsForQt5.callPackage ../applications/networking/icemon { };
3291
3292 icepeak = haskell.lib.compose.justStaticExecutables haskellPackages.icepeak;
3293
3294 inherit
3295 (callPackages ../tools/filesystems/irods rec {
3296 stdenv = llvmPackages_13.libcxxStdenv;
3297 libcxx = llvmPackages_13.libcxx;
3298 boost = boost178.override { inherit stdenv; };
3299 fmt = fmt_9.override { inherit stdenv; };
3300 nanodbc_llvm = nanodbc.override { inherit stdenv; };
3301 avro-cpp_llvm = avro-cpp.override { inherit stdenv boost; };
3302 spdlog_llvm = spdlog.override { inherit stdenv fmt; };
3303 })
3304 irods
3305 irods-icommands
3306 ;
3307
3308 ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix {
3309 inherit (haskellPackages) ghcWithPackages;
3310
3311 jupyter = python3.withPackages (ps: [
3312 ps.jupyter
3313 ps.notebook
3314 ]);
3315
3316 packages = config.ihaskell.packages or (_: [ ]);
3317 };
3318
3319 ilspycmd = callPackage ../development/tools/ilspycmd {
3320 inherit (darwin) autoSignDarwinBinariesHook;
3321 };
3322
3323 in-formant = qt6Packages.callPackage ../applications/audio/in-formant { };
3324
3325 incus-lts = callPackage ../by-name/in/incus/lts.nix { };
3326
3327 indexed-bzip2 = with python3Packages; toPythonApplication indexed-bzip2;
3328
3329 infisical = callPackage ../development/tools/infisical { };
3330
3331 input-remapper = python3Packages.callPackage ../tools/inputmethods/input-remapper { };
3332
3333 internetarchive = with python3Packages; toPythonApplication internetarchive;
3334
3335 iocextract = with python3Packages; toPythonApplication iocextract;
3336
3337 iocsearcher = with python3Packages; toPythonApplication iocsearcher;
3338
3339 iperf2 = callPackage ../tools/networking/iperf/2.nix { };
3340 iperf3 = callPackage ../tools/networking/iperf/3.nix { };
3341 iperf = iperf3;
3342
3343 i-pi = with python3Packages; toPythonApplication i-pi;
3344
3345 # ipscan is commonly known under the name angryipscanner
3346 angryipscanner = ipscan;
3347
3348 inherit
3349 (rec {
3350 isl = isl_0_20;
3351 isl_0_20 = callPackage ../development/libraries/isl/0.20.0.nix { };
3352 isl_0_23 = callPackage ../development/libraries/isl/0.23.0.nix { };
3353 isl_0_24 = callPackage ../development/libraries/isl/0.24.0.nix { };
3354 })
3355 isl
3356 isl_0_20
3357 isl_0_23
3358 isl_0_24
3359 ;
3360
3361 jackett = callPackage ../servers/jackett { };
3362
3363 jamesdsp = qt6Packages.callPackage ../applications/audio/jamesdsp { };
3364 jamesdsp-pulse = qt6Packages.callPackage ../applications/audio/jamesdsp {
3365 usePipewire = false;
3366 usePulseaudio = true;
3367 };
3368
3369 jazzy = callPackage ../development/tools/jazzy { };
3370
3371 jc = with python3Packages; toPythonApplication jc;
3372
3373 jello = with python3Packages; toPythonApplication jello;
3374
3375 jing = res.jing-trang;
3376 jing-trang = callPackage ../tools/text/xml/jing-trang {
3377 jdk_headless = jdk8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
3378 };
3379
3380 jl = haskellPackages.jl;
3381
3382 joplin = nodePackages.joplin;
3383
3384 jpylyzer = with python3Packages; toPythonApplication jpylyzer;
3385
3386 jsbeautifier = with python3Packages; toPythonApplication jsbeautifier;
3387
3388 json-schema-for-humans = with python3Packages; toPythonApplication json-schema-for-humans;
3389
3390 jupyter = callPackage ../applications/editors/jupyter { };
3391
3392 jupyter-all = jupyter.override {
3393 definitions = {
3394 clojure = clojupyter.definition;
3395 octave = octave-kernel.definition;
3396 # wolfram = wolfram-for-jupyter-kernel.definition; # unfree
3397 };
3398 };
3399
3400 jupyter-console = callPackage ../applications/editors/jupyter/console.nix { };
3401
3402 jupyter-kernel = callPackage ../applications/editors/jupyter/kernel.nix { };
3403
3404 wrapKakoune =
3405 kakoune: attrs:
3406 callPackage ../applications/editors/kakoune/wrapper.nix (attrs // { inherit kakoune; });
3407 kakounePlugins = recurseIntoAttrs (callPackage ../applications/editors/kakoune/plugins { });
3408
3409 kakoune-unwrapped = callPackage ../applications/editors/kakoune { };
3410 kakoune = wrapKakoune kakoune-unwrapped {
3411 plugins = [ ]; # override with the list of desired plugins
3412 };
3413 kakouneUtils = callPackage ../applications/editors/kakoune/plugins/kakoune-utils.nix { };
3414
3415 kaffeine = libsForQt5.callPackage ../applications/video/kaffeine { };
3416
3417 kdiskmark = libsForQt5.callPackage ../tools/filesystems/kdiskmark { };
3418
3419 keepkey-agent = with python3Packages; toPythonApplication keepkey-agent;
3420
3421 keybase = callPackage ../tools/security/keybase { };
3422
3423 kbfs = callPackage ../tools/security/keybase/kbfs.nix { };
3424
3425 keybase-gui = callPackage ../tools/security/keybase/gui.nix { };
3426
3427 keystore-explorer = callPackage ../applications/misc/keystore-explorer {
3428 jdk = jdk11;
3429 };
3430
3431 kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { };
3432
3433 krename = libsForQt5.callPackage ../applications/misc/krename { };
3434
3435 krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { };
3436
3437 krunner-translator = libsForQt5.callPackage ../tools/misc/krunner-translator { };
3438
3439 krunvm = callPackage ../applications/virtualization/krunvm {
3440 inherit (darwin) sigtool;
3441 };
3442
3443 kronometer = libsForQt5.callPackage ../tools/misc/kronometer { };
3444
3445 kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { };
3446
3447 peruse = libsForQt5.callPackage ../tools/misc/peruse { };
3448
3449 ksmoothdock = libsForQt5.callPackage ../applications/misc/ksmoothdock { };
3450
3451 libcoap = callPackage ../applications/networking/libcoap {
3452 autoconf = buildPackages.autoconf269;
3453 };
3454
3455 libcryptui = callPackage ../development/libraries/libcryptui {
3456 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
3457 };
3458
3459 liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix {
3460 ffmpeg = ffmpeg_6-full;
3461 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
3462 };
3463
3464 loganalyzer = libsForQt5.callPackage ../development/tools/loganalyzer { };
3465
3466 logstash7 = callPackage ../tools/misc/logstash/7.x.nix {
3467 # https://www.elastic.co/support/matrix#logstash-and-jvm
3468 jre = jdk11_headless;
3469 };
3470 logstash7-oss = callPackage ../tools/misc/logstash/7.x.nix {
3471 enableUnfree = false;
3472 # https://www.elastic.co/support/matrix#logstash-and-jvm
3473 jre = jdk11_headless;
3474 };
3475 logstash = logstash7;
3476
3477 logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { };
3478
3479 lolcat = callPackage ../tools/misc/lolcat { };
3480
3481 lsyncd = callPackage ../applications/networking/sync/lsyncd {
3482 lua = lua5_2_compat;
3483 };
3484
3485 kdbg = libsForQt5.callPackage ../development/tools/misc/kdbg { };
3486
3487 kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { };
3488
3489 lagrange-tui = lagrange.override { enableTUI = true; };
3490
3491 kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
3492
3493 mailcatcher = callPackage ../development/web/mailcatcher { };
3494
3495 maskromtool = qt6Packages.callPackage ../tools/graphics/maskromtool { };
3496
3497 matrix-synapse-plugins = recurseIntoAttrs matrix-synapse-unwrapped.plugins;
3498
3499 maubot = with python3Packages; toPythonApplication maubot;
3500
3501 mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { });
3502
3503 m2r = with python3Packages; toPythonApplication m2r;
3504
3505 md2gemini = with python3.pkgs; toPythonApplication md2gemini;
3506
3507 md2pdf = with python3Packages; toPythonApplication md2pdf;
3508
3509 mdcat = callPackage ../tools/text/mdcat {
3510 inherit (python3Packages) ansi2html;
3511 };
3512
3513 medfile = callPackage ../development/libraries/medfile {
3514 hdf5 = hdf5.override { usev110Api = true; };
3515 };
3516
3517 mhonarc = perlPackages.MHonArc;
3518
3519 nanoemoji = with python3Packages; toPythonApplication nanoemoji;
3520
3521 netdata = callPackage ../tools/system/netdata {
3522 protobuf = protobuf_21;
3523 };
3524 netdataCloud = netdata.override {
3525 withCloudUi = true;
3526 };
3527
3528 netsurf = recurseIntoAttrs (callPackage ../applications/networking/browsers/netsurf { });
3529 netsurf-browser = netsurf.browser;
3530
3531 nyxt = callPackage ../applications/networking/browsers/nyxt {
3532 sbcl = sbcl_2_4_6;
3533 inherit (gst_all_1)
3534 gstreamer
3535 gst-libav
3536 gst-plugins-base
3537 gst-plugins-good
3538 gst-plugins-bad
3539 gst-plugins-ugly
3540 ;
3541 };
3542
3543 nixnote2 = libsForQt5.callPackage ../applications/misc/nixnote2 { };
3544
3545 nodejs = nodejs_22;
3546 nodejs-slim = nodejs-slim_22;
3547 corepack = corepack_22;
3548
3549 nodejs_20 = callPackage ../development/web/nodejs/v20.nix { };
3550 nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { enableNpm = false; };
3551 corepack_20 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_20; };
3552
3553 nodejs_22 = callPackage ../development/web/nodejs/v22.nix { };
3554 nodejs-slim_22 = callPackage ../development/web/nodejs/v22.nix { enableNpm = false; };
3555 corepack_22 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_22; };
3556
3557 nodejs_24 = callPackage ../development/web/nodejs/v24.nix { };
3558 nodejs-slim_24 = callPackage ../development/web/nodejs/v24.nix { enableNpm = false; };
3559 corepack_24 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_24; };
3560
3561 # Update this when adding the newest nodejs major version!
3562 nodejs_latest = nodejs_24;
3563 nodejs-slim_latest = nodejs-slim_24;
3564 corepack_latest = corepack_24;
3565
3566 buildNpmPackage = callPackage ../build-support/node/build-npm-package { };
3567
3568 npmHooks = callPackage ../build-support/node/build-npm-package/hooks { };
3569
3570 inherit (callPackages ../build-support/node/fetch-npm-deps { })
3571 fetchNpmDeps
3572 prefetch-npm-deps
3573 ;
3574
3575 importNpmLock = callPackages ../build-support/node/import-npm-lock { };
3576
3577 nodePackages_latest = dontRecurseIntoAttrs nodejs_latest.pkgs;
3578
3579 nodePackages = dontRecurseIntoAttrs nodejs.pkgs;
3580
3581 node2nix = nodePackages.node2nix;
3582
3583 ktailctl = kdePackages.callPackage ../applications/networking/ktailctl { };
3584
3585 ldapdomaindump = with python3Packages; toPythonApplication ldapdomaindump;
3586
3587 leanblueprint = with python3Packages; toPythonApplication leanblueprint;
3588
3589 inherit (callPackage ../development/tools/lerna { })
3590 lerna_6
3591 lerna_8
3592 ;
3593 lerna = lerna_8;
3594
3595 libhandy = callPackage ../development/libraries/libhandy { };
3596
3597 # Needed for apps that still depend on the unstable version of the library (not libhandy-1)
3598 libhandy_0 = callPackage ../development/libraries/libhandy/0.x.nix { };
3599
3600 libint = callPackage ../development/libraries/libint { };
3601 libintPsi4 = callPackage ../development/libraries/libint {
3602 enableFortran = false;
3603 enableSSE = false;
3604 maxAm = 6;
3605 eriDeriv = 2;
3606 eri3Deriv = 2;
3607 eri2Deriv = 2;
3608 eriAm = [
3609 6
3610 5
3611 4
3612 ];
3613 eri3Am = [
3614 6
3615 5
3616 4
3617 ];
3618 eri2Am = [
3619 6
3620 5
3621 4
3622 ];
3623 eriOptAm = [
3624 3
3625 2
3626 2
3627 ];
3628 eri3OptAm = [
3629 3
3630 2
3631 2
3632 ];
3633 eri2OptAm = [
3634 3
3635 2
3636 2
3637 ];
3638 enableOneBody = true;
3639 oneBodyDerivOrd = 2;
3640 enableGeneric = false;
3641 enableContracted = false;
3642 cartGaussOrd = "standard";
3643 shGaussOrd = "gaussian";
3644 eri2PureSh = false;
3645 eri3PureSh = false;
3646 };
3647
3648 libirc = libsForQt5.callPackage ../development/libraries/libirc { };
3649
3650 libportal-gtk3 = libportal.override { variant = "gtk3"; };
3651 libportal-gtk4 = libportal.override { variant = "gtk4"; };
3652 libportal-qt5 = libportal.override { variant = "qt5"; };
3653 libportal-qt6 = libportal.override { variant = "qt6"; };
3654
3655 jesec-rtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent {
3656 libtorrent = callPackage ../applications/networking/p2p/jesec-rtorrent/libtorrent.nix { };
3657 };
3658
3659 librest = callPackage ../development/libraries/librest { };
3660
3661 librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { };
3662
3663 licensee = callPackage ../tools/package-management/licensee { };
3664
3665 inherit
3666 ({
3667 limesuite = callPackage ../applications/radio/limesuite {
3668 };
3669 limesuiteWithGui = limesuite.override {
3670 withGui = true;
3671 };
3672 })
3673 limesuite
3674 limesuiteWithGui
3675 ;
3676
3677 linux-gpib = callPackage ../applications/science/electronics/linux-gpib/user.nix { };
3678
3679 liquidctl = with python3Packages; toPythonApplication liquidctl;
3680
3681 xz = callPackage ../tools/compression/xz { };
3682
3683 madlang = haskell.lib.compose.justStaticExecutables haskellPackages.madlang;
3684
3685 mailnag = callPackage ../applications/networking/mailreaders/mailnag {
3686 availablePlugins = {
3687 # More are listed here: https://github.com/pulb/mailnag/#desktop-integration
3688 # Use the attributes here as arguments to `plugins` list
3689 goa = callPackage ../applications/networking/mailreaders/mailnag/goa-plugin.nix { };
3690 };
3691 };
3692 mailnagWithPlugins = mailnag.withPlugins (builtins.attrValues mailnag.availablePlugins);
3693 mailpit = callPackage ../servers/mail/mailpit {
3694 libtool = if stdenv.hostPlatform.isDarwin then cctools else libtool;
3695 };
3696
3697 man = man-db;
3698
3699 mangohud = callPackage ../tools/graphics/mangohud {
3700 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
3701 mangohud32 = pkgsi686Linux.mangohud;
3702 };
3703
3704 marimo = with python3Packages; toPythonApplication marimo;
3705
3706 mecab =
3707 let
3708 mecab-nodic = callPackage ../tools/text/mecab/nodic.nix { };
3709 in
3710 callPackage ../tools/text/mecab {
3711 mecab-ipadic = callPackage ../tools/text/mecab/ipadic.nix {
3712 inherit mecab-nodic;
3713 };
3714 };
3715
3716 mbutil = python310Packages.callPackage ../applications/misc/mbutil { };
3717
3718 mcstatus = with python3Packages; toPythonApplication mcstatus;
3719
3720 miniupnpd = callPackage ../tools/networking/miniupnpd { };
3721
3722 miniupnpd-nftables = callPackage ../tools/networking/miniupnpd { firewall = "nftables"; };
3723
3724 minijail = callPackage ../tools/system/minijail { };
3725
3726 minijail-tools = python3.pkgs.callPackage ../tools/system/minijail/tools.nix { };
3727
3728 mir-qualia = callPackage ../tools/text/mir-qualia {
3729 pythonPackages = python3Packages;
3730 };
3731
3732 mitmproxy = with python3Packages; toPythonApplication mitmproxy;
3733
3734 mjpegtoolsFull = mjpegtools.override {
3735 withMinimal = false;
3736 };
3737
3738 mkpasswd = hiPrio (callPackage ../tools/security/mkpasswd { });
3739
3740 molecule = with python3Packages; toPythonApplication molecule;
3741
3742 moreutils = callPackage ../tools/misc/moreutils {
3743 docbook-xsl = docbook_xsl;
3744 };
3745
3746 metasploit = callPackage ../tools/security/metasploit { };
3747
3748 mtr = callPackage ../tools/networking/mtr { };
3749
3750 mtr-gui = callPackage ../tools/networking/mtr { withGtk = true; };
3751
3752 multitran = recurseIntoAttrs (
3753 let
3754 callPackage = newScope pkgs.multitran;
3755 in
3756 {
3757 multitrandata = callPackage ../tools/text/multitran/data { };
3758
3759 libbtree = callPackage ../tools/text/multitran/libbtree { };
3760
3761 libmtsupport = callPackage ../tools/text/multitran/libmtsupport { };
3762
3763 libfacet = callPackage ../tools/text/multitran/libfacet { };
3764
3765 libmtquery = callPackage ../tools/text/multitran/libmtquery { };
3766
3767 mtutils = callPackage ../tools/text/multitran/mtutils { };
3768 }
3769 );
3770
3771 mytetra = libsForQt5.callPackage ../applications/office/mytetra { };
3772
3773 nerd-fonts = recurseIntoAttrs (callPackage ../data/fonts/nerd-fonts { });
3774
3775 maple-mono = recurseIntoAttrs (callPackage ../data/fonts/maple-font { });
3776
3777 netcdf-mpi = netcdf.override {
3778 hdf5 = hdf5-mpi.override { usev110Api = true; };
3779 };
3780
3781 # Not in aliases because it wouldn't get picked up by callPackage
3782 netbox = netbox_4_3;
3783
3784 netcap-nodpi = callPackage ../by-name/ne/netcap/package.nix {
3785 withDpi = false;
3786 };
3787
3788 netcat = libressl.nc.overrideAttrs (old: {
3789 meta = old.meta // {
3790 description = "Utility which reads and writes data across network connections — LibreSSL implementation";
3791 mainProgram = "nc";
3792 };
3793 });
3794
3795 netlify-cli = callPackage ../by-name/ne/netlify-cli/package.nix {
3796 nodejs = nodejs_20;
3797 };
3798
3799 networkmanager = callPackage ../tools/networking/networkmanager { };
3800
3801 libnma-gtk4 = libnma.override { withGtk4 = true; };
3802
3803 nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { };
3804
3805 inherit (callPackages ../servers/nextcloud { })
3806 nextcloud30
3807 nextcloud31
3808 ;
3809
3810 nextcloud30Packages = callPackage ../servers/nextcloud/packages { ncVersion = "30"; };
3811 nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; };
3812
3813 nextcloud-notify_push = callPackage ../servers/nextcloud/notify_push.nix { };
3814
3815 inherit (callPackages ../applications/networking/cluster/nomad { })
3816 nomad
3817 nomad_1_9
3818 nomad_1_10
3819 ;
3820
3821 nomacs-qt6 = nomacs.override { qtVersion = 6; };
3822
3823 nth = with python3Packages; toPythonApplication name-that-hash;
3824
3825 nvchecker =
3826 with python3Packages;
3827 toPythonApplication (
3828 nvchecker.overridePythonAttrs (oldAttrs: {
3829 propagatedBuildInputs =
3830 oldAttrs.propagatedBuildInputs ++ lib.flatten (builtins.attrValues oldAttrs.optional-dependencies);
3831 })
3832 );
3833
3834 nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher;
3835
3836 mkgmap = callPackage ../applications/misc/mkgmap { };
3837
3838 mkgmap-splitter = callPackage ../applications/misc/mkgmap/splitter { };
3839
3840 op-geth = callPackage ../applications/blockchains/optimism/geth.nix { };
3841
3842 optimism = callPackage ../applications/blockchains/optimism { };
3843
3844 pandoc-acro = python3Packages.callPackage ../tools/misc/pandoc-acro { };
3845
3846 pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { };
3847
3848 pandoc-include = python3Packages.callPackage ../tools/misc/pandoc-include { };
3849
3850 pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { };
3851
3852 pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { };
3853
3854 # pandoc-*nos is a filter suite, where pandoc-xnos has all functionality and the others are used for only specific functionality
3855 pandoc-eqnos = python3Packages.callPackage ../tools/misc/pandoc-eqnos { };
3856 pandoc-fignos = python3Packages.callPackage ../tools/misc/pandoc-fignos { };
3857 pandoc-secnos = python3Packages.callPackage ../tools/misc/pandoc-secnos { };
3858 pandoc-tablenos = python3Packages.callPackage ../tools/misc/pandoc-tablenos { };
3859
3860 pegasus-frontend = libsForQt5.callPackage ../games/pegasus-frontend { };
3861
3862 pgbadger = perlPackages.callPackage ../tools/misc/pgbadger { };
3863
3864 nifskope = libsForQt5.callPackage ../tools/graphics/nifskope { };
3865
3866 notation = callPackage ../by-name/no/notation/package.nix {
3867 buildGoModule = buildGo123Module;
3868 };
3869
3870 nsjail = callPackage ../tools/security/nsjail {
3871 protobuf = protobuf_21;
3872 };
3873
3874 # ntfsprogs are merged into ntfs-3g
3875 ntfsprogs = pkgs.ntfs3g;
3876
3877 nvfancontrol = callPackage ../tools/misc/nvfancontrol {
3878 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
3879 };
3880
3881 nwdiag = with python3Packages; toPythonApplication nwdiag;
3882
3883 nxdomain = python3.pkgs.callPackage ../tools/networking/nxdomain { };
3884
3885 ofono-phonesim = libsForQt5.callPackage ../development/tools/ofono-phonesim { };
3886
3887 ola = callPackage ../applications/misc/ola {
3888 protobuf = protobuf_21;
3889 };
3890
3891 olive-editor = qt6Packages.callPackage ../applications/video/olive-editor { };
3892
3893 ome_zarr = with python3Packages; toPythonApplication ome-zarr;
3894
3895 onlykey = callPackage ../tools/security/onlykey { node_webkit = nwjs; };
3896
3897 openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli {
3898 jre = pkgs.jre_headless;
3899 };
3900
3901 ophcrack-cli = ophcrack.override { enableGui = false; };
3902
3903 open-interpreter = with python3Packages; toPythonApplication open-interpreter;
3904
3905 openhantek6022 = libsForQt5.callPackage ../applications/science/electronics/openhantek6022 { };
3906
3907 openmvg = callPackage ../applications/science/misc/openmvg {
3908 inherit (llvmPackages) openmp;
3909 };
3910
3911 openmvs = callPackage ../applications/science/misc/openmvs {
3912 inherit (llvmPackages) openmp;
3913 };
3914
3915 openntpd_nixos = openntpd.override {
3916 privsepUser = "ntp";
3917 privsepPath = "/var/empty";
3918 };
3919
3920 openrefine = callPackage ../applications/science/misc/openrefine { jdk = jdk17; };
3921
3922 openrgb-with-all-plugins = openrgb.withPlugins [
3923 openrgb-plugin-effects
3924 openrgb-plugin-hardwaresync
3925 ];
3926
3927 opensshPackages = dontRecurseIntoAttrs (callPackage ../tools/networking/openssh { });
3928
3929 openssh = opensshPackages.openssh.override {
3930 etcDir = "/etc/ssh";
3931 };
3932
3933 opensshTest = openssh.tests.openssh;
3934
3935 opensshWithKerberos = openssh.override {
3936 withKerberos = true;
3937 };
3938
3939 openssh_hpn = opensshPackages.openssh_hpn.override {
3940 etcDir = "/etc/ssh";
3941 };
3942
3943 openssh_hpnWithKerberos = openssh_hpn.override {
3944 withKerberos = true;
3945 };
3946
3947 openssh_gssapi = opensshPackages.openssh_gssapi.override {
3948 etcDir = "/etc/ssh";
3949 withKerberos = true;
3950 };
3951
3952 ssh-copy-id = callPackage ../tools/networking/openssh/copyid.nix { };
3953
3954 sshd-openpgp-auth = callPackage ../by-name/ss/ssh-openpgp-auth/daemon.nix { };
3955
3956 opentrack = libsForQt5.callPackage ../applications/misc/opentrack { };
3957
3958 openvpn = callPackage ../tools/networking/openvpn { };
3959
3960 openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
3961
3962 openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix {
3963 inherit (llvmPackages) stdenv;
3964 };
3965
3966 namespaced-openvpn = python3Packages.callPackage ../tools/networking/namespaced-openvpn { };
3967
3968 update-dotdee = with python3Packages; toPythonApplication update-dotdee;
3969
3970 update-nix-fetchgit = haskell.lib.compose.justStaticExecutables haskellPackages.update-nix-fetchgit;
3971
3972 update-resolv-conf = callPackage ../tools/networking/openvpn/update-resolv-conf.nix { };
3973
3974 update-systemd-resolved = callPackage ../tools/networking/openvpn/update-systemd-resolved.nix { };
3975
3976 opentelemetry-collector = opentelemetry-collector-releases.otelcol;
3977 opentelemetry-collector-builder = callPackage ../tools/misc/opentelemetry-collector/builder.nix { };
3978 opentelemetry-collector-contrib = opentelemetry-collector-releases.otelcol-contrib;
3979 opentelemetry-collector-releases =
3980 callPackage ../tools/misc/opentelemetry-collector/releases.nix
3981 { };
3982
3983 openvswitch-dpdk = callPackage ../by-name/op/openvswitch/package.nix { withDPDK = true; };
3984
3985 optifinePackages = callPackage ../tools/games/minecraft/optifine { };
3986
3987 optifine = optifinePackages.optifine-latest;
3988
3989 opl3bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor { };
3990 opn2bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor/opn2bankeditor.nix { };
3991
3992 orangefs = callPackage ../tools/filesystems/orangefs { };
3993
3994 osl = libsForQt5.callPackage ../development/compilers/osl {
3995 libclang = llvmPackages_19.libclang;
3996 clang = clang_19;
3997 llvm = llvm_19;
3998 };
3999
4000 ossec-agent = callPackage ../tools/security/ossec/agent.nix { };
4001
4002 ossec-server = callPackage ../tools/security/ossec/server.nix { };
4003
4004 p4c = callPackage ../development/compilers/p4c {
4005 protobuf = protobuf_21;
4006 };
4007
4008 p7zip = callPackage ../tools/archivers/p7zip { };
4009 p7zip-rar = p7zip.override { enableUnfree = true; };
4010
4011 packagekit = callPackage ../tools/package-management/packagekit { };
4012
4013 padthv1 = libsForQt5.callPackage ../applications/audio/padthv1 { };
4014
4015 pagefind = libsForQt5.callPackage ../applications/misc/pagefind { };
4016
4017 pakcs = callPackage ../development/compilers/pakcs { };
4018
4019 paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { };
4020
4021 parallel = callPackage ../tools/misc/parallel { };
4022
4023 parallel-full = callPackage ../tools/misc/parallel/wrapper.nix { };
4024
4025 parcellite = callPackage ../tools/misc/parcellite { };
4026
4027 patchutils = callPackage ../tools/text/patchutils { };
4028
4029 patchutils_0_3_3 = callPackage ../tools/text/patchutils/0.3.3.nix { };
4030
4031 patchutils_0_4_2 = callPackage ../tools/text/patchutils/0.4.2.nix { };
4032
4033 inherit (import ../servers/sql/percona-server pkgs)
4034 percona-server_8_0
4035 percona-server_8_4
4036 percona-server
4037 ;
4038 inherit (import ../tools/backup/percona-xtrabackup pkgs)
4039 percona-xtrabackup_8_0
4040 percona-xtrabackup_8_4
4041 percona-xtrabackup
4042 ;
4043
4044 pipecontrol = libsForQt5.callPackage ../applications/audio/pipecontrol { };
4045
4046 pulumiPackages = recurseIntoAttrs pulumi.pkgs;
4047
4048 pulumi-bin = callPackage ../tools/admin/pulumi-bin { };
4049
4050 patch = gnupatch;
4051
4052 patchance = python3Packages.callPackage ../applications/audio/patchance { };
4053
4054 pcscliteWithPolkit = pcsclite.override {
4055 pname = "pcsclite-with-polkit";
4056 polkitSupport = true;
4057 };
4058
4059 pdd = python3Packages.callPackage ../tools/misc/pdd { };
4060
4061 pdfminer = with python3Packages; toPythonApplication pdfminer-six;
4062
4063 pdfium-binaries-v8 = pdfium-binaries.override { withV8 = true; };
4064
4065 pdsh = callPackage ../tools/networking/pdsh {
4066 rsh = true; # enable internal rsh implementation
4067 ssh = openssh;
4068 };
4069
4070 pfstools = libsForQt5.callPackage ../tools/graphics/pfstools { };
4071
4072 phosh = callPackage ../applications/window-managers/phosh { };
4073
4074 phosh-mobile-settings =
4075 callPackage ../applications/window-managers/phosh/phosh-mobile-settings.nix
4076 { };
4077
4078 inherit (callPackages ../tools/security/pinentry { })
4079 pinentry-curses
4080 pinentry-emacs
4081 pinentry-gtk2
4082 pinentry-gnome3
4083 pinentry-qt
4084 pinentry-tty
4085 pinentry-all
4086 ;
4087
4088 pinentry_mac = callPackage ../tools/security/pinentry/mac.nix { };
4089
4090 pinnwand = callPackage ../servers/pinnwand { };
4091
4092 plan9port = callPackage ../tools/system/plan9port {
4093 inherit (darwin) DarwinTools;
4094 };
4095
4096 platformioPackages = dontRecurseIntoAttrs (callPackage ../development/embedded/platformio { });
4097 platformio =
4098 if stdenv.hostPlatform.isLinux then
4099 platformioPackages.platformio-chrootenv
4100 else
4101 platformioPackages.platformio-core;
4102 platformio-core = platformioPackages.platformio-core;
4103
4104 playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { };
4105
4106 playwright = playwright-driver;
4107 playwright-driver = (callPackage ../development/web/playwright/driver.nix { }).playwright-core;
4108 playwright-test = (callPackage ../development/web/playwright/driver.nix { }).playwright-test;
4109
4110 inherit (callPackage ../servers/plik { })
4111 plik
4112 plikd
4113 ;
4114
4115 plex = callPackage ../servers/plex { };
4116
4117 plexRaw = callPackage ../servers/plex/raw.nix { };
4118
4119 tabview = with python3Packages; toPythonApplication tabview;
4120
4121 tautulli = python3Packages.callPackage ../servers/tautulli { };
4122
4123 pleroma = callPackage ../servers/pleroma {
4124 elixir = elixir_1_17;
4125 beamPackages = beam.packages.erlang_26.extend (self: super: { elixir = elixir_1_17; });
4126 };
4127
4128 plfit = callPackage ../by-name/pl/plfit/package.nix {
4129 python = null;
4130 };
4131
4132 inherit (callPackage ../development/tools/pnpm { })
4133 pnpm_8
4134 pnpm_9
4135 pnpm_10
4136 ;
4137 pnpm = pnpm_10;
4138
4139 po4a = perlPackages.Po4a;
4140
4141 podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose { };
4142
4143 polaris = callPackage ../servers/polaris { };
4144
4145 polaris-web = callPackage ../servers/polaris/web.nix { };
4146
4147 projectm_3 = libsForQt5.callPackage ../applications/audio/projectm_3 { };
4148
4149 proxmark3 = libsForQt5.callPackage ../tools/security/proxmark3/default.nix { };
4150
4151 pycflow2dot = with python3.pkgs; toPythonApplication pycflow2dot;
4152
4153 pyinfra = with python3Packages; toPythonApplication pyinfra;
4154
4155 pylint = with python3Packages; toPythonApplication pylint;
4156
4157 pyocd = with python3Packages; toPythonApplication pyocd;
4158
4159 pypass = with python3Packages; toPythonApplication pypass;
4160
4161 pydeps = with python3Packages; toPythonApplication pydeps;
4162
4163 pywal = with python3Packages; toPythonApplication pywal;
4164
4165 raysession = python3Packages.callPackage ../applications/audio/raysession { };
4166
4167 remarshal = with python3Packages; toPythonApplication remarshal;
4168
4169 riseup-vpn = qt6Packages.callPackage ../tools/networking/bitmask-vpn {
4170 provider = "riseup";
4171 };
4172
4173 rocket = libsForQt5.callPackage ../tools/graphics/rocket { };
4174
4175 rtabmap = callPackage ../by-name/rt/rtabmap/package.nix {
4176 pcl = pcl.override { vtk = vtkWithQt5; };
4177 };
4178
4179 rtaudio = callPackage ../development/libraries/audio/rtaudio {
4180 jack = libjack2;
4181 };
4182
4183 rtmidi = callPackage ../development/libraries/audio/rtmidi {
4184 jack = libjack2;
4185 };
4186
4187 mpi = openmpi; # this attribute should used to build MPI applications
4188 openmodelica = recurseIntoAttrs (callPackage ../applications/science/misc/openmodelica { });
4189
4190 qarte = libsForQt5.callPackage ../applications/video/qarte { };
4191
4192 qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { };
4193
4194 qdigidoc = libsForQt5.callPackage ../tools/security/qdigidoc { };
4195
4196 qjournalctl = libsForQt5.callPackage ../applications/system/qjournalctl { };
4197
4198 qjoypad = libsForQt5.callPackage ../tools/misc/qjoypad { };
4199
4200 qmarkdowntextedit = libsForQt5.callPackage ../development/libraries/qmarkdowntextedit { };
4201
4202 qtspim = libsForQt5.callPackage ../development/tools/misc/qtspim { };
4203
4204 quictls = callPackage ../development/libraries/quictls { };
4205
4206 quota = if stdenv.hostPlatform.isLinux then linuxquota else unixtools.quota;
4207
4208 radeon-profile = libsForQt5.callPackage ../tools/misc/radeon-profile { };
4209
4210 rainbowstream = with python3.pkgs; toPythonApplication rainbowstream;
4211
4212 rapidgzip = with python3Packages; toPythonApplication rapidgzip;
4213
4214 ratarmount = with python3Packages; toPythonApplication ratarmount;
4215
4216 retext = qt6Packages.callPackage ../applications/editors/retext { };
4217
4218 inherit (callPackage ../tools/security/rekor { })
4219 rekor-cli
4220 rekor-server
4221 ;
4222
4223 rst2pdf = with python3Packages; toPythonApplication rst2pdf;
4224
4225 rstcheck = with python3Packages; toPythonApplication rstcheck;
4226
4227 rstcheckWithSphinx = rstcheck.overridePythonAttrs (oldAttrs: {
4228 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.sphinx;
4229 });
4230
4231 rtmpdump_gnutls = rtmpdump.override {
4232 gnutlsSupport = true;
4233 opensslSupport = false;
4234 };
4235
4236 qt-box-editor = libsForQt5.callPackage ../applications/misc/qt-box-editor { };
4237
4238 recoll = libsForQt5.callPackage ../applications/search/recoll { };
4239
4240 recoll-nox = recoll.override { withGui = false; };
4241
4242 reckon = callPackage ../tools/text/reckon { };
4243
4244 remote-exec = python3Packages.callPackage ../tools/misc/remote-exec { };
4245
4246 reptor = with python3.pkgs; toPythonApplication reptor;
4247
4248 rescuetime = libsForQt5.callPackage ../applications/misc/rescuetime { };
4249
4250 inherit (callPackage ../development/misc/resholve { })
4251 resholve
4252 ;
4253
4254 reuse = with python3.pkgs; toPythonApplication reuse;
4255
4256 riemann-tools = callPackage ../tools/misc/riemann-tools { };
4257
4258 rmlint = callPackage ../tools/misc/rmlint {
4259 inherit (python3Packages) sphinx;
4260 };
4261
4262 rosenpass = callPackage ../tools/networking/rosenpass { };
4263
4264 rosenpass-tools = callPackage ../tools/networking/rosenpass/tools.nix { };
4265
4266 rpm = callPackage ../tools/package-management/rpm {
4267 lua = lua5_4;
4268 };
4269
4270 rsibreak = libsForQt5.callPackage ../applications/misc/rsibreak { };
4271
4272 rucio = callPackage ../by-name/ru/rucio/package.nix {
4273 # Pinned to python 3.12 while python313Packages.future does not evaluate and
4274 # until https://github.com/CZ-NIC/pyoidc/issues/649 is resolved
4275 python3Packages = python312Packages;
4276 };
4277
4278 rubocop = rubyPackages.rubocop;
4279
4280 ruby-lsp = rubyPackages.ruby-lsp;
4281
4282 s3cmd = python3Packages.callPackage ../tools/networking/s3cmd { };
4283
4284 s3-credentials = with python3Packages; toPythonApplication s3-credentials;
4285
4286 safety-cli = with python3.pkgs; toPythonApplication safety;
4287
4288 sasview = libsForQt5.callPackage ../applications/science/misc/sasview { };
4289
4290 scfbuild = python3.pkgs.callPackage ../tools/misc/scfbuild { };
4291
4292 segger-jlink-headless = callPackage ../by-name/se/segger-jlink/package.nix { headless = true; };
4293
4294 selectdefaultapplication = libsForQt5.callPackage ../applications/misc/selectdefaultapplication { };
4295
4296 semgrep = python3.pkgs.toPythonApplication python3.pkgs.semgrep;
4297 inherit (semgrep.passthru) semgrep-core;
4298
4299 seqdiag = with python3Packages; toPythonApplication seqdiag;
4300
4301 shellify = haskellPackages.shellify.bin;
4302
4303 shiv = with python3Packages; toPythonApplication shiv;
4304
4305 slither-analyzer = with python3Packages; toPythonApplication slither-analyzer;
4306
4307 # aka., pgp-tools
4308 simplescreenrecorder = libsForQt5.callPackage ../applications/video/simplescreenrecorder { };
4309
4310 sisco.lv2 = callPackage ../applications/audio/sisco.lv2 { };
4311
4312 sks = callPackage ../servers/sks {
4313 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
4314 };
4315
4316 slstatus = callPackage ../applications/misc/slstatus {
4317 conf = config.slstatus.conf or null;
4318 };
4319
4320 smpq = callPackage ../by-name/sm/smpq/package.nix {
4321 stormlib = stormlib.overrideAttrs (old: {
4322 version = "9.22";
4323 src = fetchFromGitHub {
4324 owner = "ladislav-zezula";
4325 repo = "StormLib";
4326 rev = "v9.22";
4327 hash = "sha256-jFUfxLzuRHAvFE+q19i6HfGcL6GX4vKL1g7l7LOhjeU=";
4328 };
4329 });
4330 };
4331
4332 snapcast = callPackage ../applications/audio/snapcast {
4333 pulseaudioSupport = config.pulseaudio or stdenv.hostPlatform.isLinux;
4334 };
4335
4336 soapui = callPackage ../applications/networking/soapui {
4337 jdk = jdk11;
4338 };
4339
4340 specup = haskellPackages.specup.bin;
4341
4342 spglib = callPackage ../development/libraries/spglib {
4343 inherit (llvmPackages) openmp;
4344 };
4345
4346 # to match naming of other package repositories
4347 spire-agent = spire.agent;
4348 spire-server = spire.server;
4349
4350 spoof-mac = python3Packages.callPackage ../tools/networking/spoof-mac { };
4351
4352 soundkonverter = libsForQt5.soundkonverter;
4353
4354 steck = callPackage ../servers/pinnwand/steck.nix { };
4355
4356 stm32loader = with python3Packages; toPythonApplication stm32loader;
4357
4358 solanum = callPackage ../servers/irc/solanum { };
4359
4360 solc-select = with python3Packages; toPythonApplication solc-select;
4361
4362 splot = haskell.lib.compose.justStaticExecutables haskellPackages.splot;
4363
4364 sshfs = sshfs-fuse; # added 2017-08-14
4365
4366 inherit (callPackages ../tools/misc/sshx { })
4367 sshx
4368 sshx-server
4369 ;
4370
4371 strip-nondeterminism = perlPackages.strip-nondeterminism;
4372
4373 subsurface = libsForQt5.callPackage ../applications/misc/subsurface { };
4374
4375 sumorobot-manager =
4376 python3Packages.callPackage ../applications/science/robotics/sumorobot-manager
4377 { };
4378
4379 sslscan = callPackage ../tools/security/sslscan {
4380 openssl = openssl.override { withZlib = true; };
4381 };
4382
4383 stacer = libsForQt5.callPackage ../tools/system/stacer { };
4384
4385 staticjinja = with python3.pkgs; toPythonApplication staticjinja;
4386
4387 stoken = callPackage ../tools/security/stoken (config.stoken or { });
4388
4389 stutter = haskell.lib.compose.justStaticExecutables haskellPackages.stutter;
4390
4391 strongswanTNC = strongswan.override { enableTNC = true; };
4392 strongswanTPM = strongswan.override { enableTPM2 = true; };
4393 strongswanNM = strongswan.override { enableNetworkManager = true; };
4394
4395 stylish-haskell = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-haskell;
4396
4397 su = shadow.su;
4398
4399 subzerod = with python3Packages; toPythonApplication subzerod;
4400
4401 system-config-printer = callPackage ../tools/misc/system-config-printer {
4402 libxml2 = libxml2Python;
4403 };
4404
4405 privoxy = callPackage ../tools/networking/privoxy {
4406 w3m = w3m-batch;
4407 };
4408
4409 systemdgenie = libsForQt5.callPackage ../applications/system/systemdgenie { };
4410
4411 t = callPackage ../tools/misc/t { };
4412
4413 tartube = callPackage ../applications/video/tartube { };
4414
4415 tartube-yt-dlp = callPackage ../applications/video/tartube {
4416 youtube-dl = yt-dlp;
4417 };
4418
4419 teamviewer = libsForQt5.callPackage ../applications/networking/remote/teamviewer { };
4420
4421 telepresence = callPackage ../tools/networking/telepresence {
4422 pythonPackages = python3Packages;
4423 };
4424
4425 texmacs = libsForQt5.callPackage ../applications/editors/texmacs {
4426 extraFonts = true;
4427 };
4428
4429 texmaker = qt6Packages.callPackage ../applications/editors/texmaker { };
4430
4431 texworks = qt6Packages.callPackage ../applications/editors/texworks { };
4432
4433 theLoungePlugins =
4434 let
4435 pkgs = lib.filterAttrs (name: _: lib.hasPrefix "thelounge-" name) nodePackages;
4436 getPackagesWithPrefix =
4437 prefix:
4438 lib.mapAttrs' (
4439 name: pkg: lib.nameValuePair (lib.removePrefix ("thelounge-" + prefix + "-") name) pkg
4440 ) (lib.filterAttrs (name: _: lib.hasPrefix ("thelounge-" + prefix + "-") name) pkgs);
4441 in
4442 lib.recurseIntoAttrs {
4443 plugins = lib.recurseIntoAttrs (getPackagesWithPrefix "plugin");
4444 themes = lib.recurseIntoAttrs (getPackagesWithPrefix "theme");
4445 };
4446
4447 thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { };
4448
4449 tiled = libsForQt5.callPackage ../applications/editors/tiled { };
4450
4451 tinc = callPackage ../tools/networking/tinc { };
4452
4453 tikzit = libsForQt5.callPackage ../tools/typesetting/tikzit { };
4454
4455 tinc_pre = callPackage ../tools/networking/tinc/pre.nix { };
4456
4457 tldr-hs = haskellPackages.tldr;
4458
4459 tmuxPlugins = recurseIntoAttrs (
4460 callPackage ../misc/tmux-plugins {
4461 pkgs = pkgs.__splicedPackages;
4462 }
4463 );
4464
4465 trackma-curses = trackma.override { withCurses = true; };
4466
4467 trackma-gtk = trackma.override { withGTK = true; };
4468
4469 trackma-qt = trackma.override { withQT = true; };
4470
4471 tpmmanager = libsForQt5.callPackage ../applications/misc/tpmmanager { };
4472
4473 trezorctl = with python3Packages; toPythonApplication trezor;
4474
4475 trezor-agent = with python3Packages; toPythonApplication trezor-agent;
4476
4477 ttp = with python3.pkgs; toPythonApplication ttp;
4478
4479 trace-cmd = callPackage ../os-specific/linux/trace-cmd { };
4480
4481 kernelshark = qt6Packages.callPackage ../os-specific/linux/trace-cmd/kernelshark.nix { };
4482
4483 translatelocally-models = recurseIntoAttrs (callPackages ../misc/translatelocally-models { });
4484
4485 translatepy = with python3.pkgs; toPythonApplication translatepy;
4486
4487 inherit (callPackage ../applications/office/trilium { })
4488 trilium-desktop
4489 trilium-server
4490 ;
4491
4492 trytond = with python3Packages; toPythonApplication trytond;
4493
4494 ttfautohint = libsForQt5.callPackage ../tools/misc/ttfautohint { };
4495 ttfautohint-nox = ttfautohint.override { enableGUI = false; };
4496
4497 twilight = callPackage ../tools/graphics/twilight {
4498 libX11 = xorg.libX11;
4499 };
4500
4501 twitch-chat-downloader =
4502 python3Packages.callPackage ../applications/misc/twitch-chat-downloader
4503 { };
4504
4505 ubpm = libsForQt5.callPackage ../applications/misc/ubpm { };
4506
4507 uftraceFull = uftrace.override {
4508 withLuaJIT = true;
4509 withPython = true;
4510 };
4511
4512 unetbootin = libsForQt5.callPackage ../tools/cd-dvd/unetbootin { };
4513
4514 unrpa = with python3Packages; toPythonApplication unrpa;
4515
4516 usort = with python3Packages; toPythonApplication usort;
4517
4518 vacuum = libsForQt5.callPackage ../applications/networking/instant-messengers/vacuum { };
4519
4520 vampire = callPackage ../applications/science/logic/vampire { };
4521
4522 vcmi = libsForQt5.callPackage ../games/vcmi { };
4523
4524 video2midi = callPackage ../tools/audio/video2midi {
4525 pythonPackages = python3Packages;
4526 };
4527
4528 vikunja = callPackage ../by-name/vi/vikunja/package.nix { pnpm = pnpm_9; };
4529
4530 vimpager = callPackage ../tools/misc/vimpager { };
4531 vimpager-latest = callPackage ../tools/misc/vimpager/latest.nix { };
4532
4533 vimwiki-markdown = python3Packages.callPackage ../tools/misc/vimwiki-markdown { };
4534
4535 visidata = python3Packages.callPackage ../applications/misc/visidata { };
4536
4537 vkbasalt = callPackage ../tools/graphics/vkbasalt {
4538 vkbasalt32 = pkgsi686Linux.vkbasalt;
4539 };
4540
4541 vpn-slice = python3Packages.callPackage ../tools/networking/vpn-slice { };
4542
4543 vpWithSixel = vp.override {
4544 # Enable next line for console graphics. Note that it requires `sixel`
4545 # enabled terminals such as mlterm or xterm -ti 340
4546 SDL = SDL_sixel;
4547 SDL_image = SDL_image.override { SDL = SDL_sixel; };
4548 };
4549
4550 openconnectPackages = callPackage ../tools/networking/openconnect { };
4551
4552 inherit (openconnectPackages) openconnect openconnect_openssl;
4553
4554 globalprotect-openconnect =
4555 libsForQt5.callPackage ../tools/networking/globalprotect-openconnect
4556 { };
4557
4558 sssd = callPackage ../os-specific/linux/sssd {
4559 # NOTE: freeipa and sssd need to be built with the same version of python
4560 inherit (perlPackages) Po4a;
4561 };
4562
4563 webassemblyjs-cli = nodePackages."@webassemblyjs/cli-1.11.1";
4564 webassemblyjs-repl = nodePackages."@webassemblyjs/repl-1.11.1";
4565
4566 buildWasmBindgenCli = callPackage ../build-support/wasm-bindgen-cli { };
4567
4568 wasm-strip = nodePackages."@webassemblyjs/wasm-strip";
4569 wasm-text-gen = nodePackages."@webassemblyjs/wasm-text-gen-1.11.1";
4570 wast-refmt = nodePackages."@webassemblyjs/wast-refmt-1.11.1";
4571
4572 wasmedge = callPackage ../development/tools/wasmedge {
4573 stdenv = clangStdenv;
4574 };
4575
4576 woodpecker-agent = callPackage ../development/tools/continuous-integration/woodpecker/agent.nix { };
4577
4578 woodpecker-cli = callPackage ../development/tools/continuous-integration/woodpecker/cli.nix { };
4579
4580 woodpecker-server =
4581 callPackage ../development/tools/continuous-integration/woodpecker/server.nix
4582 { };
4583
4584 testdisk = libsForQt5.callPackage ../tools/system/testdisk { };
4585
4586 testdisk-qt = testdisk.override { enableQt = true; };
4587
4588 tweet-hs = haskell.lib.compose.justStaticExecutables haskellPackages.tweet-hs;
4589
4590 truecrack-cuda = truecrack.override { cudaSupport = true; };
4591
4592 turbovnc = callPackage ../tools/admin/turbovnc {
4593 # fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ];
4594 libjpeg_turbo = libjpeg_turbo.override { enableJava = true; };
4595 };
4596
4597 ufmt = with python3Packages; toPythonApplication ufmt;
4598
4599 uim = callPackage ../tools/inputmethods/uim {
4600 autoconf = buildPackages.autoconf269;
4601 };
4602
4603 unbound-with-systemd = unbound.override {
4604 withSystemd = true;
4605 };
4606
4607 unbound-full = unbound.override {
4608 python = python3;
4609 withSystemd = true;
4610 withDynlibModule = true;
4611 withPythonModule = true;
4612 withDoH = true;
4613 withECS = true;
4614 withDNSCrypt = true;
4615 withDNSTAP = true;
4616 withTFO = true;
4617 withRedis = true;
4618 };
4619
4620 unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { };
4621
4622 ugarit = callPackage ../tools/backup/ugarit {
4623 inherit (chickenPackages_4) eggDerivation fetchegg;
4624 };
4625
4626 ugarit-manifest-maker = callPackage ../tools/backup/ugarit-manifest-maker {
4627 inherit (chickenPackages_4) eggDerivation fetchegg;
4628 };
4629
4630 unar = callPackage ../tools/archivers/unar {
4631 stdenv = clangStdenv;
4632 };
4633
4634 unzipNLS = lowPrio (unzip.override { enableNLS = true; });
4635
4636 inherit (callPackages ../servers/varnish { })
4637 varnish60
4638 varnish77
4639 ;
4640 inherit (callPackages ../servers/varnish/packages.nix { })
4641 varnish60Packages
4642 varnish77Packages
4643 ;
4644 varnishPackages = varnish77Packages;
4645 varnish = varnishPackages.varnish;
4646
4647 vncdo = with python3Packages; toPythonApplication vncdo;
4648
4649 # An alias to work around the splicing incidents
4650 # Related:
4651 # https://github.com/NixOS/nixpkgs/issues/204303
4652 # https://github.com/NixOS/nixpkgs/issues/211340
4653 # https://github.com/NixOS/nixpkgs/issues/227327
4654 wafHook = waf.hook;
4655
4656 web-eid-app = libsForQt5.callPackage ../tools/security/web-eid-app { };
4657
4658 wio = callPackage ../by-name/wi/wio/package.nix {
4659 wlroots = wlroots_0_17;
4660 };
4661
4662 wring = nodePackages.wring;
4663
4664 wyrd = callPackage ../tools/misc/wyrd {
4665 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
4666 };
4667
4668 clipbuzz = callPackage ../tools/misc/clipbuzz {
4669 zig = buildPackages.zig_0_12;
4670 };
4671
4672 # A minimal xar is needed to break an infinite recursion between macfuse-stubs and xar.
4673 # It is also needed to reduce the amount of unnecessary stuff in the Darwin bootstrap.
4674 xarMinimal = callPackage ../by-name/xa/xar/package.nix { e2fsprogs = null; };
4675
4676 xdelta = callPackage ../tools/compression/xdelta { };
4677 xdeltaUnstable = callPackage ../tools/compression/xdelta/unstable.nix { };
4678
4679 xdot = with python3Packages; toPythonApplication xdot;
4680
4681 xflux = callPackage ../tools/misc/xflux { };
4682 xflux-gui = python3Packages.callPackage ../tools/misc/xflux/gui.nix { };
4683
4684 libxfs = xfsprogs.dev;
4685
4686 xmlto = callPackage ../tools/typesetting/xmlto {
4687 w3m = w3m-batch;
4688 };
4689
4690 xorriso = libisoburn;
4691
4692 xvfb-run = callPackage ../tools/misc/xvfb-run {
4693 inherit (texFunctions) fontsConf;
4694 };
4695
4696 yapf = with python3Packages; toPythonApplication yapf;
4697
4698 yarn-berry_4 = yarn-berry.override { berryVersion = 4; };
4699 yarn-berry_3 = yarn-berry.override { berryVersion = 3; };
4700
4701 yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea {
4702 pkgs = pkgs.__splicedPackages;
4703 };
4704
4705 inherit (yarn2nix-moretea)
4706 yarn2nix
4707 mkYarnPackage
4708 mkYarnModules
4709 fixup_yarn_lock
4710 ;
4711
4712 yamlfix = with python3Packages; toPythonApplication yamlfix;
4713
4714 yamllint = with python3Packages; toPythonApplication yamllint;
4715
4716 # To expose more packages for Yi, override the extraPackages arg.
4717 yi = callPackage ../applications/editors/yi/wrapper.nix { };
4718
4719 zbackup = callPackage ../tools/backup/zbackup {
4720 protobuf = protobuf_21;
4721 };
4722
4723 zbar = libsForQt5.callPackage ../tools/graphics/zbar { };
4724
4725 # Nvidia support does not require any proprietary libraries, so CI can build it.
4726 # Note that when enabling this unconditionally, non-nvidia users will always have an empty "GPU" section.
4727 zenith-nvidia = zenith.override {
4728 nvidiaSupport = true;
4729 };
4730
4731 zpaq = callPackage ../tools/archivers/zpaq { };
4732 zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { };
4733
4734 zstd = callPackage ../tools/compression/zstd {
4735 cmake = buildPackages.cmakeMinimal;
4736 };
4737
4738 ### SHELLS
4739
4740 runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}";
4741 runtimeShellPackage = bashNonInteractive;
4742
4743 bash = callPackage ../shells/bash/5.nix { };
4744 bashNonInteractive = lowPrio (
4745 callPackage ../shells/bash/5.nix {
4746 interactive = false;
4747 }
4748 );
4749 # WARNING: this attribute is used by nix-shell so it shouldn't be removed/renamed
4750 bashInteractive = bash;
4751 bashFHS = callPackage ../shells/bash/5.nix {
4752 forFHSEnv = true;
4753 };
4754 bashInteractiveFHS = bashFHS;
4755
4756 carapace = callPackage ../shells/carapace {
4757 buildGoModule = buildGo123Module;
4758 };
4759
4760 wrapFish = callPackage ../shells/fish/wrapper.nix { };
4761
4762 fishPlugins = recurseIntoAttrs (callPackage ../shells/fish/plugins { });
4763
4764 powerline = with python3Packages; toPythonApplication powerline;
4765
4766 ### DEVELOPMENT / COMPILERS
4767
4768 temurin-bin-24 = javaPackages.compiler.temurin-bin.jdk-24;
4769 temurin-jre-bin-24 = javaPackages.compiler.temurin-bin.jre-24;
4770
4771 temurin-bin-23 = javaPackages.compiler.temurin-bin.jdk-23;
4772 temurin-jre-bin-23 = javaPackages.compiler.temurin-bin.jre-23;
4773
4774 temurin-bin-21 = javaPackages.compiler.temurin-bin.jdk-21;
4775 temurin-jre-bin-21 = javaPackages.compiler.temurin-bin.jre-21;
4776
4777 temurin-bin-17 = javaPackages.compiler.temurin-bin.jdk-17;
4778 temurin-jre-bin-17 = javaPackages.compiler.temurin-bin.jre-17;
4779
4780 temurin-bin-11 = javaPackages.compiler.temurin-bin.jdk-11;
4781 temurin-jre-bin-11 = javaPackages.compiler.temurin-bin.jre-11;
4782
4783 temurin-bin-8 = javaPackages.compiler.temurin-bin.jdk-8;
4784 temurin-jre-bin-8 = javaPackages.compiler.temurin-bin.jre-8;
4785
4786 temurin-bin = temurin-bin-21;
4787 temurin-jre-bin = temurin-jre-bin-21;
4788
4789 semeru-bin-21 = javaPackages.compiler.semeru-bin.jdk-21;
4790 semeru-jre-bin-21 = javaPackages.compiler.semeru-bin.jre-21;
4791 semeru-bin-17 = javaPackages.compiler.semeru-bin.jdk-17;
4792 semeru-jre-bin-17 = javaPackages.compiler.semeru-bin.jre-17;
4793 semeru-bin-11 = javaPackages.compiler.semeru-bin.jdk-11;
4794 semeru-jre-bin-11 = javaPackages.compiler.semeru-bin.jre-11;
4795 semeru-bin-8 = javaPackages.compiler.semeru-bin.jdk-8;
4796 semeru-jre-bin-8 = javaPackages.compiler.semeru-bin.jre-8;
4797
4798 semeru-bin = semeru-bin-21;
4799 semeru-jre-bin = semeru-jre-bin-21;
4800
4801 adaptivecppWithCuda = adaptivecpp.override { cudaSupport = true; };
4802 adaptivecppWithRocm = adaptivecpp.override { rocmSupport = true; };
4803
4804 adoptopenjdk-icedtea-web = callPackage ../development/compilers/adoptopenjdk-icedtea-web {
4805 jdk = jdk8;
4806 };
4807
4808 armips = callPackage ../by-name/ar/armips/package.nix {
4809 stdenv = clangStdenv;
4810 };
4811
4812 ballerina = callPackage ../development/compilers/ballerina {
4813 openjdk = openjdk17_headless;
4814 };
4815
4816 binaryen = callPackage ../development/compilers/binaryen {
4817 nodejs = nodejs-slim;
4818 inherit (python3Packages) filecheck;
4819 };
4820
4821 bluespec = callPackage ../by-name/bl/bluespec/package.nix {
4822 gmp-static = gmp.override { withStatic = true; };
4823 };
4824
4825 codon = callPackage ../development/compilers/codon {
4826 inherit (llvmPackages) lld stdenv;
4827 };
4828
4829 colmap = libsForQt5.callPackage ../applications/science/misc/colmap {
4830 inherit (config) cudaSupport;
4831 };
4832 colmapWithCuda = colmap.override { cudaSupport = true; };
4833
4834 opensplatWithCuda = opensplat.override { cudaSupport = true; };
4835
4836 chickenPackages_4 = recurseIntoAttrs (callPackage ../development/compilers/chicken/4 { });
4837 chickenPackages_5 = recurseIntoAttrs (callPackage ../development/compilers/chicken/5 { });
4838 chickenPackages = dontRecurseIntoAttrs chickenPackages_5;
4839
4840 inherit (chickenPackages_5)
4841 fetchegg
4842 eggDerivation
4843 chicken
4844 egg2nix
4845 ;
4846
4847 cdb = callPackage ../development/tools/database/cdb {
4848 stdenv = gccStdenv;
4849 };
4850
4851 libclang = llvmPackages.libclang;
4852 clang-manpages = llvmPackages.clang-manpages;
4853
4854 clang = llvmPackages.clang;
4855 clang_12 = llvmPackages_12.clang;
4856 clang_13 = llvmPackages_13.clang;
4857 clang_14 = llvmPackages_14.clang;
4858 clang_15 = llvmPackages_15.clang;
4859 clang_16 = llvmPackages_16.clang;
4860 clang_17 = llvmPackages_17.clang;
4861
4862 clang-tools = llvmPackages.clang-tools;
4863
4864 clang-analyzer = callPackage ../development/tools/analysis/clang-analyzer {
4865 llvmPackages = llvmPackages;
4866 inherit (llvmPackages) clang;
4867 };
4868
4869 clazy = callPackage ../development/tools/analysis/clazy {
4870 stdenv = llvmPackages.stdenv;
4871 };
4872
4873 #Use this instead of stdenv to build with clang
4874 clangStdenv = if stdenv.cc.isClang then stdenv else lowPrio llvmPackages.stdenv;
4875 libcxxStdenv = if stdenv.hostPlatform.isDarwin then stdenv else lowPrio llvmPackages.libcxxStdenv;
4876
4877 comby = callPackage ../development/tools/comby {
4878 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
4879 };
4880
4881 inherit (coqPackages_8_20) compcert;
4882
4883 computecpp = wrapCCWith rec {
4884 cc = computecpp-unwrapped;
4885 extraPackages = [
4886 llvmPackages.compiler-rt
4887 ];
4888 extraBuildCommands = ''
4889 wrap compute $wrapper $ccPath/compute
4890 wrap compute++ $wrapper $ccPath/compute++
4891 export named_cc=compute
4892 export named_cxx=compute++
4893
4894 rsrc="$out/resource-root"
4895 mkdir -p "$rsrc/lib"
4896 ln -s "${cc}/lib" "$rsrc/include"
4897 echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
4898 '';
4899 };
4900
4901 corretto11 = javaPackages.compiler.corretto11;
4902 corretto17 = javaPackages.compiler.corretto17;
4903 corretto21 = javaPackages.compiler.corretto21;
4904
4905 inherit (callPackage ../development/compilers/crystal { })
4906 crystal_1_11
4907 crystal_1_14
4908 crystal_1_15
4909 crystal
4910 ;
4911
4912 crystalline = callPackage ../development/tools/language-servers/crystalline {
4913 llvmPackages = crystal.llvmPackages;
4914 };
4915
4916 devpi-server = python3Packages.callPackage ../development/tools/devpi-server { };
4917
4918 dprint-plugins = recurseIntoAttrs (callPackage ../by-name/dp/dprint/plugins { });
4919
4920 elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix;
4921
4922 elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { });
4923
4924 fasm = pkgsi686Linux.callPackage ../development/compilers/fasm {
4925 inherit (stdenv.hostPlatform) isx86_64;
4926 };
4927 fasm-bin = callPackage ../development/compilers/fasm/bin.nix { };
4928
4929 fbc =
4930 if stdenv.hostPlatform.isDarwin then
4931 callPackage ../development/compilers/fbc/mac-bin.nix { }
4932 else
4933 callPackage ../development/compilers/fbc { };
4934
4935 filecheck = with python3Packages; toPythonApplication filecheck;
4936
4937 flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });
4938 flutterPackages-source = recurseIntoAttrs (
4939 callPackage ../development/compilers/flutter { useNixpkgsEngine = true; }
4940 );
4941 flutterPackages = flutterPackages-bin;
4942 flutter = flutterPackages.stable;
4943 flutter332 = flutterPackages.v3_32;
4944 flutter329 = flutterPackages.v3_29;
4945 flutter327 = flutterPackages.v3_27;
4946 flutter324 = flutterPackages.v3_24;
4947
4948 fpc = callPackage ../development/compilers/fpc {
4949 # https://github.com/NixOS/nixpkgs/issues/416485
4950 # TODO: remove when upstream issue is fixed:
4951 # https://gitlab.com/freepascal.org/fpc/source/-/issues/41045
4952 stdenv =
4953 if stdenv.cc.isClang && stdenv.hostPlatform.isx86_64 then llvmPackages_17.stdenv else stdenv;
4954 };
4955
4956 gambit = callPackage ../development/compilers/gambit { };
4957 gambit-unstable = callPackage ../development/compilers/gambit/unstable.nix { };
4958 gambit-support = callPackage ../development/compilers/gambit/gambit-support.nix { };
4959 gerbil = callPackage ../development/compilers/gerbil { };
4960 gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
4961 gerbil-support = callPackage ../development/compilers/gerbil/gerbil-support.nix { };
4962 gerbilPackages-unstable = pkgs.gerbil-support.gerbilPackages-unstable; # NB: don't recurseIntoAttrs for (unstable!) libraries
4963 glow-lang = pkgs.gerbilPackages-unstable.glow-lang;
4964
4965 default-gcc-version = 14;
4966 gcc = pkgs.${"gcc${toString default-gcc-version}"};
4967 gccFun = callPackage ../development/compilers/gcc;
4968 gcc-unwrapped = gcc.cc;
4969
4970 inherit
4971 (rec {
4972 # NOTE: keep this with the "NG" label until we're ready to drop the monolithic GCC
4973 gccNGPackagesSet = recurseIntoAttrs (callPackages ../development/compilers/gcc/ng { });
4974 gccNGPackages_15 = gccNGPackagesSet."15";
4975 mkGCCNGPackages = gccNGPackagesSet.mkPackage;
4976 })
4977 gccNGPackages_15
4978 mkGCCNGPackages
4979 ;
4980
4981 wrapNonDeterministicGcc =
4982 stdenv: ccWrapper:
4983 if ccWrapper.isGNU then
4984 ccWrapper.overrideAttrs (old: {
4985 env = old.env // {
4986 cc = old.env.cc.override {
4987 reproducibleBuild = false;
4988 profiledCompiler = with stdenv; (!isDarwin && hostPlatform.isx86);
4989 };
4990 };
4991 })
4992 else
4993 ccWrapper;
4994
4995 gnuStdenv =
4996 if stdenv.cc.isGNU then
4997 stdenv
4998 else
4999 gccStdenv.override {
5000 cc = gccStdenv.cc.override {
5001 bintools = buildPackages.binutils;
5002 };
5003 };
5004
5005 gccStdenv =
5006 if stdenv.cc.isGNU then
5007 stdenv
5008 else
5009 stdenv.override {
5010 cc = buildPackages.gcc;
5011 allowedRequisites = null;
5012 # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses
5013 # clang's internal assembler).
5014 extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc;
5015 };
5016
5017 gcc9Stdenv = overrideCC gccStdenv buildPackages.gcc9;
5018 gcc10Stdenv = overrideCC gccStdenv buildPackages.gcc10;
5019 gcc11Stdenv = overrideCC gccStdenv buildPackages.gcc11;
5020 gcc12Stdenv = overrideCC gccStdenv buildPackages.gcc12;
5021 gcc13Stdenv = overrideCC gccStdenv buildPackages.gcc13;
5022 gcc14Stdenv = overrideCC gccStdenv buildPackages.gcc14;
5023 gcc15Stdenv = overrideCC gccStdenv buildPackages.gcc15;
5024
5025 # This is not intended for use in nixpkgs but for providing a faster-running
5026 # compiler to nixpkgs users by building gcc with reproducibility-breaking
5027 # profile-guided optimizations
5028 fastStdenv = overrideCC gccStdenv (wrapNonDeterministicGcc gccStdenv buildPackages.gcc_latest);
5029
5030 wrapCCMulti =
5031 cc:
5032 let
5033 # Binutils with glibc multi
5034 bintools = cc.bintools.override {
5035 libc = glibc_multi;
5036 };
5037 in
5038 lowPrio (wrapCCWith {
5039 cc = cc.cc.override {
5040 stdenv = overrideCC stdenv (wrapCCWith {
5041 cc = cc.cc;
5042 inherit bintools;
5043 libc = glibc_multi;
5044 });
5045 profiledCompiler = false;
5046 enableMultilib = true;
5047 };
5048 libc = glibc_multi;
5049 inherit bintools;
5050 extraBuildCommands = ''
5051 echo "dontMoveLib64=1" >> $out/nix-support/setup-hook
5052 '';
5053 });
5054
5055 wrapClangMulti =
5056 clang:
5057 callPackage ../development/compilers/llvm/multi.nix {
5058 inherit clang;
5059 gcc32 = pkgsi686Linux.gcc;
5060 gcc64 = pkgs.gcc;
5061 };
5062
5063 gcc_multi = wrapCCMulti gcc;
5064 clang_multi = wrapClangMulti clang;
5065
5066 gccMultiStdenv = overrideCC stdenv buildPackages.gcc_multi;
5067 clangMultiStdenv = overrideCC stdenv buildPackages.clang_multi;
5068 multiStdenv = if stdenv.cc.isClang then clangMultiStdenv else gccMultiStdenv;
5069
5070 gcc_debug = lowPrio (
5071 wrapCC (
5072 gcc.cc.overrideAttrs {
5073 dontStrip = true;
5074 }
5075 )
5076 );
5077
5078 gccCrossLibcStdenv = overrideCC stdenvNoCC buildPackages.gccWithoutTargetLibc;
5079
5080 # The GCC used to build libc for the target platform. Normal gccs will be
5081 # built with, and use, that cross-compiled libc.
5082 gccWithoutTargetLibc =
5083 let
5084 libc1 = binutilsNoLibc.libc;
5085 in
5086 (wrapCCWith {
5087 cc = gccFun {
5088 # copy-pasted
5089 inherit noSysDirs;
5090 majorMinorVersion = toString default-gcc-version;
5091
5092 reproducibleBuild = true;
5093 profiledCompiler = false;
5094
5095 isl = if !stdenv.hostPlatform.isDarwin then isl_0_20 else null;
5096
5097 withoutTargetLibc = true;
5098 langCC = false;
5099 libcCross = libc1;
5100 targetPackages.stdenv.cc.bintools = binutilsNoLibc;
5101 enableShared =
5102 stdenv.targetPlatform.hasSharedLibraries
5103
5104 # temporarily disabled due to breakage;
5105 # see https://github.com/NixOS/nixpkgs/pull/243249
5106 && !stdenv.targetPlatform.isWindows
5107 && !(stdenv.targetPlatform.useLLVM or false);
5108 };
5109 bintools = binutilsNoLibc;
5110 libc = libc1;
5111 extraPackages = [ ];
5112 }).overrideAttrs
5113 (prevAttrs: {
5114 meta = prevAttrs.meta // {
5115 badPlatforms =
5116 (prevAttrs.meta.badPlatforms or [ ])
5117 ++ lib.optionals (stdenv.targetPlatform == stdenv.hostPlatform) [ stdenv.hostPlatform.system ];
5118 };
5119 });
5120
5121 inherit (callPackage ../development/compilers/gcc/all.nix { inherit noSysDirs; })
5122 gcc9
5123 gcc10
5124 gcc11
5125 gcc12
5126 gcc13
5127 gcc14
5128 gcc15
5129 ;
5130
5131 gcc_latest = gcc15;
5132
5133 libgccjit = gcc.cc.override {
5134 name = "libgccjit";
5135 langFortran = false;
5136 langCC = false;
5137 langC = false;
5138 profiledCompiler = false;
5139 langJit = true;
5140 enableLTO = false;
5141 };
5142
5143 gnat = gnat13; # When changing this, update also gnatPackages
5144
5145 gnat11 = wrapCC (
5146 gcc11.cc.override {
5147 name = "gnat";
5148 langC = true;
5149 langCC = false;
5150 langAda = true;
5151 profiledCompiler = false;
5152 # As per upstream instructions building a cross compiler
5153 # should be done with a (native) compiler of the same version.
5154 # If we are cross-compiling GNAT, we may as well do the same.
5155 gnat-bootstrap =
5156 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5157 buildPackages.gnat-bootstrap11
5158 else
5159 buildPackages.gnat11;
5160 stdenv =
5161 if
5162 stdenv.hostPlatform == stdenv.targetPlatform
5163 && stdenv.buildPlatform == stdenv.hostPlatform
5164 && stdenv.buildPlatform.isDarwin
5165 && stdenv.buildPlatform.isx86_64
5166 then
5167 overrideCC stdenv gnat-bootstrap11
5168 else
5169 stdenv;
5170 }
5171 );
5172
5173 gnat12 = wrapCC (
5174 gcc12.cc.override {
5175 name = "gnat";
5176 langC = true;
5177 langCC = false;
5178 langAda = true;
5179 profiledCompiler = false;
5180 # As per upstream instructions building a cross compiler
5181 # should be done with a (native) compiler of the same version.
5182 # If we are cross-compiling GNAT, we may as well do the same.
5183 gnat-bootstrap =
5184 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5185 buildPackages.gnat-bootstrap12
5186 else
5187 buildPackages.gnat12;
5188 stdenv =
5189 if
5190 stdenv.hostPlatform == stdenv.targetPlatform
5191 && stdenv.buildPlatform == stdenv.hostPlatform
5192 && stdenv.buildPlatform.isDarwin
5193 && stdenv.buildPlatform.isx86_64
5194 then
5195 overrideCC stdenv gnat-bootstrap12
5196 else
5197 stdenv;
5198 }
5199 );
5200
5201 gnat13 = wrapCC (
5202 gcc13.cc.override {
5203 name = "gnat";
5204 langC = true;
5205 langCC = false;
5206 langAda = true;
5207 profiledCompiler = false;
5208 # As per upstream instructions building a cross compiler
5209 # should be done with a (native) compiler of the same version.
5210 # If we are cross-compiling GNAT, we may as well do the same.
5211 gnat-bootstrap =
5212 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5213 buildPackages.gnat-bootstrap13
5214 else
5215 buildPackages.gnat13;
5216 stdenv =
5217 if
5218 stdenv.hostPlatform == stdenv.targetPlatform
5219 && stdenv.buildPlatform == stdenv.hostPlatform
5220 && stdenv.buildPlatform.isDarwin
5221 && stdenv.buildPlatform.isx86_64
5222 then
5223 overrideCC stdenv gnat-bootstrap13
5224 else
5225 stdenv;
5226 }
5227 );
5228
5229 gnat14 = wrapCC (
5230 gcc14.cc.override {
5231 name = "gnat";
5232 langC = true;
5233 langCC = false;
5234 langAda = true;
5235 profiledCompiler = false;
5236 # As per upstream instructions building a cross compiler
5237 # should be done with a (native) compiler of the same version.
5238 # If we are cross-compiling GNAT, we may as well do the same.
5239 gnat-bootstrap =
5240 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5241 buildPackages.gnat-bootstrap14
5242 else
5243 buildPackages.gnat14;
5244 stdenv =
5245 if
5246 stdenv.hostPlatform == stdenv.targetPlatform
5247 && stdenv.buildPlatform == stdenv.hostPlatform
5248 && stdenv.buildPlatform.isDarwin
5249 && stdenv.buildPlatform.isx86_64
5250 then
5251 overrideCC stdenv gnat-bootstrap14
5252 else
5253 stdenv;
5254 }
5255 );
5256
5257 gnat15 = wrapCC (
5258 gcc15.cc.override {
5259 name = "gnat";
5260 langC = true;
5261 langCC = false;
5262 langAda = true;
5263 profiledCompiler = false;
5264 # As per upstream instructions building a cross compiler
5265 # should be done with a (native) compiler of the same version.
5266 # If we are cross-compiling GNAT, we may as well do the same.
5267 gnat-bootstrap =
5268 if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5269 buildPackages.gnat-bootstrap14
5270 else
5271 buildPackages.gnat15;
5272 stdenv =
5273 if
5274 stdenv.hostPlatform == stdenv.targetPlatform
5275 && stdenv.buildPlatform == stdenv.hostPlatform
5276 && stdenv.buildPlatform.isDarwin
5277 && stdenv.buildPlatform.isx86_64
5278 then
5279 overrideCC stdenv gnat-bootstrap14
5280 else
5281 stdenv;
5282 }
5283 );
5284
5285 gnat-bootstrap = gnat-bootstrap12;
5286 gnat-bootstrap11 = wrapCC (
5287 callPackage ../development/compilers/gnat-bootstrap { majorVersion = "11"; }
5288 );
5289 gnat-bootstrap12 = wrapCCWith (
5290 {
5291 cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "12"; };
5292 }
5293 // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
5294 bintools = bintoolsDualAs;
5295 }
5296 );
5297 gnat-bootstrap13 = wrapCCWith (
5298 {
5299 cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "13"; };
5300 }
5301 // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
5302 bintools = bintoolsDualAs;
5303 }
5304 );
5305 gnat-bootstrap14 = wrapCCWith (
5306 {
5307 cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "14"; };
5308 }
5309 // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
5310 bintools = bintoolsDualAs;
5311 }
5312 );
5313
5314 gnat12Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat12; });
5315 gnat13Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat13; });
5316 gnat14Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat14; });
5317 gnat15Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat15; });
5318 gnatPackages = gnat13Packages;
5319
5320 inherit (gnatPackages)
5321 gprbuild
5322 gnatprove
5323 ;
5324
5325 gccgo = wrapCC (
5326 gcc.cc.override {
5327 name = "gccgo";
5328 langCC = true; # required for go.
5329 langC = true;
5330 langGo = true;
5331 langJit = true;
5332 profiledCompiler = false;
5333 }
5334 // {
5335 # not supported on darwin: https://github.com/golang/go/issues/463
5336 meta.broken = stdenv.hostPlatform.isDarwin;
5337 }
5338 );
5339
5340 gccgo12 = wrapCC (
5341 gcc12.cc.override {
5342 name = "gccgo";
5343 langCC = true; # required for go.
5344 langC = true;
5345 langGo = true;
5346 langJit = true;
5347 profiledCompiler = false;
5348 }
5349 // {
5350 # not supported on darwin: https://github.com/golang/go/issues/463
5351 meta.broken = stdenv.hostPlatform.isDarwin;
5352 }
5353 );
5354
5355 gccgo13 = wrapCC (
5356 gcc13.cc.override {
5357 name = "gccgo";
5358 langCC = true; # required for go.
5359 langC = true;
5360 langGo = true;
5361 langJit = true;
5362 profiledCompiler = false;
5363 }
5364 // {
5365 # not supported on darwin: https://github.com/golang/go/issues/463
5366 meta.broken = stdenv.hostPlatform.isDarwin;
5367 }
5368 );
5369
5370 gccgo14 = wrapCC (
5371 gcc14.cc.override {
5372 name = "gccgo";
5373 langCC = true; # required for go.
5374 langC = true;
5375 langGo = true;
5376 langJit = true;
5377 profiledCompiler = false;
5378 }
5379 // {
5380 # not supported on darwin: https://github.com/golang/go/issues/463
5381 meta.broken = stdenv.hostPlatform.isDarwin;
5382 }
5383 );
5384
5385 gccgo15 = wrapCC (
5386 gcc15.cc.override {
5387 name = "gccgo";
5388 langCC = true; # required for go.
5389 langC = true;
5390 langGo = true;
5391 langJit = true;
5392 profiledCompiler = false;
5393 }
5394 // {
5395 # not supported on darwin: https://github.com/golang/go/issues/463
5396 meta.broken = stdenv.hostPlatform.isDarwin;
5397 }
5398 );
5399
5400 ghdl-mcode = callPackage ../by-name/gh/ghdl/package.nix { backend = "mcode"; };
5401
5402 ghdl-gcc = callPackage ../by-name/gh/ghdl/package.nix { backend = "gcc"; };
5403
5404 ghdl-llvm = callPackage ../by-name/gh/ghdl/package.nix {
5405 backend = "llvm";
5406 inherit (llvmPackages_15) llvm;
5407 };
5408
5409 gcc-arm-embedded = gcc-arm-embedded-14;
5410
5411 # It would be better to match the default gcc so that there are no linking errors
5412 # when using C/C++ libraries in D packages, but right now versions >= 12 are broken.
5413 gdc = gdc11;
5414 gdc11 = wrapCC (
5415 gcc11.cc.override {
5416 name = "gdc";
5417 langCC = false;
5418 langC = false;
5419 langD = true;
5420 profiledCompiler = false;
5421 }
5422 );
5423
5424 # Haskell and GHC
5425
5426 haskell = callPackage ./haskell-packages.nix { };
5427
5428 haskellPackages =
5429 dontRecurseIntoAttrs
5430 # Prefer native-bignum to avoid linking issues with gmp
5431 # GHC 9.6 rts can't be built statically with hadrian, so we need to use 9.4
5432 # until 9.8 is ready
5433 (
5434 if stdenv.hostPlatform.isStatic then
5435 haskell.packages.native-bignum.ghc94
5436 # JS backend can't use gmp
5437 else if stdenv.hostPlatform.isGhcjs then
5438 haskell.packages.native-bignum.ghc98
5439 # ICEs horribly on i686, see https://gitlab.haskell.org/ghc/ghc/-/issues/25904
5440 # FIXME: remove when fixed
5441 else if stdenv.hostPlatform.isi686 then
5442 haskell.packages.ghc96
5443 else
5444 haskell.packages.ghc98
5445 )
5446 // {
5447 __recurseIntoDerivationForReleaseJobs = true;
5448 };
5449
5450 # haskellPackages.ghc is build->host (it exposes the compiler used to build the
5451 # set, similarly to stdenv.cc), but pkgs.ghc should be host->target to be more
5452 # consistent with the gcc, gnat, clang etc. derivations
5453 #
5454 # We use targetPackages.haskellPackages.ghc if available since this also has
5455 # the withPackages wrapper available. In the final cross-compiled package set
5456 # however, targetPackages won't be populated, so we need to fall back to the
5457 # plain, cross-compiled compiler (which is only theoretical at the moment).
5458 ghc =
5459 targetPackages.haskellPackages.ghc or
5460 # Prefer native-bignum to avoid linking issues with gmp
5461 # Use 9.4 for static over broken 9.6
5462 (
5463 if stdenv.targetPlatform.isStatic then
5464 haskell.compiler.native-bignum.ghc94
5465 # JS backend can't use GMP
5466 else if stdenv.targetPlatform.isGhcjs then
5467 haskell.compiler.native-bignum.ghc98
5468 # ICEs horribly on i686, see https://gitlab.haskell.org/ghc/ghc/-/issues/25904
5469 # FIXME: remove when fixed
5470 else if stdenv.hostPlatform.isi686 then
5471 haskell.compiler.ghc96
5472 else
5473 haskell.compiler.ghc98
5474 );
5475
5476 alex = haskell.lib.compose.justStaticExecutables haskellPackages.alex;
5477
5478 happy = haskell.lib.compose.justStaticExecutables haskellPackages.happy;
5479
5480 hscolour = haskell.lib.compose.justStaticExecutables haskellPackages.hscolour;
5481
5482 cabal-install = haskell.lib.compose.justStaticExecutables haskellPackages.cabal-install;
5483
5484 stack =
5485 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
5486 (
5487 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
5488 lib.id
5489 else
5490 haskell.lib.compose.justStaticExecutables
5491 )
5492 haskellPackages.stack;
5493
5494 hlint = haskell.lib.compose.justStaticExecutables haskellPackages.hlint;
5495
5496 krank = haskell.lib.compose.justStaticExecutables haskellPackages.krank;
5497
5498 stylish-cabal = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-cabal;
5499
5500 lhs2tex = haskellPackages.lhs2tex;
5501
5502 all-cabal-hashes = callPackage ../data/misc/hackage { };
5503
5504 purescript = callPackage ../development/compilers/purescript/purescript { };
5505
5506 purescript-psa = nodePackages.purescript-psa;
5507
5508 purenix = haskell.lib.compose.justStaticExecutables haskellPackages.purenix;
5509
5510 spago = callPackage ../development/tools/purescript/spago { };
5511
5512 pulp = nodePackages.pulp;
5513
5514 pscid = nodePackages.pscid;
5515
5516 coreboot-toolchain = recurseIntoAttrs (
5517 callPackage ../development/tools/misc/coreboot-toolchain { }
5518 );
5519
5520 spicedb = callPackage ../servers/spicedb { };
5521 spicedb-zed = callPackage ../servers/spicedb/zed.nix { };
5522
5523 tamarin-prover = (
5524 callPackage ../applications/science/logic/tamarin-prover {
5525 # 2025-03-07: dependency fclabels doesn't compile with GHC >= 9.8
5526 # https://github.com/sebastiaanvisser/fclabels/issues/46
5527 haskellPackages = haskell.packages.ghc96;
5528 graphviz = graphviz-nox;
5529 }
5530 );
5531
5532 inherit
5533 (callPackage ../development/compilers/haxe {
5534 })
5535 haxe_4_3
5536 haxe_4_1
5537 haxe_4_0
5538 ;
5539
5540 haxe = haxe_4_3;
5541 haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { });
5542 inherit (haxePackages) hxcpp;
5543
5544 falcon = callPackage ../development/interpreters/falcon {
5545 stdenv = gcc10Stdenv;
5546 };
5547
5548 dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix { });
5549
5550 gopro-tool = callPackage ../by-name/go/gopro-tool/package.nix {
5551 vlc = vlc.overrideAttrs (old: {
5552 buildInputs = old.buildInputs ++ [ x264 ];
5553 });
5554 };
5555
5556 gwe = callPackage ../tools/misc/gwe {
5557 nvidia_x11 = linuxPackages.nvidia_x11;
5558 };
5559
5560 gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { };
5561
5562 idrisPackages = dontRecurseIntoAttrs (
5563 callPackage ../development/idris-modules {
5564 idris-no-deps = haskellPackages.idris;
5565 pkgs = pkgs.__splicedPackages;
5566 }
5567 );
5568
5569 idris = idrisPackages.with-packages [ idrisPackages.base ];
5570
5571 idris2Packages = recurseIntoAttrs (callPackage ../development/compilers/idris2 { });
5572
5573 inherit (idris2Packages) idris2;
5574
5575 inherit (callPackage ../development/tools/database/indradb { })
5576 indradb-server
5577 indradb-client
5578 ;
5579
5580 instawow = callPackage ../games/instawow/default.nix { };
5581
5582 irony-server = callPackage ../development/tools/irony-server {
5583 # The repository of irony to use -- must match the version of the employed emacs
5584 # package. Wishing we could merge it into one irony package, to avoid this issue,
5585 # but its emacs-side expression is autogenerated, and we can't hook into it (other
5586 # than peek into its version).
5587 inherit (emacs.pkgs.melpaStablePackages) irony;
5588 };
5589
5590 openjfx17 = openjfx;
5591 openjfx21 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "21"; };
5592 openjfx23 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "23"; };
5593 openjfx24 = callPackage ../by-name/op/openjfx/package.nix { featureVersion = "24"; };
5594
5595 openjdk8-bootstrap = javaPackages.compiler.openjdk8-bootstrap;
5596 openjdk8 = javaPackages.compiler.openjdk8;
5597 openjdk8_headless = javaPackages.compiler.openjdk8.headless;
5598 jdk8 = openjdk8;
5599 jdk8_headless = openjdk8_headless;
5600 jre8 = openjdk8.jre;
5601 jre8_headless = openjdk8_headless.jre;
5602
5603 openjdk11-bootstrap = javaPackages.compiler.openjdk11-bootstrap;
5604 openjdk11 = javaPackages.compiler.openjdk11;
5605 openjdk11_headless = javaPackages.compiler.openjdk11.headless;
5606 jdk11 = openjdk11;
5607 jdk11_headless = openjdk11_headless;
5608
5609 openjdk17-bootstrap = javaPackages.compiler.openjdk17-bootstrap;
5610 openjdk17 = javaPackages.compiler.openjdk17;
5611 openjdk17_headless = javaPackages.compiler.openjdk17.headless;
5612 jdk17 = openjdk17;
5613 jdk17_headless = openjdk17_headless;
5614
5615 openjdk21 = javaPackages.compiler.openjdk21;
5616 openjdk21_headless = javaPackages.compiler.openjdk21.headless;
5617 jdk21 = openjdk21;
5618 jdk21_headless = openjdk21_headless;
5619
5620 openjdk23 = javaPackages.compiler.openjdk23;
5621 openjdk23_headless = javaPackages.compiler.openjdk23.headless;
5622 jdk23 = openjdk23;
5623 jdk23_headless = openjdk23_headless;
5624
5625 openjdk24 = javaPackages.compiler.openjdk24;
5626 openjdk24_headless = javaPackages.compiler.openjdk24.headless;
5627 jdk24 = openjdk24;
5628 jdk24_headless = openjdk24_headless;
5629
5630 # default JDK
5631 jdk = jdk21;
5632 jdk_headless = jdk21_headless;
5633
5634 # Since the introduction of the Java Platform Module System in Java 9, Java
5635 # no longer ships a separate JRE package.
5636 #
5637 # If you are building a 'minimal' system/image, you are encouraged to use
5638 # 'jre_minimal' to build a bespoke JRE containing only the modules you need.
5639 #
5640 # For a general-purpose system, 'jre' defaults to the full JDK:
5641 jre = jdk;
5642 jre_headless = jdk_headless;
5643
5644 jre11_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5645 jdk = jdk11;
5646 jdkOnBuild = buildPackages.jdk11;
5647 };
5648 jre17_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5649 jdk = jdk17;
5650 jdkOnBuild = buildPackages.jdk17;
5651 };
5652 jre21_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5653 jdk = jdk21;
5654 jdkOnBuild = buildPackages.jdk21;
5655 };
5656 jre_minimal = callPackage ../development/compilers/openjdk/jre.nix {
5657 jdkOnBuild = buildPackages.jdk;
5658 };
5659
5660 openjdk = jdk;
5661 openjdk_headless = jdk_headless;
5662
5663 graalvmPackages = recurseIntoAttrs (callPackage ../development/compilers/graalvm { });
5664 buildGraalvmNativeImage = callPackage ../build-support/build-graalvm-native-image { };
5665
5666 openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt { };
5667
5668 inherit (callPackage ../development/compilers/julia { })
5669 julia_19-bin
5670 julia_110-bin
5671 julia_111-bin
5672 julia_19
5673 julia_110
5674 julia_111
5675 ;
5676
5677 julia-lts = julia_110-bin;
5678 julia-stable = julia_111;
5679 julia = julia-stable;
5680
5681 julia-lts-bin = julia_110-bin;
5682 julia-stable-bin = julia_111-bin;
5683 julia-bin = julia-stable-bin;
5684
5685 koka = haskell.lib.compose.justStaticExecutables (
5686 haskellPackages.callPackage ../development/compilers/koka { }
5687 );
5688
5689 kotlin = callPackage ../development/compilers/kotlin { };
5690 kotlin-native = callPackage ../development/compilers/kotlin/native.nix { };
5691
5692 lazarus = callPackage ../development/compilers/fpc/lazarus.nix {
5693 fpc = fpc;
5694 };
5695
5696 lazarus-qt5 = libsForQt5.callPackage ../development/compilers/fpc/lazarus.nix {
5697 fpc = fpc;
5698 withQt = true;
5699 };
5700
5701 lazarus-qt6 = qt6Packages.callPackage ../development/compilers/fpc/lazarus.nix {
5702 fpc = fpc;
5703 withQt = true;
5704 };
5705
5706 lld = llvmPackages.lld;
5707 lld_12 = llvmPackages_12.lld;
5708 lld_13 = llvmPackages_13.lld;
5709 lld_14 = llvmPackages_14.lld;
5710 lld_15 = llvmPackages_15.lld;
5711 lld_16 = llvmPackages_16.lld;
5712 lld_17 = llvmPackages_17.lld;
5713
5714 lldb = llvmPackages.lldb;
5715 lldb_12 = llvmPackages_12.lldb;
5716 lldb_13 = llvmPackages_13.lldb;
5717 lldb_14 = llvmPackages_14.lldb;
5718 lldb_15 = llvmPackages_15.lldb;
5719 lldb_16 = llvmPackages_16.lldb;
5720 lldb_17 = llvmPackages_17.lldb;
5721
5722 llvm = llvmPackages.llvm;
5723 llvm_12 = llvmPackages_12.llvm;
5724 llvm_13 = llvmPackages_13.llvm;
5725 llvm_14 = llvmPackages_14.llvm;
5726 llvm_15 = llvmPackages_15.llvm;
5727 llvm_16 = llvmPackages_16.llvm;
5728 llvm_17 = llvmPackages_17.llvm;
5729
5730 mlir_16 = llvmPackages_16.mlir;
5731 mlir_17 = llvmPackages_17.mlir;
5732
5733 libclc = llvmPackages.libclc;
5734 libllvm = llvmPackages.libllvm;
5735 llvm-manpages = llvmPackages.llvm-manpages;
5736
5737 llvmPackages = llvmPackages_19;
5738
5739 inherit
5740 (rec {
5741 llvmPackagesSet = recurseIntoAttrs (callPackages ../development/compilers/llvm { });
5742
5743 llvmPackages_12 = llvmPackagesSet."12";
5744 llvmPackages_13 = llvmPackagesSet."13";
5745 llvmPackages_14 = llvmPackagesSet."14";
5746 llvmPackages_15 = llvmPackagesSet."15";
5747 llvmPackages_16 = llvmPackagesSet."16";
5748 llvmPackages_17 = llvmPackagesSet."17";
5749
5750 llvmPackages_18 = llvmPackagesSet."18";
5751 clang_18 = llvmPackages_18.clang;
5752 lld_18 = llvmPackages_18.lld;
5753 lldb_18 = llvmPackages_18.lldb;
5754 llvm_18 = llvmPackages_18.llvm;
5755
5756 llvmPackages_19 = llvmPackagesSet."19";
5757 clang_19 = llvmPackages_19.clang;
5758 lld_19 = llvmPackages_19.lld;
5759 lldb_19 = llvmPackages_19.lldb;
5760 llvm_19 = llvmPackages_19.llvm;
5761 bolt_19 = llvmPackages_19.bolt;
5762
5763 llvmPackages_20 = llvmPackagesSet."20";
5764 clang_20 = llvmPackages_20.clang;
5765 lld_20 = llvmPackages_20.lld;
5766 lldb_20 = llvmPackages_20.lldb;
5767 llvm_20 = llvmPackages_20.llvm;
5768 bolt_20 = llvmPackages_20.bolt;
5769
5770 llvmPackages_21 = llvmPackagesSet."21";
5771 clang_21 = llvmPackages_21.clang;
5772 lld_21 = llvmPackages_21.lld;
5773 lldb_21 = llvmPackages_21.lldb;
5774 llvm_21 = llvmPackages_21.llvm;
5775 bolt_21 = llvmPackages_21.bolt;
5776
5777 mkLLVMPackages = llvmPackagesSet.mkPackage;
5778 })
5779 llvmPackages_12
5780 llvmPackages_13
5781 llvmPackages_14
5782 llvmPackages_15
5783 llvmPackages_16
5784 llvmPackages_17
5785 llvmPackages_18
5786 clang_18
5787 lld_18
5788 lldb_18
5789 llvm_18
5790 llvmPackages_19
5791 clang_19
5792 lld_19
5793 lldb_19
5794 llvm_19
5795 bolt_19
5796 llvmPackages_20
5797 clang_20
5798 lld_20
5799 lldb_20
5800 llvm_20
5801 bolt_20
5802 llvmPackages_21
5803 clang_21
5804 lld_21
5805 lldb_21
5806 llvm_21
5807 bolt_21
5808 mkLLVMPackages
5809 ;
5810
5811 mercury = callPackage ../development/compilers/mercury {
5812 jdk_headless = openjdk8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
5813 };
5814
5815 mitscheme = callPackage ../development/compilers/mit-scheme {
5816 texinfo = texinfo6;
5817 };
5818
5819 mitschemeX11 = mitscheme.override {
5820 enableX11 = true;
5821 };
5822
5823 inherit (callPackage ../development/compilers/mlton { })
5824 mlton20130715
5825 mlton20180207Binary
5826 mlton20180207
5827 mlton20210117
5828 mltonHEAD
5829 ;
5830
5831 mlton = mlton20210117;
5832
5833 mono = mono6;
5834
5835 mono4 = lowPrio (callPackage ../development/compilers/mono/4.nix { });
5836
5837 mono5 = callPackage ../development/compilers/mono/5.nix { };
5838
5839 mono6 = callPackage ../development/compilers/mono/6.nix { };
5840
5841 mozart2 = callPackage ../development/compilers/mozart {
5842 emacs = emacs-nox;
5843 jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
5844 };
5845
5846 mozart2-binary = callPackage ../development/compilers/mozart/binary.nix { };
5847
5848 nim = nim2;
5849 nim1 = nim-1_0;
5850 nim2 = nim-2_2;
5851 nim-unwrapped = nim-unwrapped-2_2;
5852 nim-unwrapped-1 = nim-unwrapped-1_0;
5853 nim-unwrapped-2 = nim-unwrapped-2_2;
5854
5855 buildNimPackage = callPackage ../build-support/build-nim-package.nix { };
5856 buildNimSbom = callPackage ../build-support/build-nim-sbom.nix { };
5857 nimOverrides = callPackage ./nim-overrides.nix { };
5858
5859 nextpnrWithGui = libsForQt5.callPackage ../by-name/ne/nextpnr/package.nix {
5860 enableGui = true;
5861 };
5862
5863 obliv-c = callPackage ../development/compilers/obliv-c {
5864 stdenv = gcc10Stdenv;
5865 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
5866 };
5867
5868 ocaml-ng = callPackage ./ocaml-packages.nix { };
5869 ocaml = ocamlPackages.ocaml;
5870
5871 ocamlPackages = recurseIntoAttrs ocaml-ng.ocamlPackages;
5872
5873 ocaml-crunch = ocamlPackages.crunch.bin;
5874
5875 inherit (ocaml-ng.ocamlPackages_4_14)
5876 ocamlformat_0_19_0
5877 ocamlformat_0_20_0
5878 ocamlformat_0_20_1
5879 ocamlformat_0_21_0
5880 ocamlformat_0_22_4
5881 ocamlformat_0_23_0
5882 ocamlformat_0_24_1
5883 ocamlformat_0_25_1
5884 ocamlformat_0_26_0
5885 ocamlformat_0_26_1
5886 ;
5887
5888 inherit (ocaml-ng.ocamlPackages_5_2)
5889 ocamlformat_0_26_2
5890 ;
5891
5892 inherit (ocamlPackages)
5893 ocamlformat # latest version
5894 ocamlformat_0_27_0
5895 ;
5896
5897 inherit (ocamlPackages) odig;
5898
5899 ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml.nix { };
5900
5901 opam = callPackage ../development/tools/ocaml/opam { };
5902
5903 opam-installer = callPackage ../development/tools/ocaml/opam/installer.nix { };
5904
5905 wrapWatcom = callPackage ../development/compilers/open-watcom/wrapper.nix { };
5906 open-watcom-v2-unwrapped = callPackage ../development/compilers/open-watcom/v2.nix { };
5907 open-watcom-v2 = wrapWatcom open-watcom-v2-unwrapped { };
5908 open-watcom-bin-unwrapped = callPackage ../development/compilers/open-watcom/bin.nix { };
5909 open-watcom-bin = wrapWatcom open-watcom-bin-unwrapped { };
5910
5911 rml = callPackage ../development/compilers/rml {
5912 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
5913 };
5914
5915 wrapRustcWith = { rustc-unwrapped, ... }@args: callPackage ../build-support/rust/rustc-wrapper args;
5916 wrapRustc = rustc-unwrapped: wrapRustcWith { inherit rustc-unwrapped; };
5917
5918 rust_1_88 = callPackage ../development/compilers/rust/1_88.nix {
5919 llvm_20 = llvmPackages_20.libllvm;
5920 };
5921 rust = rust_1_88;
5922
5923 mrustc = callPackage ../development/compilers/mrustc { };
5924 mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { };
5925 mrustc-bootstrap = callPackage ../development/compilers/mrustc/bootstrap.nix {
5926 openssl = openssl_1_1;
5927 };
5928
5929 rustPackages_1_88 = rust_1_88.packages.stable;
5930 rustPackages = rustPackages_1_88;
5931
5932 inherit (rustPackages)
5933 cargo
5934 cargo-auditable
5935 cargo-auditable-cargo-wrapper
5936 clippy
5937 rustc
5938 rustPlatform
5939 ;
5940
5941 makeRustPlatform = callPackage ../development/compilers/rust/make-rust-platform.nix { };
5942
5943 buildRustCrate =
5944 let
5945 # Returns a true if the builder's rustc was built with support for the target.
5946 targetAlreadyIncluded = lib.elem stdenv.hostPlatform.rust.rustcTarget (
5947 lib.splitString "," (
5948 lib.removePrefix "--target=" (
5949 lib.elemAt (lib.filter (
5950 f: lib.hasPrefix "--target=" f
5951 ) pkgsBuildBuild.rustc.unwrapped.configureFlags) 0
5952 )
5953 )
5954 );
5955 in
5956 callPackage ../build-support/rust/build-rust-crate (
5957 { }
5958 // lib.optionalAttrs (stdenv.hostPlatform.libc == null) {
5959 stdenv = stdenvNoCC; # Some build targets without libc will fail to evaluate with a normal stdenv.
5960 }
5961 // lib.optionalAttrs targetAlreadyIncluded { inherit (pkgsBuildBuild) rustc cargo; } # Optimization.
5962 );
5963 buildRustCrateHelpers = callPackage ../build-support/rust/build-rust-crate/helpers.nix { };
5964
5965 cargo-flamegraph = callPackage ../by-name/ca/cargo-flamegraph/package.nix {
5966 inherit (linuxPackages) perf;
5967 };
5968
5969 defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { };
5970
5971 inherit (callPackages ../development/tools/rust/cargo-pgrx { })
5972 cargo-pgrx_0_12_0_alpha_1
5973 cargo-pgrx_0_12_6
5974 cargo-pgrx_0_14_1
5975 cargo-pgrx
5976 ;
5977
5978 buildPgrxExtension = callPackage ../development/tools/rust/cargo-pgrx/buildPgrxExtension.nix { };
5979 opensmalltalk-vm = callPackage ../development/compilers/opensmalltalk-vm { };
5980
5981 rustfmt = rustPackages.rustfmt;
5982 rust-bindgen-unwrapped = callPackage ../development/tools/rust/bindgen/unwrapped.nix { };
5983 rust-bindgen = callPackage ../development/tools/rust/bindgen { };
5984 rustup = callPackage ../development/tools/rust/rustup { };
5985 rustup-toolchain-install-master =
5986 callPackage ../development/tools/rust/rustup-toolchain-install-master
5987 {
5988 };
5989 scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; };
5990 scala_2_13 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.13"; };
5991 scala_3 = callPackage ../development/compilers/scala { };
5992
5993 scala = scala_3;
5994 scala-runners = callPackage ../development/compilers/scala-runners {
5995 coursier = coursier.override { jre = jdk8; };
5996 };
5997
5998 scalafix = callPackage ../development/tools/scalafix {
5999 jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
6000 };
6001 # smlnjBootstrap should be redundant, now that smlnj works on Darwin natively
6002 smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { };
6003 smlnj = callPackage ../development/compilers/smlnj { };
6004
6005 squeak = callPackage ../development/compilers/squeak {
6006 stdenv = clangStdenv;
6007 };
6008
6009 squirrel-sql = callPackage ../development/tools/database/squirrel-sql {
6010 drivers = [
6011 jtds_jdbc
6012 mssql_jdbc
6013 mysql_jdbc
6014 postgresql_jdbc
6015 ];
6016 };
6017
6018 swiftPackages = recurseIntoAttrs (callPackage ../development/compilers/swift { });
6019 inherit (swiftPackages)
6020 swift
6021 swiftpm
6022 sourcekit-lsp
6023 swift-format
6024 swiftpm2nix
6025 ;
6026
6027 swi-prolog-gui = swi-prolog.override { withGui = true; };
6028
6029 # many packages still fail with latest version
6030 tbb = tbb_2020;
6031
6032 teyjus = callPackage ../development/compilers/teyjus {
6033 inherit (ocaml-ng.ocamlPackages_4_14) buildDunePackage;
6034 };
6035
6036 thrust = callPackage ../development/tools/thrust {
6037 gconf = gnome2.GConf;
6038 };
6039
6040 urweb = callPackage ../development/compilers/urweb {
6041 icu = icu67;
6042 };
6043
6044 vcard = python3Packages.toPythonApplication python3Packages.vcard;
6045
6046 inherit (callPackage ../development/compilers/vala { })
6047 vala_0_56
6048 vala
6049 ;
6050
6051 vyper = with python3Packages; toPythonApplication vyper;
6052
6053 wrapCCWith =
6054 {
6055 cc,
6056 # This should be the only bintools runtime dep with this sort of logic. The
6057 # Others should instead delegate to the next stage's choice with
6058 # `targetPackages.stdenv.cc.bintools`. This one is different just to
6059 # provide the default choice, avoiding infinite recursion.
6060 # See the bintools attribute for the logic and reasoning. We need to provide
6061 # a default here, since eval will hit this function when bootstrapping
6062 # stdenv where the bintools attribute doesn't exist, but will never actually
6063 # be evaluated -- callPackage ends up being too eager.
6064 bintools ? pkgs.bintools,
6065 libc ? bintools.libc,
6066 # libc++ from the default LLVM version is bound at the top level, but we
6067 # want the C++ library to be explicitly chosen by the caller, and null by
6068 # default.
6069 libcxx ? null,
6070 extraPackages ? lib.optional (
6071 cc.isGNU or false && stdenv.targetPlatform.isMinGW
6072 ) targetPackages.threads.package,
6073 nixSupport ? { },
6074 ...
6075 }@extraArgs:
6076 callPackage ../build-support/cc-wrapper (
6077 let
6078 self = {
6079 nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
6080 nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
6081 nativePrefix = stdenv.cc.nativePrefix or "";
6082 noLibc = !self.nativeLibc && (self.libc == null);
6083
6084 isGNU = cc.isGNU or false;
6085 isClang = cc.isClang or false;
6086 isArocc = cc.isArocc or false;
6087 isZig = cc.isZig or false;
6088
6089 inherit
6090 cc
6091 bintools
6092 libc
6093 libcxx
6094 extraPackages
6095 nixSupport
6096 zlib
6097 ;
6098 }
6099 // extraArgs;
6100 in
6101 self
6102 );
6103
6104 wrapCC =
6105 cc:
6106 wrapCCWith {
6107 inherit cc;
6108 };
6109
6110 wrapBintoolsWith =
6111 {
6112 bintools,
6113 libc ? targetPackages.libc or pkgs.libc,
6114 ...
6115 }@extraArgs:
6116 callPackage ../build-support/bintools-wrapper (
6117 let
6118 self = {
6119 nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false;
6120 nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false;
6121 nativePrefix = stdenv.cc.nativePrefix or "";
6122
6123 noLibc = (self.libc == null);
6124
6125 inherit bintools libc;
6126 }
6127 // extraArgs;
6128 in
6129 self
6130 );
6131
6132 # prolog
6133 yosys-bluespec = callPackage ../development/compilers/yosys/plugins/bluespec.nix { };
6134 yosys-ghdl = callPackage ../development/compilers/yosys/plugins/ghdl.nix { };
6135 yosys-synlig = callPackage ../development/compilers/yosys/plugins/synlig.nix { };
6136 yosys-symbiflow = callPackage ../development/compilers/yosys/plugins/symbiflow.nix { };
6137
6138 zulu8 = callPackage ../development/compilers/zulu/8.nix { };
6139 zulu11 = callPackage ../development/compilers/zulu/11.nix { };
6140 zulu17 = callPackage ../development/compilers/zulu/17.nix { };
6141 zulu21 = callPackage ../development/compilers/zulu/21.nix { };
6142 zulu23 = callPackage ../development/compilers/zulu/23.nix { };
6143 zulu24 = callPackage ../development/compilers/zulu/24.nix { };
6144 zulu = zulu21;
6145
6146 ### DEVELOPMENT / INTERPRETERS
6147
6148 acl2 = callPackage ../development/interpreters/acl2 { };
6149 acl2-minimal = callPackage ../development/interpreters/acl2 { certifyBooks = false; };
6150
6151 babashka-unwrapped = callPackage ../development/interpreters/babashka { };
6152 babashka = callPackage ../development/interpreters/babashka/wrapped.nix { };
6153
6154 uiua-unstable = callPackage ../by-name/ui/uiua/package.nix { uiua_versionType = "unstable"; };
6155
6156 # BQN interpreters and compilers
6157
6158 mbqn = bqn;
6159
6160 cbqn = cbqn-bootstrap.phase2;
6161 cbqn-replxx = cbqn-bootstrap.phase2-replxx;
6162 cbqn-standalone = cbqn-bootstrap.phase0;
6163 cbqn-standalone-replxx = cbqn-bootstrap.phase0-replxx;
6164
6165 # Below, the classic self-bootstrapping process
6166 cbqn-bootstrap = lib.dontRecurseIntoAttrs {
6167 # Use clang to compile CBQN if we aren't already.
6168 # CBQN's upstream primarily targets and tests clang which means using gcc
6169 # will result in slower binaries and on some platforms failing/broken builds.
6170 # See https://github.com/dzaima/CBQN/issues/12.
6171 #
6172 # Known issues:
6173 #
6174 # * CBQN using gcc is broken at runtime on i686 due to
6175 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58416,
6176 # * CBQN uses some CPP macros gcc doesn't like for aarch64.
6177 stdenv = if !stdenv.cc.isClang then clangStdenv else stdenv;
6178
6179 mbqn-source = buildPackages.mbqn.src;
6180
6181 phase0 = callPackage ../development/interpreters/bqn/cbqn {
6182 inherit (cbqn-bootstrap) mbqn-source stdenv;
6183 generateBytecode = false;
6184 # Not really used, but since null can be dangerous...
6185 bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
6186 };
6187
6188 phase0-replxx = callPackage ../development/interpreters/bqn/cbqn {
6189 inherit (cbqn-bootstrap) mbqn-source stdenv;
6190 enableReplxx = true;
6191 generateBytecode = false;
6192 # Not really used, but since null can be dangerous...
6193 bqn-interpreter = "${lib.getExe' buildPackages.mbqn "bqn"}";
6194 };
6195
6196 phase1 = callPackage ../development/interpreters/bqn/cbqn {
6197 inherit (cbqn-bootstrap) mbqn-source stdenv;
6198 generateBytecode = true;
6199 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
6200 };
6201
6202 phase2 = callPackage ../development/interpreters/bqn/cbqn {
6203 inherit (cbqn-bootstrap) mbqn-source stdenv;
6204 generateBytecode = true;
6205 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
6206 };
6207
6208 phase2-replxx = callPackage ../development/interpreters/bqn/cbqn {
6209 inherit (cbqn-bootstrap) mbqn-source stdenv;
6210 generateBytecode = true;
6211 enableReplxx = true;
6212 bqn-interpreter = "${lib.getExe' buildPackages.cbqn-bootstrap.phase0 "cbqn"}";
6213 };
6214 };
6215
6216 dbqn = callPackage ../by-name/db/dbqn/package.nix {
6217 buildNativeImage = false;
6218 jdk = jre;
6219 stdenv = stdenvNoCC;
6220 };
6221
6222 dbqn-native = dbqn.override {
6223 buildNativeImage = true;
6224 jdk = graalvmPackages.graalvm-ce;
6225 };
6226
6227 clojupyter = callPackage ../applications/editors/jupyter-kernels/clojupyter {
6228 jre = jre8;
6229 };
6230
6231 inherit (callPackage ../applications/editors/jupyter-kernels/xeus-cling { })
6232 cpp11-kernel
6233 cpp14-kernel
6234 cpp17-kernel
6235 cpp2a-kernel
6236 xeus-cling
6237 ;
6238
6239 clojure = callPackage ../development/interpreters/clojure {
6240 # set this to an LTS version of java
6241 jdk = jdk21;
6242 };
6243
6244 clooj = callPackage ../development/interpreters/clojure/clooj.nix { };
6245
6246 dhall = haskell.lib.compose.justStaticExecutables haskellPackages.dhall;
6247
6248 dhall-bash = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-bash;
6249
6250 dhall-docs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-docs;
6251
6252 dhall-lsp-server = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-lsp-server;
6253
6254 dhall-json = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-json;
6255
6256 dhall-nix = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nix;
6257
6258 dhall-nixpkgs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nixpkgs;
6259
6260 dhall-yaml = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-yaml;
6261
6262 dhallPackages = recurseIntoAttrs (callPackage ./dhall-packages.nix { });
6263
6264 beam = callPackage ./beam-packages.nix { };
6265 beam_minimal = callPackage ./beam-packages.nix {
6266 beam = beam_minimal;
6267 systemdSupport = false;
6268 wxSupport = false;
6269 };
6270
6271 inherit (beam.interpreters)
6272 erlang
6273 erlang_28
6274 erlang_27
6275 erlang_26
6276 elixir
6277 elixir_1_19
6278 elixir_1_18
6279 elixir_1_17
6280 elixir-ls
6281 ;
6282
6283 inherit (beam.packages.erlang_26.beamPackages)
6284 elixir_1_16
6285 elixir_1_15
6286 elixir_1_14
6287 ;
6288
6289 inherit (beam.packages.erlang)
6290 erlang-ls
6291 ex_doc
6292 erlfmt
6293 elvis-erlang
6294 rebar
6295 rebar3
6296 rebar3WithPlugins
6297 fetchHex
6298 lfe
6299 lfe_2_1
6300 ;
6301
6302 beamPackages = dontRecurseIntoAttrs beam27Packages;
6303 beamMinimalPackages = dontRecurseIntoAttrs beamMinimal27Packages;
6304
6305 beam26Packages = recurseIntoAttrs beam.packages.erlang_26.beamPackages;
6306 beam27Packages = recurseIntoAttrs beam.packages.erlang_27.beamPackages;
6307 beam28Packages = recurseIntoAttrs beam.packages.erlang_28.beamPackages;
6308
6309 beamMinimal26Packages = recurseIntoAttrs beam_minimal.packages.erlang_26.beamPackages;
6310 beamMinimal27Packages = recurseIntoAttrs beam_minimal.packages.erlang_27.beamPackages;
6311 beamMinimal28Packages = recurseIntoAttrs beam_minimal.packages.erlang_28.beamPackages;
6312
6313 gnudatalanguage = callPackage ../development/interpreters/gnudatalanguage {
6314 inherit (llvmPackages) openmp;
6315 # MPICH currently build on Darwin
6316 mpi = mpich;
6317 };
6318
6319 inherit (callPackages ../applications/networking/cluster/hadoop { })
6320 hadoop_3_4
6321 hadoop_3_3
6322 hadoop2
6323 ;
6324 hadoop3 = hadoop_3_4;
6325 hadoop = hadoop3;
6326
6327 jacinda = haskell.lib.compose.justStaticExecutables haskellPackages.jacinda;
6328
6329 janet = callPackage ../development/interpreters/janet { };
6330
6331 jpm = callPackage ../development/interpreters/janet/jpm.nix { };
6332
6333 davmail = callPackage ../applications/networking/davmail {
6334 zulu = zulu11;
6335 };
6336
6337 lambda-lisp-blc = lambda-lisp;
6338
6339 love_0_10 = callPackage ../development/interpreters/love/0.10.nix { };
6340 love_11 = callPackage ../development/interpreters/love/11.nix { };
6341 love = love_11;
6342
6343 ### LUA interpreters
6344 emiluaPlugins = recurseIntoAttrs (
6345 callPackage ./emilua-plugins.nix { } (callPackage ../development/interpreters/emilua { })
6346 );
6347
6348 inherit (emiluaPlugins) emilua;
6349
6350 luaInterpreters = callPackage ./../development/interpreters/lua-5 { };
6351 inherit (luaInterpreters)
6352 lua5_1
6353 lua5_2
6354 lua5_2_compat
6355 lua5_3
6356 lua5_3_compat
6357 lua5_4
6358 lua5_4_compat
6359 luajit_2_1
6360 luajit_2_0
6361 luajit_openresty
6362 ;
6363
6364 lua5 = lua5_2_compat;
6365 lua = lua5;
6366
6367 lua51Packages = recurseIntoAttrs lua5_1.pkgs;
6368 lua52Packages = recurseIntoAttrs lua5_2.pkgs;
6369 lua53Packages = recurseIntoAttrs lua5_3.pkgs;
6370 lua54Packages = recurseIntoAttrs lua5_4.pkgs;
6371 luajitPackages = recurseIntoAttrs luajit.pkgs;
6372
6373 luaPackages = lua52Packages;
6374
6375 luajit = luajit_2_1;
6376
6377 luarocks = luaPackages.luarocks;
6378 luarocks-nix = luaPackages.luarocks-nix;
6379
6380 luarocks-packages-updater = callPackage ../by-name/lu/luarocks-packages-updater/package.nix {
6381 pluginupdate = ../../maintainers/scripts/pluginupdate-py;
6382 };
6383
6384 toluapp = callPackage ../development/tools/toluapp {
6385 lua = lua5_1; # doesn't work with any other :(
6386 };
6387
6388 ### END OF LUA
6389
6390 ### CuboCore
6391 CuboCore = recurseIntoAttrs (
6392 import ./cubocore-packages.nix {
6393 inherit
6394 newScope
6395 lxqt
6396 lib
6397 ;
6398 }
6399 );
6400
6401 ### End of CuboCore
6402
6403 obb = callPackage ../development/interpreters/clojure/obb.nix { };
6404
6405 octave = callPackage ../development/interpreters/octave { };
6406
6407 octaveFull = octave.override {
6408 enableQt = true;
6409 };
6410
6411 octave-kernel = callPackage ../applications/editors/jupyter-kernels/octave { };
6412
6413 octavePackages = recurseIntoAttrs octave.pkgs;
6414
6415 # PHP interpreters, packages and extensions.
6416 #
6417 # Set default PHP interpreter, extensions and packages
6418 php = php84;
6419 phpExtensions = php.extensions;
6420 phpPackages = php.packages;
6421
6422 # Import PHP84 interpreter, extensions and packages
6423 php84 = callPackage ../development/interpreters/php/8.4.nix {
6424 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6425 pcre2 = pcre2.override {
6426 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6427 };
6428 };
6429 php84Extensions = recurseIntoAttrs php84.extensions;
6430 php84Packages = recurseIntoAttrs php84.packages;
6431
6432 # Import PHP83 interpreter, extensions and packages
6433 php83 = callPackage ../development/interpreters/php/8.3.nix {
6434 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6435 pcre2 = pcre2.override {
6436 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6437 };
6438 };
6439 php83Extensions = recurseIntoAttrs php83.extensions;
6440 php83Packages = recurseIntoAttrs php83.packages;
6441
6442 # Import PHP82 interpreter, extensions and packages
6443 php82 = callPackage ../development/interpreters/php/8.2.nix {
6444 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6445 pcre2 = pcre2.override {
6446 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6447 };
6448 };
6449 php82Extensions = recurseIntoAttrs php82.extensions;
6450 php82Packages = recurseIntoAttrs php82.packages;
6451
6452 # Import PHP81 interpreter, extensions and packages
6453 php81 = callPackage ../development/interpreters/php/8.1.nix {
6454 stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
6455 pcre2 = pcre2.override {
6456 withJitSealloc = false; # See https://bugs.php.net/bug.php?id=78927 and https://bugs.php.net/bug.php?id=78630
6457 };
6458 };
6459 php81Extensions = recurseIntoAttrs php81.extensions;
6460 php81Packages = recurseIntoAttrs php81.packages;
6461
6462 polyml = callPackage ../development/compilers/polyml { };
6463 polyml56 = callPackage ../development/compilers/polyml/5.6.nix { };
6464 polyml57 = callPackage ../development/compilers/polyml/5.7.nix { };
6465
6466 # Python interpreters. All standard library modules are included except for tkinter, which is
6467 # available as `pythonPackages.tkinter` and can be used as any other Python package.
6468 # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md
6469 python2 = python27;
6470 python3 = python313;
6471
6472 # pythonPackages further below, but assigned here because they need to be in sync
6473 python2Packages = dontRecurseIntoAttrs python27Packages;
6474 python3Packages = dontRecurseIntoAttrs python313Packages;
6475
6476 pypy = pypy2;
6477 pypy2 = pypy27;
6478 pypy3 = pypy311;
6479
6480 # Python interpreter that is build with all modules, including tkinter.
6481 # These are for compatibility and should not be used inside Nixpkgs.
6482 python2Full = python2.override {
6483 self = python2Full;
6484 pythonAttr = "python2Full";
6485 x11Support = true;
6486 };
6487 python27Full = python27.override {
6488 self = python27Full;
6489 pythonAttr = "python27Full";
6490 x11Support = true;
6491 };
6492 python3Full = python3.override {
6493 self = python3Full;
6494 pythonAttr = "python3Full";
6495 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6496 x11Support = true;
6497 };
6498 python310Full = python310.override {
6499 self = python310Full;
6500 pythonAttr = "python310Full";
6501 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6502 x11Support = true;
6503 };
6504 python311Full = python311.override {
6505 self = python311Full;
6506 pythonAttr = "python311Full";
6507 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6508 x11Support = true;
6509 };
6510 python312Full = python312.override {
6511 self = python312Full;
6512 pythonAttr = "python312Full";
6513 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6514 x11Support = true;
6515 };
6516 python313Full = python313.override {
6517 self = python313Full;
6518 pythonAttr = "python313Full";
6519 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6520 x11Support = true;
6521 };
6522 python314Full = python314.override {
6523 self = python314Full;
6524 pythonAttr = "python314Full";
6525 bluezSupport = lib.meta.availableOn stdenv.hostPlatform bluez;
6526 x11Support = true;
6527 };
6528
6529 # https://py-free-threading.github.io
6530 python313FreeThreading = python313.override {
6531 self = python313FreeThreading;
6532 pythonAttr = "python313FreeThreading";
6533 enableGIL = false;
6534 };
6535 python314FreeThreading = python314.override {
6536 self = python314FreeThreading;
6537 pythonAttr = "python313FreeThreading";
6538 enableGIL = false;
6539 };
6540
6541 pythonInterpreters = callPackage ./../development/interpreters/python { };
6542 inherit (pythonInterpreters)
6543 python27
6544 python310
6545 python311
6546 python312
6547 python313
6548 python314
6549 python3Minimal
6550 pypy27
6551 pypy310
6552 pypy311
6553 ;
6554
6555 # List of extensions with overrides to apply to all Python package sets.
6556 pythonPackagesExtensions = [ ];
6557
6558 # Python package sets.
6559 python27Packages = python27.pkgs;
6560 python310Packages = python310.pkgs;
6561 python311Packages = python311.pkgs;
6562 python312Packages = recurseIntoAttrs python312.pkgs;
6563 python313Packages = recurseIntoAttrs python313.pkgs;
6564 python314Packages = python314.pkgs;
6565 pypyPackages = pypy.pkgs;
6566 pypy2Packages = pypy2.pkgs;
6567 pypy27Packages = pypy27.pkgs;
6568 pypy3Packages = pypy3.pkgs;
6569 pypy310Packages = pypy310.pkgs;
6570 pypy311Packages = pypy311.pkgs;
6571
6572 pythonManylinuxPackages = callPackage ./../development/interpreters/python/manylinux { };
6573
6574 pythonCondaPackages = callPackage ./../development/interpreters/python/conda { };
6575
6576 # Should eventually be moved inside Python interpreters.
6577 python-setup-hook = buildPackages.callPackage ../development/interpreters/python/setup-hook.nix { };
6578
6579 pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs { });
6580
6581 svg2tikz = with python3.pkgs; toPythonApplication svg2tikz;
6582
6583 poetryPlugins = recurseIntoAttrs poetry.plugins;
6584
6585 pipx = with python3.pkgs; toPythonApplication pipx;
6586
6587 pipewire = callPackage ../development/libraries/pipewire {
6588 # ffmpeg depends on SDL2 which depends on pipewire by default.
6589 # Break the cycle by depending on ffmpeg-headless.
6590 # Pipewire only uses libavcodec (via an SPA plugin), which isn't
6591 # affected by the *-headless changes.
6592 ffmpeg = ffmpeg-headless;
6593 };
6594
6595 wireplumber = callPackage ../development/libraries/pipewire/wireplumber.nix { };
6596
6597 racket-minimal = callPackage ../by-name/ra/racket/minimal.nix {
6598 stdenv = stdenvAdapters.makeStaticLibraries stdenv;
6599 };
6600
6601 rakudo = callPackage ../development/interpreters/rakudo { };
6602 moarvm = callPackage ../development/interpreters/rakudo/moarvm.nix { };
6603 nqp = callPackage ../development/interpreters/rakudo/nqp.nix { };
6604 zef = callPackage ../development/interpreters/rakudo/zef.nix { };
6605
6606 inherit (ocamlPackages) reason rtop;
6607
6608 buildRubyGem = callPackage ../development/ruby-modules/gem { };
6609 defaultGemConfig = callPackage ../development/ruby-modules/gem-config {
6610 inherit (darwin) DarwinTools autoSignDarwinBinariesHook;
6611 };
6612 bundlerEnv = callPackage ../development/ruby-modules/bundler-env { };
6613 bundlerApp = callPackage ../development/ruby-modules/bundler-app { };
6614 bundlerUpdateScript = callPackage ../development/ruby-modules/bundler-update-script { };
6615
6616 bundler-audit = callPackage ../tools/security/bundler-audit { };
6617
6618 solargraph = rubyPackages.solargraph;
6619
6620 inherit
6621 (callPackage ../development/interpreters/ruby {
6622 inherit (darwin) libunwind;
6623 })
6624 mkRubyVersion
6625 mkRuby
6626 ruby_3_1
6627 ruby_3_2
6628 ruby_3_3
6629 ruby_3_4
6630 ;
6631
6632 ruby = ruby_3_3;
6633 rubyPackages = rubyPackages_3_3;
6634
6635 rubyPackages_3_1 = recurseIntoAttrs ruby_3_1.gems;
6636 rubyPackages_3_2 = recurseIntoAttrs ruby_3_2.gems;
6637 rubyPackages_3_3 = recurseIntoAttrs ruby_3_3.gems;
6638 rubyPackages_3_4 = recurseIntoAttrs ruby_3_4.gems;
6639
6640 samplebrain = libsForQt5.callPackage ../applications/audio/samplebrain { };
6641
6642 inherit (callPackages ../applications/networking/cluster/spark { })
6643 spark_3_5
6644 spark_3_4
6645 ;
6646 spark3 = spark_3_5;
6647 spark = spark3;
6648
6649 inherit
6650 ({
6651 spidermonkey_91 = callPackage ../development/interpreters/spidermonkey/91.nix { };
6652 spidermonkey_115 = callPackage ../development/interpreters/spidermonkey/115.nix { };
6653 spidermonkey_128 = callPackage ../development/interpreters/spidermonkey/128.nix { };
6654 })
6655 spidermonkey_91
6656 spidermonkey_115
6657 spidermonkey_128
6658 ;
6659
6660 supercollider = libsForQt5.callPackage ../development/interpreters/supercollider {
6661 fftw = fftwSinglePrec;
6662 };
6663
6664 supercollider_scel = supercollider.override { useSCEL = true; };
6665
6666 supercolliderPlugins = recurseIntoAttrs {
6667 sc3-plugins = callPackage ../development/interpreters/supercollider/plugins/sc3-plugins.nix {
6668 fftw = fftwSinglePrec;
6669 };
6670 };
6671
6672 supercollider-with-plugins = callPackage ../development/interpreters/supercollider/wrapper.nix {
6673 plugins = [ ];
6674 };
6675
6676 supercollider-with-sc3-plugins = supercollider-with-plugins.override {
6677 plugins = with supercolliderPlugins; [ sc3-plugins ];
6678 };
6679
6680 tcl = tcl-8_6;
6681 tcl-8_5 = callPackage ../development/interpreters/tcl/8.5.nix { };
6682 tcl-8_6 = callPackage ../development/interpreters/tcl/8.6.nix { };
6683 tcl-9_0 = callPackage ../development/interpreters/tcl/9.0.nix { };
6684
6685 # We don't need versioned package sets thanks to the tcl stubs mechanism
6686 tclPackages = recurseIntoAttrs (callPackage ./tcl-packages.nix { });
6687
6688 tclreadline = tclPackages.tclreadline;
6689
6690 wasm = ocamlPackages.wasm;
6691
6692 ### DEVELOPMENT / MISC
6693
6694 inherit (callPackages ../development/misc/h3 { }) h3_3 h3_4;
6695
6696 h3 = h3_3;
6697
6698 avrlibc = callPackage ../development/misc/avr/libc {
6699 stdenv = stdenvNoLibc;
6700 };
6701
6702 sourceFromHead = callPackage ../build-support/source-from-head-fun.nix { };
6703
6704 jruby = callPackage ../development/interpreters/jruby { };
6705
6706 guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { };
6707
6708 # Needed for autogen
6709 guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { };
6710
6711 guile_2_2 = callPackage ../development/interpreters/guile/2.2.nix { };
6712
6713 guile_3_0 = callPackage ../development/interpreters/guile/3.0.nix { };
6714
6715 guile = guile_3_0;
6716
6717 guile-sdl = callPackage ../by-name/gu/guile-sdl/package.nix {
6718 guile = guile_2_2;
6719 };
6720
6721 guile-xcb = callPackage ../by-name/gu/guile-xcb/package.nix {
6722 guile = guile_2_2;
6723 };
6724
6725 msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { };
6726
6727 msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { };
6728
6729 mspds = callPackage ../development/misc/msp430/mspds { };
6730 mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { };
6731
6732 mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { };
6733
6734 vc4-newlib = callPackage ../development/misc/vc4/newlib.nix { };
6735
6736 or1k-newlib = callPackage ../development/misc/or1k/newlib.nix { };
6737
6738 ### DEVELOPMENT / TOOLS
6739
6740 inherit (callPackage ../development/tools/alloy { })
6741 alloy5
6742 alloy6
6743 alloy
6744 ;
6745
6746 anybadge = with python3Packages; toPythonApplication anybadge;
6747
6748 ansible = ansible_2_18;
6749 ansible_2_18 = python3Packages.toPythonApplication python3Packages.ansible-core;
6750 ansible_2_17 = python3Packages.toPythonApplication (
6751 python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
6752 version = "2.17.8";
6753 src = oldAttrs.src.override {
6754 inherit version;
6755 hash = "sha256-Ob6KeYaix9NgabDZciC8L2eDxl/qfG1+Di0A0ayK+Hc=";
6756 };
6757 })
6758 );
6759 ansible_2_16 = python3Packages.toPythonApplication (
6760 python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec {
6761 version = "2.16.14";
6762 src = oldAttrs.src.override {
6763 inherit version;
6764 hash = "sha256-gCef/9mGhrrfqjLh7HhdmKbfGy/B5Al97AWXZA10ZBU=";
6765 };
6766 })
6767 );
6768
6769 ansible-builder = with python3Packages; toPythonApplication ansible-builder;
6770
6771 yakut = python3Packages.callPackage ../development/tools/misc/yakut { };
6772
6773 ### DEVELOPMENT / TOOLS / LANGUAGE-SERVERS
6774
6775 fortls = python3.pkgs.callPackage ../development/tools/language-servers/fortls { };
6776
6777 fortran-language-server =
6778 python3.pkgs.callPackage ../development/tools/language-servers/fortran-language-server
6779 { };
6780
6781 inherit (callPackages ../development/tools/language-servers/nixd { }) nixf nixt nixd;
6782
6783 antlr2 = callPackage ../development/tools/parsing/antlr/2.7.7.nix { };
6784 antlr3_4 = callPackage ../development/tools/parsing/antlr/3.4.nix { };
6785 antlr3_5 = callPackage ../development/tools/parsing/antlr/3.5.nix { };
6786 antlr3 = antlr3_5;
6787
6788 inherit (callPackages ../development/tools/parsing/antlr/4.nix { })
6789 antlr4_8
6790 antlr4_9
6791 antlr4_10
6792 antlr4_11
6793 antlr4_12
6794 antlr4_13
6795 ;
6796
6797 antlr4 = antlr4_13;
6798
6799 antlr = antlr4;
6800
6801 inherit (callPackages ../servers/apache-kafka { })
6802 apacheKafka_3_7
6803 apacheKafka_3_8
6804 apacheKafka_3_9
6805 apacheKafka_4_0
6806 ;
6807
6808 apacheKafka = apacheKafka_4_0;
6809
6810 asn2quickder = python3Packages.callPackage ../development/tools/asn2quickder { };
6811
6812 libastyle = astyle.override { asLibrary = true; };
6813
6814 aws-adfs = with python3Packages; toPythonApplication aws-adfs;
6815
6816 electron-source = callPackage ../development/tools/electron { };
6817
6818 inherit (callPackages ../development/tools/electron/binary { })
6819 electron_35-bin
6820 electron_36-bin
6821 electron_37-bin
6822 ;
6823
6824 inherit (callPackages ../development/tools/electron/chromedriver { })
6825 electron-chromedriver_35
6826 electron-chromedriver_36
6827 electron-chromedriver_37
6828 ;
6829
6830 electron_35 =
6831 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_35 then
6832 electron-source.electron_35
6833 else
6834 electron_35-bin;
6835 electron_36 =
6836 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_36 then
6837 electron-source.electron_36
6838 else
6839 electron_36-bin;
6840 electron_37 =
6841 if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_37 then
6842 electron-source.electron_37
6843 else
6844 electron_37-bin;
6845 electron = electron_37;
6846 electron-bin = electron_37-bin;
6847 electron-chromedriver = electron-chromedriver_37;
6848
6849 autoconf = callPackage ../development/tools/misc/autoconf { };
6850 autoconf269 = callPackage ../development/tools/misc/autoconf/2.69.nix { };
6851 autoconf271 = callPackage ../development/tools/misc/autoconf/2.71.nix { };
6852
6853 automake = automake116x;
6854
6855 automake116x = callPackage ../development/tools/misc/automake/automake-1.16.x.nix { };
6856
6857 automake118x = callPackage ../development/tools/misc/automake/automake-1.18.x.nix { };
6858
6859 bandit = with python3Packages; toPythonApplication bandit;
6860
6861 bazel = bazel_6;
6862
6863 bazel_5 = callPackage ../development/tools/build-managers/bazel/bazel_5 {
6864 inherit (darwin) sigtool;
6865 buildJdk = jdk11_headless;
6866 runJdk = jdk11_headless;
6867 stdenv =
6868 if stdenv.cc.isClang then
6869 llvmPackages_17.stdenv
6870 else if stdenv.cc.isGNU then
6871 gcc12Stdenv
6872 else
6873 stdenv;
6874 bazel_self = bazel_5;
6875 };
6876
6877 bazel_6 = callPackage ../development/tools/build-managers/bazel/bazel_6 {
6878 inherit (darwin) sigtool;
6879 buildJdk = jdk11_headless;
6880 runJdk = jdk11_headless;
6881 stdenv =
6882 if stdenv.cc.isClang then
6883 llvmPackages_17.stdenv
6884 else if stdenv.cc.isGNU then
6885 gcc12Stdenv
6886 else
6887 stdenv;
6888 bazel_self = bazel_6;
6889 };
6890
6891 bazel_7 = callPackage ../development/tools/build-managers/bazel/bazel_7 {
6892 inherit (darwin) sigtool;
6893 buildJdk = jdk21_headless;
6894 runJdk = jdk21_headless;
6895 stdenv = if stdenv.cc.isClang then llvmPackages_17.stdenv else stdenv;
6896 bazel_self = bazel_7;
6897 };
6898
6899 buildifier = bazel-buildtools;
6900 buildozer = bazel-buildtools;
6901 unused_deps = bazel-buildtools;
6902
6903 buildBazelPackage = callPackage ../build-support/build-bazel-package { };
6904
6905 binutils-unwrapped = callPackage ../development/tools/misc/binutils {
6906 # FHS sys dirs presumably only have stuff for the build platform
6907 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6908 };
6909 binutils-unwrapped-all-targets = callPackage ../development/tools/misc/binutils {
6910 # FHS sys dirs presumably only have stuff for the build platform
6911 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6912 withAllTargets = true;
6913 };
6914 binutils = wrapBintoolsWith {
6915 bintools = binutils-unwrapped;
6916 };
6917 binutils_nogold = lowPrio (wrapBintoolsWith {
6918 bintools = binutils-unwrapped.override {
6919 enableGold = false;
6920 };
6921 });
6922 binutilsNoLibc = wrapBintoolsWith {
6923 bintools = binutils-unwrapped;
6924 libc = targetPackages.preLibcHeaders or preLibcHeaders;
6925 };
6926
6927 libbfd = callPackage ../development/tools/misc/binutils/libbfd.nix { };
6928
6929 libopcodes = callPackage ../development/tools/misc/binutils/libopcodes.nix { };
6930
6931 # Held back 2.38 release. Remove once all dependencies are ported to 2.39.
6932 binutils-unwrapped_2_38 = callPackage ../development/tools/misc/binutils/2.38 {
6933 autoreconfHook = autoreconfHook269;
6934 # FHS sys dirs presumably only have stuff for the build platform
6935 noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs;
6936 };
6937
6938 libbfd_2_38 = callPackage ../development/tools/misc/binutils/2.38/libbfd.nix {
6939 autoreconfHook = buildPackages.autoreconfHook269;
6940 };
6941
6942 libopcodes_2_38 = callPackage ../development/tools/misc/binutils/2.38/libopcodes.nix {
6943 autoreconfHook = buildPackages.autoreconfHook269;
6944 };
6945
6946 # Here we select the default bintools implementations to be used. Note when
6947 # cross compiling these are used not for this stage but the *next* stage.
6948 # That is why we choose using this stage's target platform / next stage's
6949 # host platform.
6950 #
6951 # Because this is the *next* stages choice, it's a bit non-modular to put
6952 # here. In theory, bootstrapping is supposed to not be a chain but at tree,
6953 # where each stage supports many "successor" stages, like multiple possible
6954 # futures. We don't have a better alternative, but with this downside in
6955 # mind, please be judicious when using this attribute. E.g. for building
6956 # things in *this* stage you should use probably `stdenv.cc.bintools` (from a
6957 # default or alternate `stdenv`), at build time, and try not to "force" a
6958 # specific bintools at runtime at all.
6959 #
6960 # In other words, try to only use this in wrappers, and only use those
6961 # wrappers from the next stage.
6962 bintools-unwrapped =
6963 let
6964 inherit (stdenv.targetPlatform) linker;
6965 in
6966 if linker == "lld" then
6967 llvmPackages.bintools-unwrapped
6968 else if linker == "cctools" then
6969 darwin.binutils-unwrapped
6970 else if linker == "bfd" then
6971 binutils-unwrapped
6972 else if linker == "gold" then
6973 binutils-unwrapped.override { enableGoldDefault = true; }
6974 else
6975 null;
6976 bintoolsNoLibc = wrapBintoolsWith {
6977 bintools = bintools-unwrapped;
6978 libc = targetPackages.preLibcHeaders;
6979 };
6980 bintools = wrapBintoolsWith {
6981 bintools = bintools-unwrapped;
6982 };
6983
6984 bintoolsDualAs = wrapBintoolsWith {
6985 bintools = darwin.binutilsDualAs-unwrapped;
6986 wrapGas = true;
6987 };
6988
6989 black = with python3Packages; toPythonApplication black;
6990
6991 black-macchiato = with python3Packages; toPythonApplication black-macchiato;
6992
6993 buck = callPackage ../development/tools/build-managers/buck {
6994 python3 = python311;
6995 };
6996
6997 build2 = callPackage ../development/tools/build-managers/build2 {
6998 # Break cycle by using self-contained toolchain for bootstrapping
6999 build2 = buildPackages.callPackage ../development/tools/build-managers/build2/bootstrap.nix { };
7000 };
7001
7002 # Dependency of build2, must also break cycle for this
7003 libbutl = callPackage ../development/libraries/libbutl {
7004 build2 = build2.bootstrap;
7005 inherit (darwin) DarwinTools;
7006 };
7007
7008 bdep = callPackage ../development/tools/build-managers/build2/bdep.nix { };
7009
7010 bore-cli = callPackage ../tools/networking/bore-cli/default.nix { };
7011
7012 bpkg = callPackage ../development/tools/build-managers/build2/bpkg.nix { };
7013
7014 buildkite-test-collector-rust =
7015 callPackage ../development/tools/continuous-integration/buildkite-test-collector-rust
7016 {
7017 };
7018
7019 libbpf = callPackage ../os-specific/linux/libbpf { };
7020 libbpf_0 = callPackage ../os-specific/linux/libbpf/0.x.nix { };
7021
7022 bundlewrap = with python3.pkgs; toPythonApplication bundlewrap;
7023
7024 # Wrapper that works as gcc or g++
7025 # It can be used by setting in nixpkgs config like this, for example:
7026 # replaceStdenv = { pkgs }: pkgs.ccacheStdenv;
7027 # But if you build in chroot, you should have that path in chroot
7028 # If instantiated directly, it will use $HOME/.ccache as the cache directory,
7029 # i.e. /homeless-shelter/.ccache using the Nix daemon.
7030 # You should specify a different directory using an override in
7031 # packageOverrides to set extraConfig.
7032 #
7033 # Example using Nix daemon (i.e. multiuser Nix install or on NixOS):
7034 # packageOverrides = pkgs: {
7035 # ccacheWrapper = pkgs.ccacheWrapper.override {
7036 # extraConfig = ''
7037 # export CCACHE_COMPRESS=1
7038 # export CCACHE_DIR=/var/cache/ccache
7039 # export CCACHE_UMASK=007
7040 # '';
7041 # };
7042 # You can use a different directory, but whichever directory you choose
7043 # should be owned by user root, group nixbld with permissions 0770.
7044 ccacheWrapper =
7045 makeOverridable
7046 (
7047 { extraConfig, cc }:
7048 cc.override {
7049 cc = ccache.links {
7050 inherit extraConfig;
7051 unwrappedCC = cc.cc;
7052 };
7053 }
7054 )
7055 {
7056 extraConfig = "";
7057 inherit (stdenv) cc;
7058 };
7059
7060 ccacheStdenv = lowPrio (
7061 makeOverridable
7062 (
7063 { stdenv, ... }@extraArgs:
7064 overrideCC stdenv (
7065 buildPackages.ccacheWrapper.override (
7066 {
7067 inherit (stdenv) cc;
7068 }
7069 // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) {
7070 extraConfig = extraArgs.extraConfig;
7071 }
7072 )
7073 )
7074 )
7075 {
7076 inherit stdenv;
7077 }
7078 );
7079
7080 chromedriver = callPackage ../development/tools/selenium/chromedriver { };
7081
7082 chruby = callPackage ../development/tools/misc/chruby { rubies = null; };
7083
7084 cookiecutter = with python3Packages; toPythonApplication cookiecutter;
7085
7086 corundum = callPackage ../development/tools/corundum { };
7087
7088 ctags = callPackage ../development/tools/misc/ctags { };
7089
7090 ctagsWrapped = callPackage ../development/tools/misc/ctags/wrapped.nix { };
7091
7092 cubiomes-viewer = libsForQt5.callPackage ../applications/misc/cubiomes-viewer { };
7093
7094 # can't use override - it triggers infinite recursion
7095 cmakeMinimal = callPackage ../by-name/cm/cmake/package.nix {
7096 isMinimalBuild = true;
7097 };
7098
7099 cmakeCurses = cmake.override {
7100 uiToolkits = [ "ncurses" ];
7101 };
7102
7103 cmakeWithGui = cmake.override {
7104 uiToolkits = [
7105 "ncurses"
7106 "qt5"
7107 ];
7108 };
7109
7110 cmake-format = python3Packages.callPackage ../development/tools/cmake-format { };
7111
7112 cmake-language-server =
7113 python3Packages.callPackage ../development/tools/misc/cmake-language-server
7114 {
7115 inherit cmake cmake-format;
7116 };
7117
7118 # Does not actually depend on Qt 5
7119 inherit (plasma5Packages) extra-cmake-modules;
7120
7121 coccinelle = callPackage ../development/tools/misc/coccinelle {
7122 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
7123 };
7124
7125 credstash = with python3Packages; toPythonApplication credstash;
7126
7127 creduce = callPackage ../development/tools/misc/creduce {
7128 inherit (llvmPackages_16) llvm libclang;
7129 };
7130
7131 inherit (nodePackages) csslint;
7132
7133 css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify;
7134
7135 cvise = python3Packages.callPackage ../development/tools/misc/cvise {
7136 # cvise keeps up with fresh llvm releases and supports wide version range
7137 inherit (llvmPackages) llvm libclang;
7138 };
7139
7140 daggerfall-unity-unfree = daggerfall-unity.override {
7141 pname = "daggerfall-unity-unfree";
7142 includeUnfree = true;
7143 };
7144
7145 dbt = with python3Packages; toPythonApplication dbt-core;
7146
7147 devbox = callPackage ../development/tools/devbox { buildGoModule = buildGo124Module; };
7148
7149 libcxx = llvmPackages.libcxx;
7150
7151 libgcc = stdenv.cc.cc.libgcc or null;
7152
7153 # This is for e.g. LLVM libraries on linux.
7154 gccForLibs =
7155 if
7156 stdenv.targetPlatform == stdenv.hostPlatform && targetPackages.stdenv.cc.isGNU
7157 # Can only do this is in the native case, otherwise we might get infinite
7158 # recursion if `targetPackages.stdenv.cc.cc` itself uses `gccForLibs`.
7159 then
7160 targetPackages.stdenv.cc.cc
7161 else
7162 gcc.cc;
7163
7164 distcc = callPackage ../development/tools/misc/distcc {
7165 libiberty_static = libiberty.override { staticBuild = true; };
7166 };
7167
7168 # distccWrapper: wrapper that works as gcc or g++
7169 # It can be used by setting in nixpkgs config like this, for example:
7170 # replaceStdenv = { pkgs }: pkgs.distccStdenv;
7171 # But if you build in chroot, a default 'nix' will create
7172 # a new net namespace, and won't have network access.
7173 # You can use an override in packageOverrides to set extraConfig:
7174 # packageOverrides = pkgs: {
7175 # distccWrapper = pkgs.distccWrapper.override {
7176 # extraConfig = ''
7177 # DISTCC_HOSTS="myhost1 myhost2"
7178 # '';
7179 # };
7180 #
7181 distccWrapper = makeOverridable (
7182 {
7183 extraConfig ? "",
7184 }:
7185 wrapCC (distcc.links extraConfig)
7186 ) { };
7187 distccStdenv = lowPrio (overrideCC stdenv buildPackages.distccWrapper);
7188
7189 distccMasquerade =
7190 if stdenv.hostPlatform.isDarwin then
7191 null
7192 else
7193 callPackage ../development/tools/misc/distcc/masq.nix {
7194 gccRaw = gcc.cc;
7195 binutils = binutils;
7196 };
7197
7198 docutils = with python3Packages; toPythonApplication docutils;
7199
7200 doit = with python3Packages; toPythonApplication doit;
7201
7202 dot2tex = with python3.pkgs; toPythonApplication dot2tex;
7203
7204 doxygen = callPackage ../development/tools/documentation/doxygen {
7205 qt5 = null;
7206 };
7207
7208 doxygen_gui = lowPrio (doxygen.override { inherit qt5; });
7209
7210 drake = callPackage ../development/tools/build-managers/drake { };
7211
7212 edb = libsForQt5.callPackage ../development/tools/misc/edb { };
7213
7214 license_finder = callPackage ../development/tools/license_finder { };
7215
7216 # NOTE: Override and set useIcon = false to use Awk instead of Icon.
7217 fffuu = haskell.lib.compose.justStaticExecutables (
7218 haskellPackages.callPackage ../tools/misc/fffuu { }
7219 );
7220
7221 flow = callPackage ../development/tools/analysis/flow { };
7222
7223 fswatch = callPackage ../development/tools/misc/fswatch { };
7224
7225 gede = libsForQt5.callPackage ../development/tools/misc/gede { };
7226
7227 gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { };
7228
7229 pmd = callPackage ../development/tools/analysis/pmd {
7230 openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
7231 };
7232
7233 jdepend = callPackage ../development/tools/analysis/jdepend {
7234 jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
7235 };
7236
7237 flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { };
7238 flex = callPackage ../development/tools/parsing/flex { };
7239
7240 m4 = gnum4;
7241
7242 gnumake = callPackage ../development/tools/build-managers/gnumake { };
7243 gradle-packages = import ../development/tools/build-managers/gradle {
7244 inherit
7245 jdk17
7246 jdk21
7247 jdk23
7248 ;
7249 };
7250 gradleGen = gradle-packages.gen;
7251 wrapGradle = callPackage gradle-packages.wrapGradle { };
7252
7253 gradle_7-unwrapped = callPackage gradle-packages.gradle_7 { };
7254 gradle_8-unwrapped = callPackage gradle-packages.gradle_8 { };
7255 gradle-unwrapped = gradle_8-unwrapped;
7256
7257 gradle_7 = wrapGradle gradle_7-unwrapped null;
7258 gradle_8 = wrapGradle gradle_8-unwrapped null;
7259 gradle = wrapGradle gradle-unwrapped "gradle-unwrapped";
7260
7261 griffe = with python3Packages; toPythonApplication griffe;
7262
7263 gwrap = g-wrap;
7264 g-wrap = callPackage ../by-name/g-/g-wrap/package.nix {
7265 guile = guile_2_2;
7266 };
7267
7268 hadolint =
7269 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
7270 (
7271 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
7272 lib.id
7273 else
7274 haskell.lib.compose.justStaticExecutables
7275 )
7276 haskellPackages.hadolint;
7277
7278 iaca_2_1 = callPackage ../development/tools/iaca/2.1.nix { };
7279 iaca_3_0 = callPackage ../development/tools/iaca/3.0.nix { };
7280 iaca = iaca_3_0;
7281
7282 ikos = callPackage ../development/tools/analysis/ikos {
7283 inherit (llvmPackages_14) stdenv clang llvm;
7284 tbb = tbb_2021;
7285 };
7286
7287 include-what-you-use = callPackage ../development/tools/analysis/include-what-you-use {
7288 llvmPackages = llvmPackages_20;
7289 };
7290
7291 inherit (callPackage ../applications/misc/inochi2d { })
7292 inochi-creator
7293 inochi-session
7294 ;
7295
7296 javacc = callPackage ../development/tools/parsing/javacc {
7297 # Upstream doesn't support anything newer than Java 8.
7298 # https://github.com/javacc/javacc/blob/c708628423b71ce8bc3b70143fa5b6a2b7362b3a/README.md#building-javacc-from-source
7299 jdk = jdk8;
7300 jre = jre8;
7301 };
7302
7303 jenkins-job-builder = with python3Packages; toPythonApplication jenkins-job-builder;
7304
7305 kustomize = callPackage ../development/tools/kustomize { };
7306
7307 kustomize_3 = callPackage ../development/tools/kustomize/3.nix { };
7308
7309 kustomize_4 = callPackage ../development/tools/kustomize/4.nix { };
7310
7311 kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { };
7312
7313 libtool = libtool_2;
7314
7315 libtool_1_5 = callPackage ../development/tools/misc/libtool { };
7316
7317 libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { };
7318
7319 linuxkit = callPackage ../development/tools/misc/linuxkit {
7320 inherit (darwin) sigtool;
7321 };
7322
7323 lit = with python3Packages; toPythonApplication lit;
7324
7325 massif-visualizer = libsForQt5.callPackage ../development/tools/analysis/massif-visualizer { };
7326
7327 maven3 = maven;
7328 inherit (maven) buildMaven;
7329
7330 mavproxy = python3Packages.callPackage ../applications/science/robotics/mavproxy { };
7331
7332 meraki-cli = python3Packages.callPackage ../tools/admin/meraki-cli { };
7333
7334 python-matter-server =
7335 with python3Packages;
7336 toPythonApplication (
7337 python-matter-server.overridePythonAttrs (oldAttrs: {
7338 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.server;
7339 })
7340 );
7341
7342 minizinc = callPackage ../development/tools/minizinc { };
7343 minizincide = qt6Packages.callPackage ../development/tools/minizinc/ide.nix { };
7344
7345 mkdocs = with python3Packages; toPythonApplication mkdocs;
7346
7347 mold-wrapped = wrapBintoolsWith {
7348 bintools = mold;
7349 extraBuildCommands = ''
7350 wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}ld.mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/ld.mold
7351 wrap ${targetPackages.stdenv.cc.bintools.targetPrefix}mold ${../build-support/bintools-wrapper/ld-wrapper.sh} ${mold}/bin/mold
7352 '';
7353 };
7354
7355 mopsa = ocamlPackages.mopsa.bin;
7356
7357 haskell-ci =
7358 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
7359 (
7360 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
7361 lib.id
7362 else
7363 haskell.lib.compose.justStaticExecutables
7364 )
7365 haskellPackages.haskell-ci;
7366
7367 nixbang = callPackage ../development/tools/misc/nixbang {
7368 pythonPackages = python3Packages;
7369 };
7370
7371 nexusmods-app-unfree = nexusmods-app.override {
7372 pname = "nexusmods-app-unfree";
7373 _7zz = _7zz-rar;
7374 };
7375
7376 nwjs = callPackage ../development/tools/nwjs { };
7377
7378 nwjs-sdk = callPackage ../development/tools/nwjs {
7379 sdk = true;
7380 };
7381
7382 obelisk = callPackage ../development/tools/ocaml/obelisk { menhir = ocamlPackages.menhir; };
7383
7384 openai = with python3Packages; toPythonApplication openai;
7385
7386 openai-whisper = with python3.pkgs; toPythonApplication openai-whisper;
7387
7388 openocd-rp2040 = openocd.overrideAttrs (old: {
7389 pname = "openocd-rp2040";
7390 src = fetchFromGitHub {
7391 owner = "raspberrypi";
7392 repo = "openocd";
7393 rev = "4d87f6dcae77d3cbcd8ac3f7dc887adf46ffa504";
7394 hash = "sha256-bBqVoHsnNoaC2t8hqcduI8GGlO0VDMUovCB0HC+rxvc=";
7395 # openocd disables the vendored libraries that use submodules and replaces them with nix versions.
7396 # this works out as one of the submodule sources seems to be flakey.
7397 fetchSubmodules = false;
7398 };
7399 nativeBuildInputs = old.nativeBuildInputs ++ [
7400 autoreconfHook
7401 ];
7402 });
7403
7404 oprofile = callPackage ../development/tools/profiling/oprofile {
7405 libiberty_static = libiberty.override { staticBuild = true; };
7406 };
7407
7408 inherit (callPackage ../misc/optee-os { })
7409 buildOptee
7410 opteeQemuArm
7411 opteeQemuAarch64
7412 ;
7413
7414 patchelf = callPackage ../development/tools/misc/patchelf { };
7415
7416 patchelfUnstable = lowPrio (callPackage ../development/tools/misc/patchelf/unstable.nix { });
7417
7418 pgcli = with pkgs.python3Packages; toPythonApplication pgcli;
7419
7420 pkgconf-unwrapped = libpkgconf;
7421
7422 pkgconf = callPackage ../build-support/pkg-config-wrapper {
7423 pkg-config = pkgconf-unwrapped;
7424 baseBinName = "pkgconf";
7425 };
7426
7427 pkg-config = callPackage ../build-support/pkg-config-wrapper {
7428 pkg-config = pkg-config-unwrapped;
7429 };
7430
7431 pkg-configUpstream = lowPrio (
7432 pkg-config.override (old: {
7433 pkg-config = old.pkg-config.override {
7434 vanilla = true;
7435 };
7436 })
7437 );
7438
7439 portableService = callPackage ../build-support/portable-service { };
7440
7441 polar = callPackage ../tools/misc/polar { };
7442
7443 pyprof2calltree = with python3Packages; toPythonApplication pyprof2calltree;
7444
7445 premake4 = callPackage ../development/tools/misc/premake { };
7446
7447 premake5 = callPackage ../development/tools/misc/premake/5.nix { };
7448
7449 premake = premake4;
7450
7451 pycritty = with python3Packages; toPythonApplication pycritty;
7452
7453 qtcreator = qt6Packages.callPackage ../development/tools/qtcreator {
7454 inherit (linuxPackages) perf;
7455 llvmPackages = llvmPackages_18;
7456 stdenv = llvmPackages_18.stdenv;
7457 };
7458
7459 qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit { };
7460
7461 radare2 = callPackage ../development/tools/analysis/radare2 (
7462 {
7463 lua = lua5;
7464 }
7465 // (config.radare or { })
7466 );
7467
7468 rizin = pkgs.callPackage ../development/tools/analysis/rizin { };
7469
7470 rizinPlugins = recurseIntoAttrs rizin.plugins;
7471
7472 cutter = qt6.callPackage ../development/tools/analysis/rizin/cutter.nix { };
7473
7474 cutterPlugins = recurseIntoAttrs cutter.plugins;
7475
7476 ragel = ragelStable;
7477
7478 inherit (callPackages ../development/tools/parsing/ragel { }) ragelStable ragelDev;
7479
7480 redis-dump = callPackage ../development/tools/redis-dump { };
7481
7482 inherit (regclient) regbot regctl regsync;
7483
7484 reno = with python312Packages; toPythonApplication reno;
7485
7486 replace-secret = callPackage ../build-support/replace-secret/replace-secret.nix { };
7487
7488 inherit (callPackage ../development/tools/replay-io { })
7489 replay-io
7490 replay-node-cli
7491 ;
7492
7493 rescript-language-server = callPackage ../by-name/re/rescript-language-server/package.nix {
7494 rescript-editor-analysis = vscode-extensions.chenglou92.rescript-vscode.rescript-editor-analysis;
7495 };
7496
7497 rnginline = with python3Packages; toPythonApplication rnginline;
7498
7499 rr = callPackage ../development/tools/analysis/rr { };
7500
7501 muonStandalone = muon.override {
7502 embedSamurai = true;
7503 buildDocs = false;
7504 };
7505
7506 seer = libsForQt5.callPackage ../development/tools/misc/seer { };
7507
7508 semantik = libsForQt5.callPackage ../applications/office/semantik { };
7509
7510 sbt = callPackage ../development/tools/build-managers/sbt { };
7511 sbt-with-scala-native = callPackage ../development/tools/build-managers/sbt/scala-native.nix { };
7512 simpleBuildTool = sbt;
7513
7514 scss-lint = callPackage ../development/tools/scss-lint { };
7515
7516 shake =
7517 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
7518 (
7519 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
7520 lib.id
7521 else
7522 haskell.lib.compose.justStaticExecutables
7523 )
7524 haskellPackages.shake;
7525
7526 shellcheck = callPackage ../development/tools/shellcheck {
7527 inherit (__splicedPackages.haskellPackages) ShellCheck;
7528 };
7529
7530 # Minimal shellcheck executable for package checks.
7531 # Use shellcheck which does not include docs, as
7532 # pandoc takes long to build and documentation isn't needed for just running the cli
7533 shellcheck-minimal = haskell.lib.compose.justStaticExecutables shellcheck.unwrapped;
7534
7535 sloc = nodePackages.sloc;
7536
7537 slurm = callPackage ../by-name/sl/slurm/package.nix {
7538 nvml = cudaPackages.cuda_nvml_dev;
7539 };
7540
7541 snowman = qt5.callPackage ../development/tools/analysis/snowman { };
7542
7543 sparse = callPackage ../development/tools/analysis/sparse {
7544 llvm = llvm_14;
7545 };
7546
7547 speedtest-cli = with python3Packages; toPythonApplication speedtest-cli;
7548
7549 splint = callPackage ../development/tools/analysis/splint {
7550 flex = flex_2_5_35;
7551 };
7552
7553 spoofer = callPackage ../tools/networking/spoofer {
7554 protobuf = protobuf_21;
7555 };
7556
7557 spoofer-gui = callPackage ../tools/networking/spoofer {
7558 withGUI = true;
7559 protobuf = protobuf_21;
7560 };
7561
7562 sqlitebrowser = libsForQt5.callPackage ../development/tools/database/sqlitebrowser { };
7563
7564 sqlite-utils = with python3Packages; toPythonApplication sqlite-utils;
7565
7566 sqlmap = with python3Packages; toPythonApplication sqlmap;
7567
7568 c0 = callPackage ../development/compilers/c0 {
7569 stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
7570 };
7571
7572 swftools = callPackage ../tools/video/swftools {
7573 stdenv = gccStdenv;
7574 };
7575
7576 teensyduino = arduino-core.override {
7577 withGui = true;
7578 withTeensyduino = true;
7579 };
7580
7581 tytools = libsForQt5.callPackage ../development/embedded/tytools { };
7582
7583 texinfoPackages = callPackages ../development/tools/misc/texinfo/packages.nix { };
7584 inherit (texinfoPackages)
7585 texinfo6
7586 texinfo7
7587 ;
7588 texinfo = texinfo7;
7589 texinfoInteractive = texinfo.override { interactive = true; };
7590
7591 tflint-plugins = recurseIntoAttrs (callPackage ../development/tools/analysis/tflint-plugins { });
7592
7593 tree-sitter = makeOverridable (callPackage ../development/tools/parsing/tree-sitter) { };
7594
7595 tree-sitter-grammars = recurseIntoAttrs tree-sitter.builtGrammars;
7596
7597 uhdMinimal = uhd.override {
7598 enableUtils = false;
7599 enablePythonApi = false;
7600 };
7601
7602 gdb = callPackage ../development/tools/misc/gdb {
7603 guile = null;
7604 };
7605
7606 gdbHostCpuOnly = gdb.override { hostCpuOnly = true; };
7607
7608 jprofiler = callPackage ../development/tools/java/jprofiler {
7609 jdk = jdk11;
7610 };
7611
7612 valgrind-light = (valgrind.override { gdb = null; }).overrideAttrs (oldAttrs: {
7613 meta = oldAttrs.meta // {
7614 description = "${oldAttrs.meta.description} (without GDB)";
7615 };
7616 });
7617
7618 qcachegrind = libsForQt5.callPackage ../development/tools/analysis/qcachegrind { };
7619
7620 vcpkg-tool-unwrapped = vcpkg-tool.override { doWrap = false; };
7621
7622 wails = callPackage ../development/tools/wails {
7623 stdenv = gccStdenv;
7624 };
7625
7626 whatstyle = callPackage ../development/tools/misc/whatstyle {
7627 inherit (llvmPackages) clang-unwrapped;
7628 };
7629
7630 whisper-cpp-vulkan = whisper-cpp.override {
7631 vulkanSupport = true;
7632 };
7633
7634 watson-ruby = callPackage ../development/tools/misc/watson-ruby { };
7635
7636 xcbuild = callPackage ../by-name/xc/xcbuild/package.nix {
7637 stdenv =
7638 # xcbuild is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
7639 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
7640 };
7641
7642 xcbuildHook = makeSetupHook {
7643 name = "xcbuild-hook";
7644 propagatedBuildInputs = [ xcbuild ];
7645 } ../by-name/xc/xcbuild/setup-hook.sh;
7646
7647 xcodebuild = xcbuild;
7648
7649 xxdiff = libsForQt5.callPackage ../development/tools/misc/xxdiff { };
7650
7651 xxdiff-tip = xxdiff;
7652
7653 yourkit-java = callPackage ../by-name/yo/yourkit-java/package.nix {
7654 jre = jdk21;
7655 };
7656
7657 yq = python3.pkgs.toPythonApplication python3.pkgs.yq;
7658
7659 mypy = with python3Packages; toPythonApplication mypy;
7660
7661 mypy-protobuf = with python3Packages; toPythonApplication mypy-protobuf;
7662
7663 basedmypy = with python3Packages; toPythonApplication basedmypy;
7664
7665 ### DEVELOPMENT / LIBRARIES
7666
7667 abseil-cpp_202103 = callPackage ../development/libraries/abseil-cpp/202103.nix { };
7668 abseil-cpp_202301 = callPackage ../development/libraries/abseil-cpp/202301.nix { };
7669 abseil-cpp_202401 = callPackage ../development/libraries/abseil-cpp/202401.nix { };
7670 abseil-cpp_202407 = callPackage ../development/libraries/abseil-cpp/202407.nix { };
7671 abseil-cpp = abseil-cpp_202501;
7672
7673 acl = callPackage ../development/libraries/acl { };
7674
7675 agg = callPackage ../development/libraries/agg {
7676 stdenv = gccStdenv;
7677 };
7678
7679 allegro = allegro4;
7680 allegro4 = callPackage ../development/libraries/allegro { };
7681 allegro5 = callPackage ../development/libraries/allegro/5.nix { };
7682
7683 ansi2html = with python3.pkgs; toPythonApplication ansi2html;
7684
7685 appstream = callPackage ../development/libraries/appstream { };
7686
7687 apr = callPackage ../development/libraries/apr {
7688 autoreconfHook = buildPackages.autoreconfHook269;
7689 };
7690
7691 argparse-manpage = with python3Packages; toPythonApplication argparse-manpage;
7692
7693 asio_1_10 = callPackage ../development/libraries/asio/1.10.nix { };
7694 asio = callPackage ../development/libraries/asio { };
7695
7696 aspell = callPackage ../development/libraries/aspell { };
7697
7698 aspellDicts = recurseIntoAttrs (callPackages ../development/libraries/aspell/dictionaries.nix { });
7699
7700 aspellWithDicts = callPackage ../development/libraries/aspell/aspell-with-dicts.nix {
7701 aspell = aspell.override { searchNixProfiles = false; };
7702 };
7703
7704 astal = recurseIntoAttrs (lib.makeScope newScope (callPackage ../development/libraries/astal { }));
7705
7706 attr = callPackage ../development/libraries/attr { };
7707
7708 # Not moved to aliases while we decide if we should split the package again.
7709 at-spi2-atk = at-spi2-core;
7710
7711 aqbanking = callPackage ../development/libraries/aqbanking { };
7712
7713 aws-spend-summary = haskellPackages.aws-spend-summary.bin;
7714
7715 inherit (callPackages ../development/libraries/bashup-events { }) bashup-events32 bashup-events44;
7716
7717 bc-soci = callPackage ../development/libraries/soci/bc-soci.nix { };
7718
7719 # TODO(@Ericson2314): Build bionic libc from source
7720 bionic =
7721 if stdenv.hostPlatform.useAndroidPrebuilt then
7722 pkgs."androidndkPkgs_${stdenv.hostPlatform.androidNdkVersion}".libraries
7723 else
7724 callPackage ../os-specific/linux/bionic-prebuilt { };
7725
7726 inherit (callPackage ../development/libraries/boost { inherit (buildPackages) boost-build; })
7727 boost177
7728 boost178
7729 boost179
7730 boost180
7731 boost181
7732 boost182
7733 boost183
7734 boost186
7735 boost187
7736 boost188
7737 ;
7738
7739 boost = boost187;
7740
7741 inherit
7742 (callPackages ../development/libraries/botan {
7743 # botan3 only sensibly works with libcxxStdenv when building static binaries
7744 stdenv = if stdenv.hostPlatform.isStatic then buildPackages.libcxxStdenv else stdenv;
7745 })
7746 botan2
7747 botan3
7748 ;
7749
7750 c-ares = callPackage ../development/libraries/c-ares { };
7751
7752 c-aresMinimal = callPackage ../development/libraries/c-ares {
7753 withCMake = false;
7754 };
7755
7756 inherit (callPackages ../development/libraries/c-blosc { })
7757 c-blosc
7758 c-blosc2
7759 ;
7760
7761 cachix = (lib.getBin haskellPackages.cachix).overrideAttrs (old: {
7762 meta = (old.meta or { }) // {
7763 mainProgram = old.meta.mainProgram or "cachix";
7764 };
7765 });
7766
7767 hercules-ci-agent = callPackage ../development/tools/continuous-integration/hercules-ci-agent { };
7768
7769 hci = callPackage ../development/tools/continuous-integration/hci { };
7770
7771 niv = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.niv);
7772
7773 ormolu = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.ormolu);
7774
7775 catboost = callPackage ../by-name/ca/catboost/package.nix {
7776 # https://github.com/catboost/catboost/issues/2540
7777 cudaPackages = cudaPackages_11;
7778 llvmPackagesCuda = llvmPackages_14;
7779 };
7780
7781 cctag = callPackage ../development/libraries/cctag {
7782 stdenv = clangStdenv;
7783 tbb = tbb_2021;
7784 };
7785
7786 ceedling = callPackage ../development/tools/ceedling { };
7787
7788 celt = callPackage ../development/libraries/celt { };
7789 celt_0_7 = callPackage ../development/libraries/celt/0.7.nix { };
7790 celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix { };
7791
7792 certbot-full = certbot.withPlugins (
7793 cp: with cp; [
7794 # FIXME unbreak certbot-dns-cloudflare
7795 certbot-dns-google
7796 certbot-dns-inwx
7797 certbot-dns-ovh
7798 certbot-dns-rfc2136
7799 certbot-dns-route53
7800 ]
7801 );
7802
7803 clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { };
7804
7805 clucene_core = clucene_core_2;
7806
7807 codecserver = callPackage ../applications/audio/codecserver {
7808 protobuf = protobuf_21;
7809 };
7810
7811 inherit (cosmopolitan) cosmocc;
7812
7813 ctranslate2 = callPackage ../development/libraries/ctranslate2 rec {
7814 stdenv = if withCUDA then gcc11Stdenv else pkgs.stdenv;
7815 withCUDA = pkgs.config.cudaSupport;
7816 withCuDNN = withCUDA && (cudaPackages ? cudnn);
7817 cudaPackages = pkgs.cudaPackages;
7818 };
7819
7820 ustream-ssl = callPackage ../development/libraries/ustream-ssl { ssl_implementation = openssl; };
7821
7822 ustream-ssl-wolfssl = callPackage ../development/libraries/ustream-ssl {
7823 ssl_implementation = wolfssl;
7824 additional_buildInputs = [ openssl ];
7825 };
7826
7827 ustream-ssl-mbedtls = callPackage ../development/libraries/ustream-ssl {
7828 ssl_implementation = mbedtls_2;
7829 };
7830
7831 cxxtest = python3Packages.callPackage ../development/libraries/cxxtest { };
7832
7833 # Make bdb5 the default as it is the last release under the custom
7834 # bsd-like license
7835 db = db5;
7836 db4 = db48;
7837 db48 = callPackage ../development/libraries/db/db-4.8.nix { };
7838 db5 = db53;
7839 db53 = callPackage ../development/libraries/db/db-5.3.nix { };
7840 db6 = db60;
7841 db60 = callPackage ../development/libraries/db/db-6.0.nix { };
7842 db62 = callPackage ../development/libraries/db/db-6.2.nix { };
7843
7844 dbus = callPackage ../development/libraries/dbus { };
7845 dbus-sharp-1_0 = callPackage ../development/libraries/dbus-sharp/dbus-sharp-1.0.nix { };
7846 dbus-sharp-2_0 = callPackage ../development/libraries/dbus-sharp { };
7847
7848 dbus-sharp-glib-1_0 =
7849 callPackage ../development/libraries/dbus-sharp-glib/dbus-sharp-glib-1.0.nix
7850 { };
7851 dbus-sharp-glib-2_0 = callPackage ../development/libraries/dbus-sharp-glib { };
7852
7853 makeDBusConf = callPackage ../development/libraries/dbus/make-dbus-conf.nix { };
7854
7855 dee = callPackage ../development/libraries/dee { };
7856
7857 draco = callPackage ../development/libraries/draco {
7858 tinygltf = callPackage ../development/libraries/draco/tinygltf.nix { };
7859 };
7860
7861 # Multi-arch "drivers" which we want to build for i686.
7862 driversi686Linux = recurseIntoAttrs {
7863 inherit (pkgsi686Linux)
7864 amdvlk
7865 intel-media-driver
7866 intel-vaapi-driver
7867 mesa
7868 mesa-demos
7869 libva-vdpau-driver
7870 libvdpau-va-gl
7871 vdpauinfo
7872 ;
7873 };
7874
7875 eccodes = callPackage ../development/libraries/eccodes {
7876 pythonPackages = python3Packages;
7877 stdenv = if stdenv.hostPlatform.isDarwin then gccStdenv else stdenv;
7878 };
7879
7880 vapoursynth-editor = libsForQt5.callPackage ../by-name/va/vapoursynth/editor.nix { };
7881
7882 # TODO: Fix references and add justStaticExecutables https://github.com/NixOS/nixpkgs/issues/318013
7883 emanote = haskellPackages.emanote;
7884
7885 enchant2 = callPackage ../development/libraries/enchant/2.x.nix { };
7886 enchant = enchant2;
7887
7888 factorPackages-0_99 = callPackage ./factor-packages.nix {
7889 factor-unwrapped = callPackage ../development/compilers/factor-lang/0.99.nix { };
7890 };
7891 factorPackages-0_100 = callPackage ./factor-packages.nix {
7892 factor-unwrapped = callPackage ../development/compilers/factor-lang/0.100.nix { };
7893 };
7894 factorPackages = factorPackages-0_100;
7895
7896 factor-lang-0_99 = factorPackages-0_99.factor-lang;
7897 factor-lang-0_100 = factorPackages-0_100.factor-lang;
7898 factor-lang = factor-lang-0_100;
7899
7900 farstream = callPackage ../development/libraries/farstream {
7901 inherit (gst_all_1)
7902 gstreamer
7903 gst-plugins-base
7904 gst-plugins-good
7905 gst-plugins-bad
7906 gst-libav
7907 ;
7908 autoreconfHook = buildPackages.autoreconfHook269;
7909 };
7910
7911 inherit (callPackage ../development/libraries/ffmpeg { })
7912 ffmpeg_4
7913 ffmpeg_4-headless
7914 ffmpeg_4-full
7915 ffmpeg_6
7916 ffmpeg_6-headless
7917 ffmpeg_6-full
7918 ffmpeg_7
7919 ffmpeg_7-headless
7920 ffmpeg_7-full
7921 ffmpeg
7922 ffmpeg-headless
7923 ffmpeg-full
7924 ;
7925
7926 fftwSinglePrec = fftw.override { precision = "single"; };
7927 fftwFloat = fftwSinglePrec; # the configure option is just an alias
7928 fftwLongDouble = fftw.override { precision = "long-double"; };
7929 # Need gcc >= 4.6.0 to build with FFTW with quad precision, but Darwin defaults to Clang
7930 fftwQuad = fftw.override {
7931 precision = "quad-precision";
7932 stdenv = gccStdenv;
7933 };
7934 fftwMpi = fftw.override { enableMpi = true; };
7935
7936 flint = flint3;
7937
7938 flint3 = callPackage ../development/libraries/flint/3.nix { };
7939
7940 fltk13 = callPackage ../development/libraries/fltk { };
7941 fltk14 = callPackage ../development/libraries/fltk/1.4.nix { };
7942 fltk13-minimal = fltk13.override {
7943 withGL = false;
7944 withCairo = false;
7945 withPango = false;
7946 withExamples = false;
7947 withDocs = false;
7948 };
7949 fltk14-minimal = fltk14.override {
7950 withGL = false;
7951 withCairo = false;
7952 withPango = false;
7953 withExamples = false;
7954 withDocs = false;
7955 };
7956 fltk = fltk13;
7957 fltk-minimal = fltk13-minimal;
7958
7959 inherit (callPackages ../development/libraries/fmt { }) fmt_9 fmt_10 fmt_11;
7960
7961 fmt = fmt_10;
7962
7963 fplll = callPackage ../development/libraries/fplll { };
7964 fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix { };
7965
7966 freeimage = callPackage ../by-name/fr/freeimage/package.nix {
7967 openexr = openexr_2;
7968 };
7969
7970 freeipa = callPackage ../os-specific/linux/freeipa {
7971 # NOTE: freeipa and sssd need to be built with the same version of python
7972 kerberos = krb5.override {
7973 withVerto = true;
7974 };
7975 sasl = cyrus_sasl;
7976 samba = samba4.override {
7977 enableLDAP = true;
7978 };
7979 };
7980
7981 frog = res.languageMachines.frog;
7982
7983 fontconfig = callPackage ../development/libraries/fontconfig { };
7984
7985 makeFontsConf = callPackage ../development/libraries/fontconfig/make-fonts-conf.nix { };
7986
7987 makeFontsCache = callPackage ../development/libraries/fontconfig/make-fonts-cache.nix { };
7988
7989 gamenetworkingsockets = callPackage ../development/libraries/gamenetworkingsockets {
7990 protobuf = protobuf_21;
7991 };
7992
7993 gamt = callPackage ../by-name/am/amtterm/package.nix { withGamt = true; };
7994
7995 gcr = callPackage ../development/libraries/gcr { };
7996
7997 gcr_4 = callPackage ../development/libraries/gcr/4.nix { };
7998
7999 gecode_3 = callPackage ../development/libraries/gecode/3.nix { };
8000 gecode_6 = qt5.callPackage ../development/libraries/gecode { };
8001 gecode = gecode_6;
8002
8003 gegl = callPackage ../development/libraries/gegl {
8004 openexr = openexr_2;
8005 };
8006
8007 geoclue2-with-demo-agent = geoclue2.override { withDemoAgent = true; };
8008
8009 geoipWithDatabase = makeOverridable (callPackage ../development/libraries/geoip) {
8010 drvName = "geoip-tools";
8011 geoipDatabase = geolite-legacy;
8012 };
8013
8014 geoip = callPackage ../development/libraries/geoip { };
8015
8016 geos = callPackage ../development/libraries/geos { };
8017
8018 geos_3_9 = callPackage ../development/libraries/geos/3.9.nix { };
8019
8020 gettext = callPackage ../development/libraries/gettext { };
8021
8022 gdalMinimal = gdal.override {
8023 useMinimalFeatures = true;
8024 };
8025
8026 gdcm = callPackage ../development/libraries/gdcm {
8027 inherit (darwin) DarwinTools;
8028 };
8029
8030 ghp-import = with python3Packages; toPythonApplication ghp-import;
8031
8032 ghcid = haskellPackages.ghcid.bin;
8033
8034 graphia = qt6Packages.callPackage ../applications/science/misc/graphia { };
8035
8036 glew = callPackage ../development/libraries/glew { };
8037 glew110 = callPackage ../development/libraries/glew/1.10.nix { };
8038 glfw = glfw3;
8039 glfw2 = callPackage ../development/libraries/glfw/2.x.nix { };
8040
8041 glfw3-minecraft = callPackage ../by-name/gl/glfw3/package.nix {
8042 withMinecraftPatch = true;
8043 };
8044
8045 glibc = callPackage ../development/libraries/glibc (
8046 if stdenv.hostPlatform != stdenv.buildPlatform then
8047 {
8048 stdenv = gccCrossLibcStdenv; # doesn't compile without gcc
8049 libgcc = callPackage ../development/libraries/gcc/libgcc {
8050 gcc = gccCrossLibcStdenv.cc;
8051 glibc = glibc.override { libgcc = null; };
8052 stdenvNoLibs = gccCrossLibcStdenv;
8053 };
8054 }
8055 else
8056 {
8057 stdenv = gccStdenv; # doesn't compile without gcc
8058 }
8059 );
8060
8061 mtrace = callPackage ../development/libraries/glibc/mtrace.nix { };
8062
8063 # Provided by libc on Operating Systems that use the Extensible Linker Format.
8064 elf-header = if stdenv.hostPlatform.isElf then null else elf-header-real;
8065
8066 glibc_memusage = callPackage ../development/libraries/glibc {
8067 withGd = true;
8068 };
8069
8070 musl = callPackage ../by-name/mu/musl/package.nix (
8071 lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) {
8072 stdenv = stdenvNoLibc;
8073 }
8074 );
8075
8076 # These are used when building compiler-rt / libgcc, prior to building libc.
8077 preLibcHeaders =
8078 let
8079 inherit (stdenv.hostPlatform) libc;
8080 in
8081 if stdenv.hostPlatform.isMinGW then
8082 windows.mingw_w64_headers or fallback
8083 else if libc == "nblibc" then
8084 netbsd.headers
8085 else
8086 null;
8087
8088 # We can choose:
8089 libc =
8090 let
8091 inherit (stdenv.hostPlatform) libc;
8092 # libc is hackily often used from the previous stage. This `or`
8093 # hack fixes the hack, *sigh*.
8094 in
8095 if libc == null then
8096 null
8097 else if libc == "glibc" then
8098 glibc
8099 else if libc == "bionic" then
8100 bionic
8101 else if libc == "uclibc" then
8102 uclibc
8103 else if libc == "avrlibc" then
8104 avrlibc
8105 else if libc == "newlib" && stdenv.hostPlatform.isMsp430 then
8106 msp430Newlib
8107 else if libc == "newlib" && stdenv.hostPlatform.isVc4 then
8108 vc4-newlib
8109 else if libc == "newlib" && stdenv.hostPlatform.isOr1k then
8110 or1k-newlib
8111 else if libc == "newlib" then
8112 newlib
8113 else if libc == "newlib-nano" then
8114 newlib-nano
8115 else if libc == "musl" then
8116 musl
8117 else if libc == "msvcrt" then
8118 if stdenv.hostPlatform.isMinGW then windows.mingw_w64 else windows.sdk
8119 else if libc == "ucrt" then
8120 if stdenv.hostPlatform.isMinGW then windows.mingw_w64 else windows.sdk
8121 else if libc == "libSystem" then
8122 if stdenv.hostPlatform.useiOSPrebuilt then darwin.iosSdkPkgs.libraries else darwin.libSystem
8123 else if libc == "fblibc" then
8124 freebsd.libc
8125 else if libc == "oblibc" then
8126 openbsd.libc
8127 else if libc == "nblibc" then
8128 netbsd.libc
8129 else if libc == "wasilibc" then
8130 wasilibc
8131 else if libc == "relibc" then
8132 relibc
8133 else if libc == "llvm" then
8134 llvmPackages_20.libc
8135 else
8136 throw "Unknown libc ${libc}";
8137
8138 threads =
8139 lib.optionalAttrs (stdenv.hostPlatform.isMinGW && !(stdenv.hostPlatform.useLLVM or false))
8140 {
8141 # other possible values: win32 or posix
8142 model = "mcf";
8143 # For win32 or posix set this to null
8144 package = windows.mcfgthreads;
8145 };
8146
8147 wasilibc = callPackage ../development/libraries/wasilibc {
8148 stdenv = stdenvNoLibc;
8149 };
8150
8151 # Only supported on Linux and only on glibc
8152 glibcLocales =
8153 if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu then
8154 callPackage ../development/libraries/glibc/locales.nix {
8155 stdenv = if (!stdenv.cc.isGNU) then gccStdenv else stdenv;
8156 withLinuxHeaders = !stdenv.cc.isGNU;
8157 }
8158 else
8159 null;
8160 glibcLocalesUtf8 =
8161 if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu then
8162 callPackage ../development/libraries/glibc/locales.nix {
8163 stdenv = if (!stdenv.cc.isGNU) then gccStdenv else stdenv;
8164 withLinuxHeaders = !stdenv.cc.isGNU;
8165 allLocales = false;
8166 }
8167 else
8168 null;
8169
8170 glibcInfo = callPackage ../development/libraries/glibc/info.nix { };
8171
8172 glibc_multi = callPackage ../development/libraries/glibc/multi.nix {
8173 # The buildPackages is required for cross-compilation. The pkgsi686Linux set
8174 # has target and host always set to the same value based on target platform
8175 # of the current set. We need host to be same as build to correctly get i686
8176 # variant of glibc.
8177 glibc32 = pkgsi686Linux.buildPackages.glibc;
8178 };
8179
8180 glsurf = callPackage ../applications/science/math/glsurf {
8181 ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
8182 };
8183
8184 gmime2 = callPackage ../development/libraries/gmime/2.nix { };
8185 gmime3 = callPackage ../development/libraries/gmime/3.nix { };
8186 gmime = gmime2;
8187
8188 gmp6 = callPackage ../development/libraries/gmp/6.x.nix { };
8189 gmp = gmp6;
8190 gmpxx = gmp.override { cxx = true; };
8191
8192 #GMP ex-satellite, so better keep it near gmp
8193 # A GMP fork
8194 gns3Packages = dontRecurseIntoAttrs (callPackage ../applications/networking/gns3 { });
8195 gns3-gui = gns3Packages.guiStable;
8196 gns3-server = gns3Packages.serverStable;
8197
8198 gobject-introspection = callPackage ../development/libraries/gobject-introspection/wrapper.nix { };
8199
8200 gobject-introspection-unwrapped = callPackage ../development/libraries/gobject-introspection {
8201 nixStoreDir = config.nix.storeDir or builtins.storeDir;
8202 };
8203
8204 goocanvas = callPackage ../development/libraries/goocanvas { };
8205 goocanvas2 = callPackage ../development/libraries/goocanvas/2.x.nix { };
8206 goocanvas3 = callPackage ../development/libraries/goocanvas/3.x.nix { };
8207
8208 gsettings-qt = libsForQt5.callPackage ../development/libraries/gsettings-qt { };
8209
8210 gst_all_1 = recurseIntoAttrs (
8211 callPackage ../development/libraries/gstreamer {
8212 callPackage = newScope gst_all_1;
8213 }
8214 );
8215
8216 gnutls = callPackage ../development/libraries/gnutls {
8217 util-linux = util-linuxMinimal; # break the cyclic dependency
8218 autoconf = buildPackages.autoconf269;
8219 };
8220
8221 gpgme = callPackage ../development/libraries/gpgme { };
8222
8223 grantlee = libsForQt5.callPackage ../development/libraries/grantlee { };
8224
8225 glib = callPackage ../by-name/gl/glib/package.nix (
8226 let
8227 glib-untested = glib.overrideAttrs { doCheck = false; };
8228 in
8229 {
8230 # break dependency cycles
8231 # these things are only used for tests, they don't get into the closure
8232 shared-mime-info = shared-mime-info.override { glib = glib-untested; };
8233 desktop-file-utils = desktop-file-utils.override { glib = glib-untested; };
8234 dbus = dbus.override { enableSystemd = false; };
8235 }
8236 );
8237
8238 glibmm = callPackage ../development/libraries/glibmm { };
8239
8240 glibmm_2_68 = callPackage ../development/libraries/glibmm/2.68.nix { };
8241
8242 glirc = haskell.lib.compose.justStaticExecutables haskellPackages.glirc;
8243
8244 # Not moved to aliases while we decide if we should split the package again.
8245 atk = at-spi2-core;
8246
8247 atkmm = callPackage ../development/libraries/atkmm { };
8248
8249 atkmm_2_36 = callPackage ../development/libraries/atkmm/2.36.nix { };
8250
8251 cairomm = callPackage ../development/libraries/cairomm { };
8252
8253 cairomm_1_16 = callPackage ../development/libraries/cairomm/1.16.nix { };
8254
8255 pangomm = callPackage ../development/libraries/pangomm { };
8256
8257 pangomm_2_48 = callPackage ../development/libraries/pangomm/2.48.nix { };
8258
8259 pangomm_2_42 = callPackage ../development/libraries/pangomm/2.42.nix { };
8260
8261 gdk-pixbuf = callPackage ../development/libraries/gdk-pixbuf { };
8262
8263 gdk-pixbuf-xlib = callPackage ../development/libraries/gdk-pixbuf/xlib.nix { };
8264
8265 gtk2 = callPackage ../development/libraries/gtk/2.x.nix { };
8266
8267 gtk2-x11 = gtk2.override {
8268 cairo = cairo.override { x11Support = true; };
8269 pango = pango.override {
8270 cairo = cairo.override { x11Support = true; };
8271 x11Support = true;
8272 };
8273 gdktarget = "x11";
8274 };
8275
8276 gtk3 = callPackage ../development/libraries/gtk/3.x.nix { };
8277
8278 gtk4 = callPackage ../development/libraries/gtk/4.x.nix { };
8279
8280 # On darwin gtk uses cocoa by default instead of x11.
8281 gtk3-x11 = gtk3.override {
8282 cairo = cairo.override { x11Support = true; };
8283 pango = pango.override {
8284 cairo = cairo.override { x11Support = true; };
8285 x11Support = true;
8286 };
8287 x11Support = true;
8288 };
8289
8290 gtkmm2 = callPackage ../development/libraries/gtkmm/2.x.nix { };
8291 gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { };
8292 gtkmm4 = callPackage ../development/libraries/gtkmm/4.x.nix { };
8293
8294 gtk-sharp-2_0 = callPackage ../development/libraries/gtk-sharp/2.0.nix { };
8295
8296 gtk-sharp-3_0 = callPackage ../development/libraries/gtk-sharp/3.0.nix { };
8297
8298 gtk-mac-integration-gtk2 = gtk-mac-integration.override {
8299 gtk = gtk2;
8300 };
8301
8302 gtk-mac-integration-gtk3 = gtk-mac-integration;
8303
8304 gtksourceview = gtksourceview3;
8305
8306 gtksourceview3 = callPackage ../development/libraries/gtksourceview/3.x.nix { };
8307
8308 gtksourceview4 = callPackage ../development/libraries/gtksourceview/4.x.nix { };
8309
8310 gtksourceview5 = callPackage ../development/libraries/gtksourceview/5.x.nix { };
8311
8312 gtksourceviewmm = callPackage ../development/libraries/gtksourceviewmm { };
8313
8314 gtksourceviewmm4 = callPackage ../development/libraries/gtksourceviewmm/4.x.nix { };
8315
8316 gtkspell2 = callPackage ../development/libraries/gtkspell { };
8317
8318 gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { };
8319
8320 gwenhywfar = callPackage ../development/libraries/aqbanking/gwenhywfar.nix { };
8321
8322 hamlib = hamlib_3;
8323 hamlib_3 = callPackage ../development/libraries/hamlib { };
8324 hamlib_4 = callPackage ../development/libraries/hamlib/4.nix { };
8325
8326 heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { };
8327
8328 harfbuzzFull = harfbuzz.override {
8329 withGraphite2 = true;
8330 withIcu = true;
8331 };
8332
8333 herqq = libsForQt5.callPackage ../development/libraries/herqq { };
8334
8335 highfive-mpi = highfive.override { hdf5 = hdf5-mpi; };
8336
8337 hivex = callPackage ../development/libraries/hivex { };
8338
8339 hspell = callPackage ../development/libraries/hspell { };
8340
8341 hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { };
8342
8343 hunspellDicts = recurseIntoAttrs (callPackages ../by-name/hu/hunspell/dictionaries.nix { });
8344
8345 hunspellDictsChromium = recurseIntoAttrs (
8346 callPackages ../by-name/hu/hunspell/dictionaries-chromium.nix { }
8347 );
8348
8349 hunspellWithDicts =
8350 dicts:
8351 lib.warn "hunspellWithDicts is deprecated, please use hunspell.withDicts instead."
8352 hunspell.withDicts
8353 (_: dicts);
8354
8355 hydra = callPackage ../by-name/hy/hydra/package.nix { nix = nixVersions.nix_2_29; };
8356
8357 icu-versions = callPackages ../development/libraries/icu { };
8358 inherit (icu-versions)
8359 icu60
8360 icu63
8361 icu64
8362 icu66
8363 icu67
8364 icu69
8365 icu70
8366 icu71
8367 icu72
8368 icu73
8369 icu74
8370 icu75
8371 icu76
8372 icu77
8373 ;
8374
8375 icu = icu76;
8376
8377 idasen = with python3Packages; toPythonApplication idasen;
8378
8379 imlib2Full = imlib2.override {
8380 # Compilation error on Darwin with librsvg. For more information see:
8381 # https://github.com/NixOS/nixpkgs/pull/166452#issuecomment-1090725613
8382 svgSupport = !stdenv.hostPlatform.isDarwin;
8383 heifSupport = !stdenv.hostPlatform.isDarwin;
8384 webpSupport = true;
8385 jxlSupport = true;
8386 psSupport = true;
8387 };
8388 imlib2-nox = imlib2.override {
8389 x11Support = false;
8390 };
8391
8392 imlibsetroot = callPackage ../applications/graphics/imlibsetroot {
8393 libXinerama = xorg.libXinerama;
8394 };
8395
8396 indicator-application-gtk2 =
8397 callPackage ../development/libraries/indicator-application/gtk2.nix
8398 { };
8399 indicator-application-gtk3 =
8400 callPackage ../development/libraries/indicator-application/gtk3.nix
8401 { };
8402
8403 indilib = callPackage ../development/libraries/science/astronomy/indilib { };
8404 indi-3rdparty = recurseIntoAttrs (
8405 callPackages ../development/libraries/science/astronomy/indilib/indi-3rdparty.nix { }
8406 );
8407
8408 ios-cross-compile = callPackage ../development/compilers/ios-cross-compile/9.2.nix { };
8409
8410 irrlicht =
8411 if !stdenv.hostPlatform.isDarwin then
8412 callPackage ../development/libraries/irrlicht { }
8413 else
8414 callPackage ../development/libraries/irrlicht/mac.nix {
8415 };
8416
8417 iso-flags-png-320x240 = iso-flags.overrideAttrs (oldAttrs: {
8418 buildFlags = [ "png-country-320x240-fancy" ];
8419 installPhase = ''
8420 runHook preInstall
8421 mkdir -p $out/share && mv build/png-country-4x2-fancy/res-320x240 $out/share/iso-flags-png
8422 runHook postInstall
8423 '';
8424 });
8425
8426 isoimagewriter = libsForQt5.callPackage ../tools/misc/isoimagewriter { };
8427
8428 isort = with python3Packages; toPythonApplication isort;
8429
8430 isso = callPackage ../servers/isso {
8431 nodejs = nodejs_20;
8432 };
8433
8434 itk_5_2 = callPackage ../development/libraries/itk/5.2.x.nix {
8435 enableRtk = false;
8436 };
8437
8438 itk_5 = callPackage ../development/libraries/itk/5.x.nix { };
8439
8440 itk = itk_5;
8441
8442 jemalloc = callPackage ../development/libraries/jemalloc { };
8443
8444 rust-jemalloc-sys = callPackage ../development/libraries/jemalloc/rust.nix { };
8445 rust-jemalloc-sys-unprefixed = rust-jemalloc-sys.override { unprefixed = true; };
8446
8447 json2yaml = haskell.lib.compose.justStaticExecutables haskellPackages.json2yaml;
8448
8449 keybinder = callPackage ../development/libraries/keybinder {
8450 lua = lua5_1;
8451 };
8452
8453 keybinder3 = callPackage ../development/libraries/keybinder3 {
8454 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
8455 };
8456
8457 krb5 = callPackage ../development/libraries/kerberos/krb5.nix {
8458 inherit (buildPackages.darwin) bootstrap_cmds;
8459 };
8460 libkrb5 = krb5; # TODO(de11n) Try to make krb5 reuse libkrb5 as a dependency
8461
8462 ktextaddons = libsForQt5.callPackage ../development/libraries/ktextaddons { };
8463
8464 l-smash = callPackage ../development/libraries/l-smash {
8465 stdenv = gccStdenv;
8466 };
8467
8468 languageMachines = recurseIntoAttrs (
8469 import ../development/libraries/languagemachines/packages.nix {
8470 inherit pkgs;
8471 }
8472 );
8473
8474 laurel = callPackage ../servers/monitoring/laurel/default.nix { };
8475
8476 lcms = lcms2;
8477
8478 libagar = callPackage ../development/libraries/libagar { };
8479 libagar_test = callPackage ../development/libraries/libagar/libagar_test.nix { };
8480
8481 libao = callPackage ../development/libraries/libao {
8482 usePulseAudio = config.pulseaudio or (lib.meta.availableOn stdenv.hostPlatform libpulseaudio);
8483 };
8484
8485 libappindicator-gtk2 = libappindicator.override { gtkVersion = "2"; };
8486 libappindicator-gtk3 = libappindicator.override { gtkVersion = "3"; };
8487 libasn1c = callPackage ../servers/osmocom/libasn1c/default.nix { };
8488
8489 libbap = callPackage ../development/libraries/libbap {
8490 inherit (ocaml-ng.ocamlPackages_4_14)
8491 bap
8492 ocaml
8493 findlib
8494 ctypes
8495 ctypes-foreign
8496 ;
8497 };
8498
8499 libbass = (callPackage ../development/libraries/audio/libbass { }).bass;
8500 libbass_fx = (callPackage ../development/libraries/audio/libbass { }).bass_fx;
8501 libbassmidi = (callPackage ../development/libraries/audio/libbass { }).bassmidi;
8502 libbassmix = (callPackage ../development/libraries/audio/libbass { }).bassmix;
8503
8504 libcamera-qcam = callPackage ../by-name/li/libcamera/package.nix { withQcam = true; };
8505
8506 libcanberra-gtk2 = pkgs.libcanberra.override {
8507 gtkSupport = "gtk2";
8508 };
8509 libcanberra-gtk3 = pkgs.libcanberra.override {
8510 gtkSupport = "gtk3";
8511 };
8512
8513 libcanberra_kde =
8514 if (config.kde_runtime.libcanberraWithoutGTK or true) then
8515 pkgs.libcanberra
8516 else
8517 pkgs.libcanberra-gtk2;
8518
8519 libcec = callPackage ../development/libraries/libcec { };
8520
8521 libcec_platform = callPackage ../development/libraries/libcec/platform.nix { };
8522
8523 libcef = callPackage ../development/libraries/libcef { };
8524
8525 libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; };
8526
8527 libchamplain_libsoup3 = libchamplain.override { withLibsoup3 = true; };
8528
8529 libchipcard = callPackage ../development/libraries/aqbanking/libchipcard.nix { };
8530
8531 libcxxrt = callPackage ../development/libraries/libcxxrt {
8532 stdenv =
8533 if stdenv.hostPlatform.useLLVM or false then
8534 overrideCC stdenv buildPackages.llvmPackages.tools.clangNoLibcxx
8535 else
8536 stdenv;
8537 };
8538
8539 libdbiDriversBase = libdbiDrivers.override {
8540 libmysqlclient = null;
8541 sqlite = null;
8542 };
8543
8544 libdbusmenu-gtk2 = libdbusmenu.override { gtkVersion = "2"; };
8545 libdbusmenu-gtk3 = libdbusmenu.override { gtkVersion = "3"; };
8546
8547 libdevil = callPackage ../development/libraries/libdevil { };
8548
8549 libdevil-nox = callPackage ../development/libraries/libdevil {
8550 withXorg = false;
8551 };
8552
8553 libdvdnav = callPackage ../development/libraries/libdvdnav { };
8554 libdvdnav_4_2_1 = callPackage ../development/libraries/libdvdnav/4.2.1.nix {
8555 libdvdread = libdvdread_4_9_9;
8556 };
8557
8558 libdvdread = callPackage ../development/libraries/libdvdread { };
8559 libdvdread_4_9_9 = callPackage ../development/libraries/libdvdread/4.9.9.nix { };
8560
8561 dwarfdump = libdwarf.bin;
8562
8563 libfm-extra = libfm.override {
8564 extraOnly = true;
8565 };
8566
8567 libgda5 = callPackage ../development/libraries/libgda/5.x.nix { };
8568
8569 libgda6 = callPackage ../development/libraries/libgda/6.x.nix { };
8570
8571 libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { };
8572 libgnome-games-support_2_0 =
8573 callPackage ../development/libraries/libgnome-games-support/2.0.nix
8574 { };
8575
8576 libextractor = callPackage ../development/libraries/libextractor {
8577 libmpeg2 = mpeg2dec;
8578 };
8579
8580 libfive = libsForQt5.callPackage ../development/libraries/libfive { };
8581
8582 # Use Apple’s fork of libffi by default, which provides APIs and trampoline functionality that is not yet
8583 # merged upstream. This is needed by some packages (such as cffi).
8584 #
8585 # `libffiReal` is provided in case the upstream libffi package is needed on Darwin instead of the fork.
8586 libffiReal = callPackage ../development/libraries/libffi { };
8587 libffi = if stdenv.hostPlatform.isDarwin then darwin.libffi else libffiReal;
8588 libffi_3_3 = callPackage ../development/libraries/libffi/3.3.nix { };
8589
8590 # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=README;h=fd6e1a83f55696c1f7a08f6dfca08b2d6b7617ec;hb=70058cd9f944d620764e57c838209afae8a58c78#l118
8591 libgpg-error-gen-posix-lock-obj = libgpg-error.override {
8592 genPosixLockObjOnly = true;
8593 };
8594
8595 libindicator-gtk2 = libindicator.override { gtkVersion = "2"; };
8596 libindicator-gtk3 = libindicator.override { gtkVersion = "3"; };
8597 inherit (callPackage ../development/libraries/libliftoff { }) libliftoff_0_4 libliftoff_0_5;
8598 libliftoff = libliftoff_0_5;
8599
8600 libqtdbusmock = libsForQt5.callPackage ../development/libraries/libqtdbusmock {
8601 inherit (lomiri) cmake-extras;
8602 };
8603
8604 libqtdbustest = libsForQt5.callPackage ../development/libraries/libqtdbustest {
8605 inherit (lomiri) cmake-extras;
8606 };
8607
8608 librepo = callPackage ../tools/package-management/librepo { };
8609
8610 libretranslate = with python3.pkgs; toPythonApplication libretranslate;
8611
8612 librsb = callPackage ../development/libraries/librsb {
8613 # Taken from https://build.opensuse.org/package/view_file/science/librsb/librsb.spec
8614 memHierarchy = "L3:16/64/8192K,L2:16/64/2048K,L1:8/64/16K";
8615 };
8616
8617 # GNU libc provides libiconv so systems with glibc don't need to
8618 # build libiconv separately. Additionally, Apple forked/repackaged
8619 # libiconv, so build and use the upstream one with a compatible ABI,
8620 # and BSDs include libiconv in libc.
8621 #
8622 # We also provide `libiconvReal`, which will always be a standalone libiconv,
8623 # just in case you want it regardless of platform.
8624 libiconv =
8625 if
8626 lib.elem stdenv.hostPlatform.libc [
8627 "glibc"
8628 "musl"
8629 "nblibc"
8630 "wasilibc"
8631 "fblibc"
8632 ]
8633 then
8634 libcIconv pkgs.libc
8635 else if stdenv.hostPlatform.isDarwin then
8636 darwin.libiconv
8637 else
8638 libiconvReal;
8639
8640 libcIconv =
8641 libc:
8642 let
8643 inherit (libc) pname version;
8644 libcDev = lib.getDev libc;
8645 in
8646 runCommand "${pname}-iconv-${version}" { strictDeps = true; } ''
8647 mkdir -p $out/include
8648 ln -sv ${libcDev}/include/iconv.h $out/include
8649 '';
8650
8651 libiconvReal = callPackage ../development/libraries/libiconv { };
8652
8653 iconv =
8654 if
8655 lib.elem stdenv.hostPlatform.libc [
8656 "glibc"
8657 "musl"
8658 ]
8659 then
8660 lib.getBin libc
8661 else if stdenv.hostPlatform.isDarwin then
8662 lib.getBin libiconv
8663 else if stdenv.hostPlatform.isFreeBSD then
8664 lib.getBin freebsd.iconv
8665 else
8666 lib.getBin libiconvReal;
8667
8668 # On non-GNU systems we need GNU Gettext for libintl.
8669 libintl = if stdenv.hostPlatform.libc != "glibc" then gettext else null;
8670
8671 libidn2 = callPackage ../development/libraries/libidn2 { };
8672
8673 libinput = callPackage ../development/libraries/libinput {
8674 graphviz = graphviz-nox;
8675 };
8676
8677 # also known as libturbojpeg
8678 libjpeg = libjpeg_turbo;
8679 libjpeg8 = libjpeg_turbo.override { enableJpeg8 = true; };
8680
8681 malcontent = callPackage ../development/libraries/malcontent { };
8682
8683 malcontent-ui = callPackage ../development/libraries/malcontent/ui.nix { };
8684
8685 libmatthew_java = callPackage ../development/libraries/java/libmatthew-java {
8686 jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
8687 };
8688
8689 inherit
8690 ({
8691 libmicrohttpd_0_9_77 = callPackage ../development/libraries/libmicrohttpd/0.9.77.nix { };
8692 libmicrohttpd_1_0 = callPackage ../development/libraries/libmicrohttpd/1.0.nix { };
8693 })
8694 libmicrohttpd_0_9_77
8695 libmicrohttpd_1_0
8696 ;
8697
8698 libmicrohttpd = libmicrohttpd_1_0;
8699
8700 libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { };
8701
8702 libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { };
8703
8704 libmusicbrainz = libmusicbrainz3;
8705
8706 libosmscout = libsForQt5.callPackage ../development/libraries/libosmscout { };
8707
8708 libpeas = callPackage ../development/libraries/libpeas { };
8709 libpeas2 = callPackage ../development/libraries/libpeas/2.x.nix { };
8710
8711 libpng = callPackage ../development/libraries/libpng {
8712 stdenv =
8713 # libpng is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
8714 # that does not propagate xcrun.
8715 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
8716 };
8717
8718 libpng12 = callPackage ../development/libraries/libpng/12.nix { };
8719
8720 inherit
8721 (callPackages ../development/libraries/prometheus-client-c {
8722 stdenv = gccStdenv; # Required for darwin
8723 })
8724 libprom
8725 ;
8726
8727 libpulsar = callPackage ../development/libraries/libpulsar {
8728 protobuf = protobuf_21;
8729 };
8730
8731 libsigcxx = callPackage ../development/libraries/libsigcxx { };
8732
8733 libsigcxx30 = callPackage ../development/libraries/libsigcxx/3.0.nix { };
8734
8735 libsoup_2_4 = callPackage ../development/libraries/libsoup { };
8736
8737 libsoup_3 = callPackage ../development/libraries/libsoup/3.x.nix { };
8738
8739 libtorrent-rasterbar = libtorrent-rasterbar-2_0_x;
8740
8741 libubox-nossl = callPackage ../development/libraries/libubox { };
8742
8743 libubox = callPackage ../development/libraries/libubox { with_ustream_ssl = true; };
8744
8745 libubox-wolfssl = callPackage ../development/libraries/libubox {
8746 with_ustream_ssl = true;
8747 ustream-ssl = ustream-ssl-wolfssl;
8748 };
8749
8750 libubox-mbedtls = callPackage ../development/libraries/libubox {
8751 with_ustream_ssl = true;
8752 ustream-ssl = ustream-ssl-mbedtls;
8753 };
8754
8755 libunistring = callPackage ../development/libraries/libunistring { };
8756
8757 libunique = callPackage ../development/libraries/libunique { };
8758 libunique3 = callPackage ../development/libraries/libunique/3.x.nix { };
8759
8760 libusb-compat-0_1 = callPackage ../development/libraries/libusb-compat/0.1.nix { };
8761
8762 libunicode = callPackage ../by-name/li/libunicode/package.nix {
8763 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_17.stdenv else stdenv;
8764 };
8765
8766 libunwind =
8767 # Use the system unwinder in the SDK but provide a compatibility package to:
8768 # 1. avoid evaluation errors with setting `unwind` to `null`; and
8769 # 2. provide a `.pc` for compatibility with packages that expect to find libunwind that way.
8770 if stdenv.hostPlatform.isDarwin then
8771 darwin.libunwind
8772 else if stdenv.hostPlatform.system == "riscv32-linux" then
8773 llvmPackages.libunwind
8774 else
8775 callPackage ../development/libraries/libunwind { };
8776
8777 libv4l = lowPrio (
8778 v4l-utils.override {
8779 withUtils = false;
8780 }
8781 );
8782
8783 libva-minimal = callPackage ../development/libraries/libva { minimal = true; };
8784 libva = libva-minimal.override { minimal = false; };
8785 libva-utils = callPackage ../development/libraries/libva/utils.nix { };
8786
8787 libva1 = callPackage ../development/libraries/libva/1.nix { };
8788 libva1-minimal = libva1.override { minimal = true; };
8789
8790 libwnck = callPackage ../development/libraries/libwnck { };
8791 libwnck2 = callPackage ../development/libraries/libwnck/2.nix { };
8792
8793 libwpd = callPackage ../development/libraries/libwpd { };
8794
8795 libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { };
8796
8797 libxcrypt = callPackage ../development/libraries/libxcrypt {
8798 fetchurl = stdenv.fetchurlBoot;
8799 perl = buildPackages.perl.override {
8800 enableCrypt = false;
8801 fetchurl = stdenv.fetchurlBoot;
8802 };
8803 };
8804 libxcrypt-legacy = libxcrypt.override { enableHashes = "all"; };
8805
8806 libxkbcommon = libxkbcommon_8;
8807 libxml2 = callPackage ../development/libraries/libxml2 {
8808 python = python3;
8809 stdenv =
8810 # libxml2 is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
8811 # that does not propagate xcrun.
8812 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
8813 };
8814
8815 libxml2Python =
8816 let
8817 inherit (python3.pkgs) libxml2;
8818 in
8819 pkgs.buildEnv {
8820 # slightly hacky
8821 name = "libxml2+py-${res.libxml2.version}";
8822 paths = with libxml2; [
8823 dev
8824 bin
8825 py
8826 ];
8827 # Avoid update.nix/tests conflicts with libxml2.
8828 passthru = builtins.removeAttrs libxml2.passthru [
8829 "updateScript"
8830 "tests"
8831 ];
8832 # the hook to find catalogs is hidden by buildEnv
8833 postBuild = ''
8834 mkdir "$out/nix-support"
8835 cp '${libxml2.dev}/nix-support/propagated-build-inputs' "$out/nix-support/"
8836 '';
8837 };
8838
8839 libxmlxx = callPackage ../development/libraries/libxmlxx { };
8840 libxmlxx3 = callPackage ../development/libraries/libxmlxx/v3.nix { };
8841
8842 libxslt = callPackage ../development/libraries/libxslt { };
8843
8844 libwpe = callPackage ../development/libraries/libwpe { };
8845
8846 libwpe-fdo = callPackage ../development/libraries/libwpe/fdo.nix { };
8847
8848 yaml-cpp = callPackage ../development/libraries/yaml-cpp { };
8849
8850 yaml-cpp_0_3 = callPackage ../development/libraries/yaml-cpp/0.3.0.nix { };
8851
8852 liquid-dsp = callPackage ../development/libraries/liquid-dsp {
8853 inherit (darwin) autoSignDarwinBinariesHook;
8854 };
8855
8856 luabind = callPackage ../development/libraries/luabind { lua = lua5_1; };
8857
8858 luabind_luajit = luabind.override { lua = luajit; };
8859
8860 luksmeta = callPackage ../development/libraries/luksmeta {
8861 asciidoc = asciidoc-full;
8862 };
8863
8864 matterhorn =
8865 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
8866 (
8867 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
8868 lib.id
8869 else
8870 haskell.lib.compose.justStaticExecutables
8871 )
8872 haskellPackages.matterhorn;
8873
8874 mbedtls_2 = callPackage ../development/libraries/mbedtls/2.nix { };
8875 mbedtls = callPackage ../development/libraries/mbedtls/3.nix { };
8876
8877 mediastreamer = libsForQt5.callPackage ../development/libraries/mediastreamer { };
8878
8879 mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
8880
8881 mergerfs = callPackage ../tools/filesystems/mergerfs { };
8882
8883 mergerfs-tools = callPackage ../tools/filesystems/mergerfs/tools.nix { };
8884
8885 simple-dftd3 = callPackage ../development/libraries/science/chemistry/simple-dftd3 { };
8886
8887 tblite = callPackage ../development/libraries/science/chemistry/tblite { };
8888
8889 ## libGL/libGLU/Mesa stuff
8890
8891 # Default libGL implementation.
8892 #
8893 # Android NDK provides an OpenGL implementation, we can just use that.
8894 #
8895 # On macOS, the SDK provides the OpenGL framework in `stdenv`.
8896 # Packages that still need GLX specifically can pull in `libGLX`
8897 # instead. If you have a package that should work without X11 but it
8898 # can’t find the library, it may help to add the path to
8899 # `$NIX_CFLAGS_COMPILE`:
8900 #
8901 # preConfigure = ''
8902 # export NIX_CFLAGS_COMPILE+=" -L$SDKROOT/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries"
8903 # '';
8904 #
8905 # If you still can’t get it working, please don’t hesitate to ping
8906 # @NixOS/darwin-maintainers to ask an expert to take a look.
8907 libGL =
8908 if stdenv.hostPlatform.useAndroidPrebuilt then
8909 stdenv
8910 else if stdenv.hostPlatform.isDarwin then
8911 null
8912 else
8913 libglvnd;
8914
8915 # On macOS, the SDK provides the OpenGL framework in `stdenv`.
8916 # Packages that use `libGLX` on macOS may need to depend on
8917 # `mesa_glu` directly if this doesn’t work.
8918 libGLU = if stdenv.hostPlatform.isDarwin then null else mesa_glu;
8919
8920 # `libglvnd` does not work (yet?) on macOS.
8921 libGLX = if stdenv.hostPlatform.isDarwin then mesa else libglvnd;
8922
8923 # On macOS, the SDK provides the GLUT framework in `stdenv`. Packages
8924 # that use `libGLX` on macOS may need to depend on `freeglut`
8925 # directly if this doesn’t work.
8926 libglut = if stdenv.hostPlatform.isDarwin then null else freeglut;
8927
8928 mesa =
8929 if stdenv.hostPlatform.isDarwin then
8930 callPackage ../development/libraries/mesa/darwin.nix { }
8931 else
8932 callPackage ../development/libraries/mesa { };
8933
8934 mesa_i686 = pkgsi686Linux.mesa; # make it build on Hydra
8935
8936 libgbm = callPackage ../development/libraries/mesa/gbm.nix { };
8937 mesa-gl-headers = callPackage ../development/libraries/mesa/headers.nix { };
8938
8939 ## End libGL/libGLU/Mesa stuff
8940
8941 mkvtoolnix-cli = mkvtoolnix.override {
8942 withGUI = false;
8943 };
8944
8945 mpeg2dec = libmpeg2;
8946
8947 msoffcrypto-tool = with python3.pkgs; toPythonApplication msoffcrypto-tool;
8948
8949 mpich = callPackage ../development/libraries/mpich {
8950 ch4backend = libfabric;
8951 };
8952
8953 mpich-pmix = mpich.override {
8954 pmixSupport = true;
8955 withPm = [ ];
8956 };
8957
8958 mygpoclient = with python3.pkgs; toPythonApplication mygpoclient;
8959
8960 nanovna-saver = libsForQt5.callPackage ../applications/science/electronics/nanovna-saver { };
8961
8962 nemo-qml-plugin-dbus = libsForQt5.callPackage ../development/libraries/nemo-qml-plugin-dbus { };
8963
8964 ncurses5 = ncurses.override {
8965 abiVersion = "5";
8966 };
8967 ncurses6 = ncurses.override {
8968 abiVersion = "6";
8969 };
8970 ncurses =
8971 if stdenv.hostPlatform.useiOSPrebuilt then
8972 null
8973 else
8974 callPackage ../development/libraries/ncurses {
8975 # ncurses is included in the SDK. Avoid an infinite recursion by using a bootstrap stdenv.
8976 stdenv = if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
8977 };
8978
8979 nettle = import ../development/libraries/nettle { inherit callPackage fetchurl; };
8980
8981 libnghttp2 = nghttp2.lib;
8982
8983 ngtcp2 = callPackage ../development/libraries/ngtcp2 { };
8984 ngtcp2-gnutls = callPackage ../development/libraries/ngtcp2/gnutls.nix { };
8985
8986 non = callPackage ../applications/audio/non {
8987 wafHook = (waf.override { extraTools = [ "gccdeps" ]; }).hook;
8988 };
8989
8990 nss_latest = callPackage ../development/libraries/nss/latest.nix { };
8991 nss_esr = callPackage ../development/libraries/nss/esr.nix { };
8992 nss = nss_esr;
8993 nssTools = nss.tools;
8994
8995 nuspell = callPackage ../development/libraries/nuspell { };
8996 nuspellWithDicts =
8997 dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; };
8998
8999 nv-codec-headers-9 = nv-codec-headers.override { majorVersion = "9"; };
9000 nv-codec-headers-10 = nv-codec-headers.override { majorVersion = "10"; };
9001 nv-codec-headers-11 = nv-codec-headers.override { majorVersion = "11"; };
9002 nv-codec-headers-12 = nv-codec-headers.override { majorVersion = "12"; };
9003
9004 nvidiaCtkPackages = callPackage ../by-name/nv/nvidia-container-toolkit/packages.nix { };
9005 inherit (nvidiaCtkPackages)
9006 nvidia-docker
9007 ;
9008
9009 nvidia-vaapi-driver = lib.hiPrio (callPackage ../development/libraries/nvidia-vaapi-driver { });
9010
9011 nvidia-system-monitor-qt = libsForQt5.callPackage ../tools/system/nvidia-system-monitor-qt { };
9012
9013 nvtopPackages = recurseIntoAttrs (import ../tools/system/nvtop { inherit callPackage stdenv; });
9014
9015 inherit (callPackages ../development/libraries/ogre { })
9016 ogre_13
9017 ogre_14
9018 ;
9019
9020 ogre = ogre_14;
9021
9022 openal = openalSoft;
9023
9024 openbabel = openbabel3;
9025
9026 openbabel2 = callPackage ../development/libraries/openbabel/2.nix { };
9027
9028 openbabel3 = callPackage ../development/libraries/openbabel { };
9029
9030 opencascade-occt_7_6 = opencascade-occt.overrideAttrs rec {
9031 pname = "opencascade-occt";
9032 version = "7.6.2";
9033 commit = "V${builtins.replaceStrings [ "." ] [ "_" ] version}";
9034 src = fetchurl {
9035 name = "occt-${commit}.tar.gz";
9036 url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
9037 hash = "sha256-n3KFrN/mN1SVXfuhEUAQ1fJzrCvhiclxfEIouyj9Z18=";
9038 };
9039 patches = [
9040 # Backport GCC 14 build fix
9041 (fetchpatch {
9042 url = "https://github.com/Open-Cascade-SAS/OCCT/commit/7236e83dcc1e7284e66dc61e612154617ef715d6.patch";
9043 hash = "sha256-NoC2mE3DG78Y0c9UWonx1vmXoU4g5XxFUT3eVXqLU60=";
9044 })
9045 ];
9046 };
9047
9048 opencascade-occt_7_6_1 = opencascade-occt.overrideAttrs {
9049 pname = "opencascade-occt";
9050 version = "7.6.1";
9051 src = fetchFromGitHub {
9052 owner = "Open-Cascade-SAS";
9053 repo = "OCCT";
9054 rev = "V7_6_1";
9055 sha256 = "sha256-C02P3D363UwF0NM6R4D4c6yE5ZZxCcu5CpUaoTOxh7E=";
9056 };
9057 };
9058
9059 opencv4 = callPackage ../development/libraries/opencv/4.x.nix {
9060 pythonPackages = python3Packages;
9061 # TODO: LTO does not work.
9062 # https://github.com/NixOS/nixpkgs/issues/343123
9063 enableLto = false;
9064 };
9065
9066 opencv4WithoutCuda = opencv4.override {
9067 enableCuda = false;
9068 };
9069
9070 opencv = opencv4;
9071
9072 openexr = callPackage ../development/libraries/openexr/3.nix { };
9073 openexr_2 = callPackage ../development/libraries/openexr/2.nix { };
9074
9075 opencolorio = callPackage ../development/libraries/opencolorio { };
9076 opencolorio_1 = callPackage ../development/libraries/opencolorio/1.x.nix { };
9077
9078 openstackclient = with python313Packages; toPythonApplication python-openstackclient;
9079 openstackclient-full = openstackclient.overridePythonAttrs (oldAttrs: {
9080 dependencies = oldAttrs.dependencies ++ oldAttrs.optional-dependencies.cli-plugins;
9081 });
9082 barbicanclient = with python313Packages; toPythonApplication python-barbicanclient;
9083 glanceclient = with python313Packages; toPythonApplication python-glanceclient;
9084 heatclient = with python313Packages; toPythonApplication python-heatclient;
9085 ironicclient = with python313Packages; toPythonApplication python-ironicclient;
9086 magnumclient = with python313Packages; toPythonApplication python-magnumclient;
9087 manilaclient = with python313Packages; toPythonApplication python-manilaclient;
9088 mistralclient = with python313Packages; toPythonApplication python-mistralclient;
9089 swiftclient = with python313Packages; toPythonApplication python-swiftclient;
9090 troveclient = with python313Packages; toPythonApplication python-troveclient;
9091 watcherclient = with python313Packages; toPythonApplication python-watcherclient;
9092 zunclient = with python313Packages; toPythonApplication python-zunclient;
9093
9094 inherit (callPackages ../development/libraries/libressl { })
9095 libressl_3_9
9096 libressl_4_0
9097 libressl_4_1
9098 ;
9099
9100 libressl = libressl_4_1;
9101
9102 openssl = openssl_3_5;
9103
9104 openssl_legacy = openssl.override {
9105 conf = ../development/libraries/openssl/3.0/legacy.cnf;
9106 };
9107
9108 inherit (callPackages ../development/libraries/openssl { })
9109 openssl_1_1
9110 openssl_3
9111 openssl_3_5
9112 ;
9113
9114 openwebrx = callPackage ../applications/radio/openwebrx {
9115 inherit (python3Packages)
9116 buildPythonPackage
9117 buildPythonApplication
9118 setuptools
9119 pycsdr
9120 pydigiham
9121 ;
9122 };
9123
9124 pcre = callPackage ../development/libraries/pcre { };
9125 # pcre32 seems unused
9126 pcre-cpp = res.pcre.override { variant = "cpp"; };
9127
9128 pcre2 = callPackage ../development/libraries/pcre2 { };
9129
9130 pdfhummus = libsForQt5.callPackage ../development/libraries/pdfhummus { };
9131
9132 inherit
9133 (callPackage ../development/libraries/physfs {
9134 })
9135 physfs_2
9136 physfs
9137 ;
9138
9139 pingvin-share = callPackage ../servers/web-apps/pingvin-share { };
9140
9141 pipelight = callPackage ../tools/misc/pipelight {
9142 stdenv = stdenv_32bit;
9143 wine-staging = pkgsi686Linux.wine-staging;
9144 };
9145
9146 place-cursor-at = haskell.lib.compose.justStaticExecutables haskellPackages.place-cursor-at;
9147
9148 podofo = podofo_1_0;
9149
9150 poppler = callPackage ../development/libraries/poppler { lcms = lcms2; };
9151
9152 poppler_gi = lowPrio (
9153 poppler.override {
9154 introspectionSupport = true;
9155 }
9156 );
9157
9158 poppler_min = poppler.override {
9159 # TODO: maybe reduce even more
9160 minimal = true;
9161 suffix = "min";
9162 };
9163
9164 poppler-utils = poppler.override {
9165 suffix = "utils";
9166 utils = true;
9167 };
9168
9169 proj = callPackage ../development/libraries/proj { };
9170
9171 proj_7 = callPackage ../development/libraries/proj/7.nix { };
9172
9173 prospector = callPackage ../development/tools/prospector { };
9174
9175 protobuf = protobuf_31;
9176
9177 inherit
9178 ({
9179 protobuf_31 = callPackage ../development/libraries/protobuf/31.nix { };
9180 protobuf_30 = callPackage ../development/libraries/protobuf/30.nix { };
9181 protobuf_29 = callPackage ../development/libraries/protobuf/29.nix {
9182 # More recent versions of abseil seem to be missing absl::if_constexpr
9183 abseil-cpp = abseil-cpp_202407;
9184 };
9185 protobuf_27 = callPackage ../development/libraries/protobuf/27.nix { };
9186 protobuf_25 = callPackage ../development/libraries/protobuf/25.nix { };
9187 protobuf_21 = callPackage ../development/libraries/protobuf/21.nix {
9188 abseil-cpp = abseil-cpp_202103;
9189 };
9190 })
9191 protobuf_31
9192 protobuf_30
9193 protobuf_29
9194 protobuf_27
9195 protobuf_25
9196 protobuf_21
9197 ;
9198
9199 flatbuffers = callPackage ../development/libraries/flatbuffers { };
9200 flatbuffers_23 = callPackage ../development/libraries/flatbuffers/23.nix { };
9201
9202 nanopbMalloc = callPackage ../by-name/na/nanopb/package.nix { enableMalloc = true; };
9203
9204 pth = if stdenv.hostPlatform.isMusl then npth else gnupth;
9205
9206 python-qt = libsForQt5.callPackage ../development/libraries/python-qt { };
9207
9208 pyotherside = libsForQt5.callPackage ../development/libraries/pyotherside { };
9209
9210 qbs = libsForQt5.callPackage ../development/tools/build-managers/qbs { };
9211
9212 qdjango = libsForQt5.callPackage ../development/libraries/qdjango { };
9213
9214 qmenumodel = libsForQt5.callPackage ../development/libraries/qmenumodel {
9215 inherit (lomiri) cmake-extras;
9216 };
9217
9218 qolibri = libsForQt5.callPackage ../applications/misc/qolibri { };
9219
9220 quarto = callPackage ../development/libraries/quarto { };
9221
9222 quartoMinimal = callPackage ../development/libraries/quarto {
9223 rWrapper = null;
9224 python3 = null;
9225 };
9226
9227 qt5 = recurseIntoAttrs (
9228 makeOverridable (import ../development/libraries/qt-5/5.15) {
9229 inherit (__splicedPackages)
9230 makeScopeWithSplicing'
9231 generateSplicesForMkScope
9232 lib
9233 stdenv
9234 fetchurl
9235 fetchpatch
9236 fetchgit
9237 fetchFromGitHub
9238 makeSetupHook
9239 makeWrapper
9240 bison
9241 cups
9242 dconf
9243 harfbuzz
9244 libGL
9245 perl
9246 gtk3
9247 python3
9248 llvmPackages_15
9249 overrideLibcxx
9250 darwin
9251 ;
9252 inherit (__splicedPackages.gst_all_1) gstreamer gst-plugins-base;
9253 inherit config;
9254 }
9255 );
9256
9257 libsForQt5 =
9258 (recurseIntoAttrs (
9259 import ./qt5-packages.nix {
9260 inherit
9261 lib
9262 config
9263 __splicedPackages
9264 makeScopeWithSplicing'
9265 generateSplicesForMkScope
9266 pkgsHostTarget
9267 ;
9268 }
9269 ))
9270 // {
9271 __recurseIntoDerivationForReleaseJobs = true;
9272 };
9273
9274 # plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop
9275 plasma5Packages = libsForQt5;
9276
9277 qtEnv = qt5.env;
9278 qt5Full = qt5.full;
9279
9280 qt6 = recurseIntoAttrs (callPackage ../development/libraries/qt-6 { });
9281
9282 qt6Packages = recurseIntoAttrs (
9283 import ./qt6-packages.nix {
9284 inherit
9285 lib
9286 config
9287 __splicedPackages
9288 makeScopeWithSplicing'
9289 generateSplicesForMkScope
9290 pkgsHostTarget
9291 kdePackages
9292 ;
9293 inherit stdenv;
9294 }
9295 );
9296
9297 readline70 = callPackage ../development/libraries/readline/7.0.nix { };
9298
9299 readline = callPackage ../development/libraries/readline/8.3.nix { };
9300
9301 readmdict = with python3Packages; toPythonApplication readmdict;
9302
9303 kissfftFloat = kissfft.override {
9304 datatype = "float";
9305 };
9306
9307 lambdabot = callPackage ../development/tools/haskell/lambdabot {
9308 haskellLib = haskell.lib.compose;
9309 };
9310
9311 librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { };
9312
9313 librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { };
9314
9315 librdf_redland = callPackage ../development/libraries/librdf/redland.nix { };
9316 redland = librdf_redland; # added 2018-04-25
9317
9318 renovate = callPackage ../by-name/re/renovate/package.nix {
9319 nodejs = nodejs_22;
9320 };
9321
9322 qradiolink = callPackage ../applications/radio/qradiolink {
9323 protobuf = protobuf_21;
9324 };
9325
9326 qadwaitadecorations-qt6 = callPackage ../by-name/qa/qadwaitadecorations/package.nix {
9327 useQt6 = true;
9328 };
9329
9330 qgnomeplatform = libsForQt5.callPackage ../development/libraries/qgnomeplatform { };
9331
9332 qgnomeplatform-qt6 = qt6Packages.callPackage ../development/libraries/qgnomeplatform {
9333 useQt6 = true;
9334 };
9335
9336 reposilitePlugins = recurseIntoAttrs (callPackage ../by-name/re/reposilite/plugins.nix { });
9337
9338 rhino = callPackage ../development/libraries/java/rhino { };
9339
9340 rocksdb_9_10 = rocksdb.overrideAttrs rec {
9341 pname = "rocksdb";
9342 version = "9.10.0";
9343 src = fetchFromGitHub {
9344 owner = "facebook";
9345 repo = pname;
9346 rev = "v${version}";
9347 hash = "sha256-G+DlQwEUyd7JOCjS1Hg1cKWmA/qAiK8UpUIKcP+riGQ=";
9348 };
9349 };
9350
9351 rocksdb_8_11 = rocksdb.overrideAttrs rec {
9352 pname = "rocksdb";
9353 version = "8.11.4";
9354 src = fetchFromGitHub {
9355 owner = "facebook";
9356 repo = pname;
9357 rev = "v${version}";
9358 hash = "sha256-ZrU7G3xeimF3H2LRGBDHOq936u5pH/3nGecM4XEoWc8=";
9359 };
9360 };
9361
9362 rocksdb_8_3 = rocksdb.overrideAttrs rec {
9363 pname = "rocksdb";
9364 version = "8.3.2";
9365 src = fetchFromGitHub {
9366 owner = "facebook";
9367 repo = pname;
9368 rev = "v${version}";
9369 hash = "sha256-mfIRQ8nkUbZ3Bugy3NAvOhcfzFY84J2kBUIUBcQ2/Qg=";
9370 };
9371 };
9372
9373 rocksdb_7_10 = rocksdb.overrideAttrs rec {
9374 pname = "rocksdb";
9375 version = "7.10.2";
9376 src = fetchFromGitHub {
9377 owner = "facebook";
9378 repo = pname;
9379 rev = "v${version}";
9380 hash = "sha256-U2ReSrJwjAXUdRmwixC0DQXht/h/6rV8SOf5e2NozIs=";
9381 };
9382 };
9383
9384 rocksdb_6_23 = rocksdb.overrideAttrs rec {
9385 pname = "rocksdb";
9386 version = "6.23.3";
9387 src = fetchFromGitHub {
9388 owner = "facebook";
9389 repo = pname;
9390 rev = "v${version}";
9391 hash = "sha256-SsDqhjdCdtIGNlsMj5kfiuS3zSGwcxi4KV71d95h7yk=";
9392 };
9393 };
9394
9395 rshell = python3.pkgs.callPackage ../development/embedded/rshell { };
9396
9397 schroedinger = callPackage ../development/libraries/schroedinger { };
9398
9399 SDL = SDL_compat;
9400 SDL2 = sdl2-compat;
9401
9402 sdr-j-fm = libsForQt5.callPackage ../applications/radio/sdr-j-fm { };
9403
9404 sigdigger = libsForQt5.callPackage ../applications/radio/sigdigger { };
9405
9406 sev-snp-measure = with python3Packages; toPythonApplication sev-snp-measure;
9407
9408 graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix { };
9409
9410 simavr = callPackage ../development/tools/simavr {
9411 avrgcc = pkgsCross.avr.buildPackages.gcc;
9412 avrlibc = pkgsCross.avr.libc;
9413 };
9414
9415 simpleitk = callPackage ../development/libraries/simpleitk { lua = lua5_4; };
9416
9417 skawarePackages = recurseIntoAttrs (callPackage ../development/skaware-packages { });
9418
9419 inherit (skawarePackages)
9420 execline
9421 execline-man-pages
9422 mdevd
9423 nsss
9424 s6
9425 s6-dns
9426 s6-linux-init
9427 s6-linux-utils
9428 s6-man-pages
9429 s6-networking
9430 s6-networking-man-pages
9431 s6-portable-utils
9432 s6-portable-utils-man-pages
9433 s6-rc
9434 s6-rc-man-pages
9435 sdnotify-wrapper
9436 skalibs
9437 skalibs_2_10
9438 tipidee
9439 utmps
9440 ;
9441
9442 kgt = callPackage ../development/tools/kgt {
9443 inherit (skawarePackages) cleanPackaging;
9444 };
9445
9446 slibGuile = callPackage ../development/libraries/slib {
9447 scheme = guile;
9448 };
9449
9450 soapysdr = callPackage ../applications/radio/soapysdr { };
9451
9452 soapysdr-with-plugins = callPackage ../applications/radio/soapysdr {
9453 extraPackages = [
9454 limesuite
9455 soapyairspy
9456 soapyaudio
9457 soapybladerf
9458 soapyhackrf
9459 soapyplutosdr
9460 soapyremote
9461 soapyrtlsdr
9462 soapyuhd
9463 ];
9464 };
9465
9466 spandsp = callPackage ../development/libraries/spandsp { };
9467 spandsp3 = callPackage ../development/libraries/spandsp/3.nix { };
9468
9469 speechd-minimal = speechd.override {
9470 withLibao = false;
9471 withPulse = false;
9472 withAlsa = false;
9473 withOss = false;
9474 withFlite = false;
9475 withEspeak = false;
9476 withPico = false;
9477 libsOnly = true;
9478 };
9479
9480 speex = callPackage ../development/libraries/speex {
9481 fftw = fftwFloat;
9482 };
9483
9484 speexdsp = callPackage ../development/libraries/speexdsp {
9485 fftw = fftwFloat;
9486 };
9487
9488 sphinx = with python3Packages; toPythonApplication sphinx;
9489
9490 sphinx-autobuild = with python3Packages; toPythonApplication sphinx-autobuild;
9491
9492 sphinx-serve = with python3Packages; toPythonApplication sphinx-serve;
9493
9494 inherit (python3Packages) sphinxHook;
9495
9496 suwidgets = libsForQt5.callPackage ../applications/radio/suwidgets { };
9497
9498 sqlite = lowPrio (callPackage ../development/libraries/sqlite { });
9499
9500 unqlite = lowPrio (callPackage ../development/libraries/unqlite { });
9501
9502 inherit
9503 (callPackage ../development/libraries/sqlite/tools.nix {
9504 })
9505 sqlite-analyzer
9506 sqldiff
9507 sqlite-rsync
9508 ;
9509
9510 sqlar = callPackage ../development/libraries/sqlite/sqlar.nix { };
9511
9512 sqlite-interactive = (sqlite.override { interactive = true; }).bin;
9513
9514 stlink-gui = callPackage ../by-name/st/stlink/package.nix { withGUI = true; };
9515
9516 streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix { };
9517
9518 structuresynth = libsForQt5.callPackage ../development/libraries/structuresynth { };
9519
9520 svxlink = libsForQt5.callPackage ../applications/radio/svxlink { };
9521
9522 szurubooru = callPackage ../servers/web-apps/szurubooru { };
9523
9524 tclap = tclap_1_2;
9525
9526 tclap_1_2 = callPackage ../development/libraries/tclap/1.2.nix { };
9527
9528 tclap_1_4 = callPackage ../development/libraries/tclap/1.4.nix { };
9529
9530 termbench-pro = callPackage ../by-name/te/termbench-pro/package.nix {
9531 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_17.stdenv else stdenv;
9532 fmt = fmt_11;
9533 };
9534
9535 tinyxml = tinyxml2;
9536
9537 tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { };
9538
9539 tk = tk-8_6;
9540
9541 tk-9_0 = callPackage ../development/libraries/tk/9.0.nix { tcl = tcl-9_0; };
9542 tk-8_6 = callPackage ../development/libraries/tk/8.6.nix { };
9543 tk-8_5 = callPackage ../development/libraries/tk/8.5.nix { tcl = tcl-8_5; };
9544
9545 tpm2-tss = callPackage ../development/libraries/tpm2-tss {
9546 autoreconfHook = buildPackages.autoreconfHook269;
9547 };
9548
9549 unixODBCDrivers = recurseIntoAttrs (callPackages ../development/libraries/unixODBCDrivers { });
9550
9551 valeStyles = recurseIntoAttrs (callPackages ../by-name/va/vale/styles.nix { });
9552
9553 valhalla = callPackage ../development/libraries/valhalla {
9554 boost = boost.override {
9555 enablePython = true;
9556 python = python3;
9557 };
9558 protobuf = protobuf_21.override {
9559 abseil-cpp = abseil-cpp_202103.override {
9560 cxxStandard = "17";
9561 };
9562 };
9563 };
9564
9565 vc = callPackage ../development/libraries/vc { };
9566
9567 vc_0_7 = callPackage ../development/libraries/vc/0.7.nix { };
9568
9569 vencord-web-extension = callPackage ../by-name/ve/vencord/package.nix { buildWebExtension = true; };
9570
9571 vid-stab = callPackage ../development/libraries/vid-stab {
9572 inherit (llvmPackages) openmp;
9573 };
9574
9575 vigra = callPackage ../development/libraries/vigra {
9576 hdf5 = hdf5.override { usev110Api = true; };
9577 };
9578
9579 # Temporarily use python 3.12
9580 # See: https://github.com/vllm-project/vllm/issues/12083
9581 vllm = with python312Packages; toPythonApplication vllm;
9582
9583 vte-gtk4 = vte.override {
9584 gtkVersion = "4";
9585 };
9586
9587 vtfedit = callPackage ../by-name/vt/vtfedit/package.nix {
9588 wine = wineWowPackages.staging;
9589 };
9590
9591 inherit (callPackage ../development/libraries/vtk { }) vtk_9_5;
9592
9593 vtk = vtk_9_5;
9594
9595 vtk-full = vtk.override {
9596 qtVersion = "6";
9597 mpiSupport = true;
9598 pythonSupport = true;
9599 };
9600
9601 vtkWithQt5 = vtk.override { qtVersion = "5"; };
9602
9603 vtkWithQt6 = vtk.override { qtVersion = "6"; };
9604
9605 vulkan-caps-viewer = libsForQt5.callPackage ../tools/graphics/vulkan-caps-viewer { };
9606
9607 wayland = callPackage ../development/libraries/wayland { };
9608 wayland-scanner = callPackage ../development/libraries/wayland/scanner.nix { };
9609
9610 wayland-protocols = callPackage ../development/libraries/wayland/protocols.nix { };
9611
9612 waylandpp = callPackage ../development/libraries/waylandpp {
9613 graphviz = graphviz-nox;
9614 };
9615
9616 webkitgtk_4_0 = callPackage ../development/libraries/webkitgtk {
9617 harfbuzz = harfbuzzFull;
9618 libsoup = libsoup_2_4;
9619 inherit (gst_all_1) gst-plugins-base gst-plugins-bad;
9620 };
9621
9622 webkitgtk_4_1 = webkitgtk_4_0.override {
9623 libsoup = libsoup_3;
9624 };
9625
9626 webkitgtk_6_0 = webkitgtk_4_0.override {
9627 libsoup = libsoup_3;
9628 gtk3 = gtk4;
9629 };
9630
9631 wlr-protocols = callPackage ../development/libraries/wlroots/protocols.nix { };
9632
9633 wt = wt4;
9634 inherit (libsForQt5.callPackage ../development/libraries/wt { })
9635 wt4
9636 ;
9637
9638 inherit (callPackages ../development/libraries/xapian { })
9639 xapian_1_4
9640 ;
9641 xapian = xapian_1_4;
9642
9643 xapian-omega = callPackage ../development/libraries/xapian/tools/omega {
9644 libmagic = file;
9645 };
9646
9647 xcb-util-cursor = xorg.xcbutilcursor;
9648 xcb-util-cursor-HEAD = callPackage ../development/libraries/xcb-util-cursor/HEAD.nix { };
9649
9650 xcbutilxrm = callPackage ../servers/x11/xorg/xcb-util-xrm.nix { };
9651
9652 xgboostWithCuda = xgboost.override { cudaSupport = true; };
9653
9654 zlib = callPackage ../development/libraries/zlib {
9655 stdenv =
9656 # zlib is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
9657 # that does not propagate xcrun.
9658 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
9659 };
9660
9661 inherit
9662 (rec {
9663 zigPackages = recurseIntoAttrs (callPackage ../development/compilers/zig { });
9664
9665 zig_0_12 = zigPackages."0.12";
9666 zig_0_13 = zigPackages."0.13";
9667 zig_0_14 = zigPackages."0.14";
9668 })
9669 zigPackages
9670 zig_0_12
9671 zig_0_13
9672 zig_0_14
9673 ;
9674
9675 zig = zig_0_14;
9676
9677 zigStdenv = if stdenv.cc.isZig then stdenv else lowPrio zig.passthru.stdenv;
9678
9679 libzint = zint-qt.override { withGUI = false; };
9680
9681 aroccPackages = recurseIntoAttrs (callPackage ../development/compilers/arocc { });
9682 arocc = aroccPackages.latest;
9683
9684 aroccStdenv = if stdenv.cc.isArocc then stdenv else lowPrio arocc.cc.passthru.stdenv;
9685
9686 ### DEVELOPMENT / LIBRARIES / DARWIN SDKS
9687
9688 apple-sdk_11 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "11"; };
9689 apple-sdk_12 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "12"; };
9690 apple-sdk_13 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "13"; };
9691 apple-sdk_14 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "14"; };
9692 apple-sdk_15 = callPackage ../by-name/ap/apple-sdk/package.nix { darwinSdkMajorVersion = "15"; };
9693
9694 darwinMinVersionHook =
9695 deploymentTarget:
9696 makeSetupHook {
9697 name = "darwin-deployment-target-hook-${deploymentTarget}";
9698 substitutions = {
9699 darwinMinVersionVariable = lib.escapeShellArg stdenv.hostPlatform.darwinMinVersionVariable;
9700 deploymentTarget = lib.escapeShellArg deploymentTarget;
9701 };
9702 } ../os-specific/darwin/darwin-min-version-hook/setup-hook.sh;
9703
9704 ### DEVELOPMENT / TESTING TOOLS
9705
9706 atf = callPackage ../by-name/at/atf/package.nix {
9707 stdenv =
9708 # atf is a dependency of libiconv. Avoid an infinite recursion with `pkgsStatic` by using a bootstrap stdenv.
9709 if stdenv.hostPlatform.isDarwin then darwin.bootstrapStdenv else stdenv;
9710 };
9711
9712 ### DEVELOPMENT / LIBRARIES / AGDA
9713
9714 agdaPackages = callPackage ./agda-packages.nix {
9715 inherit (haskellPackages) Agda;
9716 };
9717 agda = agdaPackages.agda;
9718
9719 ### DEVELOPMENT / LIBRARIES / BASH
9720
9721 ### DEVELOPMENT / LIBRARIES / JAVA
9722
9723 javaCup = callPackage ../development/libraries/java/cup {
9724 jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
9725 };
9726
9727 saxonb = saxonb_8_8;
9728 saxon-he = saxon_12-he;
9729
9730 inherit
9731 (callPackages ../development/libraries/java/saxon {
9732 jre = jre_headless;
9733 jre8 = jre8_headless;
9734 })
9735 saxon
9736 saxonb_8_8
9737 saxonb_9_1
9738 saxon_9-he
9739 saxon_11-he
9740 saxon_12-he
9741 ;
9742
9743 ### DEVELOPMENT / LIBRARIES / JAVASCRIPT
9744
9745 ### DEVELOPMENT / BOWER MODULES (JAVASCRIPT)
9746
9747 buildBowerComponents = callPackage ../development/bower-modules/generic { };
9748
9749 ### DEVELOPMENT / GO
9750
9751 # the unversioned attributes should always point to the same go version
9752 go = go_1_24;
9753 buildGoModule = buildGo124Module;
9754
9755 go_latest = go_1_24;
9756 buildGoLatestModule = buildGo124Module;
9757
9758 go_1_23 = callPackage ../development/compilers/go/1.23.nix { };
9759 buildGo123Module = callPackage ../build-support/go/module.nix {
9760 go = buildPackages.go_1_23;
9761 };
9762
9763 go_1_24 = callPackage ../development/compilers/go/1.24.nix { };
9764 buildGo124Module = callPackage ../build-support/go/module.nix {
9765 go = buildPackages.go_1_24;
9766 };
9767
9768 go_1_25 = callPackage ../development/compilers/go/1.25.nix { };
9769 buildGo125Module = callPackage ../build-support/go/module.nix {
9770 go = buildPackages.go_1_25;
9771 };
9772
9773 ### DEVELOPMENT / HARE
9774
9775 hareHook = callPackage ../by-name/ha/hare/hook.nix { };
9776
9777 ### DEVELOPMENT / JAVA MODULES
9778
9779 javaPackages = recurseIntoAttrs (callPackage ./java-packages.nix { });
9780
9781 ### DEVELOPMENT / LISP MODULES
9782
9783 asdf = callPackage ../development/lisp-modules/asdf {
9784 texLive = null;
9785 };
9786
9787 # QuickLisp minimal version
9788 asdf_2_26 = callPackage ../development/lisp-modules/asdf/2.26.nix {
9789 texLive = null;
9790 };
9791 # Currently most popular
9792 asdf_3_1 = callPackage ../development/lisp-modules/asdf/3.1.nix {
9793 texLive = null;
9794 };
9795 # Latest
9796 asdf_3_3 = callPackage ../development/lisp-modules/asdf/3.3.nix {
9797 texLive = null;
9798 };
9799
9800 wrapLisp = callPackage ../development/lisp-modules/nix-cl.nix { };
9801
9802 # Armed Bear Common Lisp
9803 abcl = wrapLisp {
9804 pkg = callPackage ../development/compilers/abcl {
9805 # https://armedbear.common-lisp.dev/ lists OpenJDK 17 as the highest
9806 # supported JDK.
9807 jdk = openjdk17;
9808 };
9809 faslExt = "abcl";
9810 };
9811
9812 # Clozure Common Lisp
9813 ccl = wrapLisp {
9814 pkg = callPackage ../development/compilers/ccl {
9815 inherit (buildPackages.darwin) bootstrap_cmds;
9816 };
9817 faslExt = "lx64fsl";
9818 };
9819
9820 # Clasp Common Lisp
9821 clasp-common-lisp = wrapLisp {
9822 pkg = callPackage ../development/compilers/clasp { };
9823 faslExt = "fasl";
9824 };
9825
9826 # CLISP
9827 clisp = wrapLisp {
9828 pkg = callPackage ../development/interpreters/clisp { };
9829 faslExt = "fas";
9830 flags = [
9831 "-E"
9832 "UTF-8"
9833 ];
9834 };
9835
9836 wrapLispi686Linux = pkgsi686Linux.callPackage ../development/lisp-modules/nix-cl.nix { };
9837
9838 # CMU Common Lisp
9839 cmucl_binary = wrapLispi686Linux {
9840 pkg = pkgsi686Linux.callPackage ../development/compilers/cmucl/binary.nix { };
9841 faslExt = "sse2f";
9842 program = "lisp";
9843 };
9844
9845 # Embeddable Common Lisp
9846 ecl = wrapLisp {
9847 pkg = callPackage ../development/compilers/ecl { };
9848 faslExt = "fas";
9849 };
9850 ecl_16_1_2 = wrapLisp {
9851 pkg = callPackage ../development/compilers/ecl/16.1.2.nix { };
9852 faslExt = "fas";
9853 };
9854
9855 # GNU Common Lisp
9856 gcl = wrapLisp {
9857 pkg = callPackage ../development/compilers/gcl { };
9858 faslExt = "o";
9859 };
9860
9861 # ManKai Common Lisp
9862 mkcl = wrapLisp {
9863 pkg = callPackage ../development/compilers/mkcl { };
9864 faslExt = "fas";
9865 };
9866
9867 # Steel Bank Common Lisp
9868 sbcl_2_4_6 = wrapLisp {
9869 pkg = callPackage ../development/compilers/sbcl { version = "2.4.6"; };
9870 faslExt = "fasl";
9871 flags = [
9872 "--dynamic-space-size"
9873 "3000"
9874 ];
9875 };
9876 sbcl_2_4_10 = wrapLisp {
9877 pkg = callPackage ../development/compilers/sbcl { version = "2.4.10"; };
9878 faslExt = "fasl";
9879 flags = [
9880 "--dynamic-space-size"
9881 "3000"
9882 ];
9883 };
9884 sbcl_2_5_4 = wrapLisp {
9885 pkg = callPackage ../development/compilers/sbcl { version = "2.5.4"; };
9886 faslExt = "fasl";
9887 flags = [
9888 "--dynamic-space-size"
9889 "3000"
9890 ];
9891 };
9892 sbcl_2_5_5 = wrapLisp {
9893 pkg = callPackage ../development/compilers/sbcl { version = "2.5.5"; };
9894 faslExt = "fasl";
9895 flags = [
9896 "--dynamic-space-size"
9897 "3000"
9898 ];
9899 };
9900 sbcl = sbcl_2_5_5;
9901
9902 sbclPackages = recurseIntoAttrs sbcl.pkgs;
9903
9904 ### DEVELOPMENT / PERL MODULES
9905
9906 perlInterpreters = import ../development/interpreters/perl { inherit callPackage; };
9907 inherit (perlInterpreters) perl538 perl540;
9908
9909 perl538Packages = recurseIntoAttrs perl538.pkgs;
9910 perl540Packages = recurseIntoAttrs perl540.pkgs;
9911
9912 perl = perl540;
9913 perlPackages = perl540Packages;
9914
9915 ack = perlPackages.ack;
9916
9917 perlcritic = perlPackages.PerlCritic;
9918
9919 sqitchMysql =
9920 (callPackage ../development/tools/misc/sqitch {
9921 mysqlSupport = true;
9922 }).overrideAttrs
9923 { pname = "sqitch-mysql"; };
9924
9925 sqitchPg =
9926 (callPackage ../development/tools/misc/sqitch {
9927 postgresqlSupport = true;
9928 }).overrideAttrs
9929 { pname = "sqitch-pg"; };
9930
9931 sqitchSqlite =
9932 (callPackage ../development/tools/misc/sqitch {
9933 sqliteSupport = true;
9934 }).overrideAttrs
9935 { pname = "sqitch-sqlite"; };
9936
9937 ### DEVELOPMENT / R MODULES
9938
9939 R = callPackage ../applications/science/math/R {
9940 # TODO: split docs into a separate output
9941 withRecommendedPackages = false;
9942 };
9943
9944 rWrapper = callPackage ../development/r-modules/wrapper.nix {
9945 recommendedPackages = with rPackages; [
9946 boot
9947 class
9948 cluster
9949 codetools
9950 foreign
9951 KernSmooth
9952 lattice
9953 MASS
9954 Matrix
9955 mgcv
9956 nlme
9957 nnet
9958 rpart
9959 spatial
9960 survival
9961 ];
9962 # Override this attribute to register additional libraries.
9963 packages = [ ];
9964 };
9965
9966 radianWrapper = callPackage ../development/r-modules/wrapper-radian.nix {
9967 recommendedPackages = with rPackages; [
9968 boot
9969 class
9970 cluster
9971 codetools
9972 foreign
9973 KernSmooth
9974 lattice
9975 MASS
9976 Matrix
9977 mgcv
9978 nlme
9979 nnet
9980 rpart
9981 spatial
9982 survival
9983 ];
9984 # Override this attribute to register additional libraries.
9985 packages = [ ];
9986 # Override this attribute if you want to expose R with the same set of
9987 # packages as specified in radian
9988 wrapR = false;
9989 };
9990
9991 rstudioWrapper = callPackage ../development/r-modules/wrapper-rstudio.nix {
9992 recommendedPackages = with rPackages; [
9993 boot
9994 class
9995 cluster
9996 codetools
9997 foreign
9998 KernSmooth
9999 lattice
10000 MASS
10001 Matrix
10002 mgcv
10003 nlme
10004 nnet
10005 rpart
10006 spatial
10007 survival
10008 ];
10009 # Override this attribute to register additional libraries.
10010 packages = [ ];
10011 };
10012
10013 rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; };
10014
10015 rPackages = dontRecurseIntoAttrs (
10016 callPackage ../development/r-modules {
10017 overrides = (config.rPackageOverrides or (_: { })) pkgs;
10018 }
10019 );
10020
10021 ### SERVERS
10022
10023 alerta = callPackage ../servers/monitoring/alerta/client.nix { };
10024
10025 alerta-server = callPackage ../servers/monitoring/alerta { };
10026
10027 apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { };
10028 apacheHttpd = apacheHttpd_2_4;
10029
10030 apacheHttpdPackagesFor =
10031 apacheHttpd: self:
10032 let
10033 callPackage = newScope self;
10034 in
10035 {
10036 inherit apacheHttpd;
10037 mod_auth_mellon = callPackage ../servers/http/apache-modules/mod_auth_mellon { };
10038 mod_ca = callPackage ../servers/http/apache-modules/mod_ca { };
10039 mod_crl = callPackage ../servers/http/apache-modules/mod_crl { };
10040 mod_cspnonce = callPackage ../servers/http/apache-modules/mod_cspnonce { };
10041 mod_csr = callPackage ../servers/http/apache-modules/mod_csr { };
10042 mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { };
10043 mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { };
10044 mod_itk = callPackage ../servers/http/apache-modules/mod_itk { };
10045 mod_jk = callPackage ../servers/http/apache-modules/mod_jk { };
10046 mod_mbtiles = callPackage ../servers/http/apache-modules/mod_mbtiles { };
10047 mod_ocsp = callPackage ../servers/http/apache-modules/mod_ocsp { };
10048 mod_perl = callPackage ../servers/http/apache-modules/mod_perl { };
10049 mod_pkcs12 = callPackage ../servers/http/apache-modules/mod_pkcs12 { };
10050 mod_python = callPackage ../servers/http/apache-modules/mod_python { };
10051 mod_scep = callPackage ../servers/http/apache-modules/mod_scep { };
10052 mod_spkac = callPackage ../servers/http/apache-modules/mod_spkac { };
10053 mod_tile = callPackage ../servers/http/apache-modules/mod_tile { };
10054 mod_timestamp = callPackage ../servers/http/apache-modules/mod_timestamp { };
10055 mod_wsgi3 = callPackage ../servers/http/apache-modules/mod_wsgi { };
10056 php = pkgs.php.override { inherit apacheHttpd; };
10057 subversion = pkgs.subversion.override {
10058 httpServer = true;
10059 inherit apacheHttpd;
10060 };
10061 }
10062 // lib.optionalAttrs config.allowAliases {
10063 mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4";
10064 mod_wsgi = self.mod_wsgi2;
10065 mod_wsgi2 = throw "mod_wsgi2 has been removed since Python 2 is EOL. Use mod_wsgi3 instead";
10066 };
10067
10068 apacheHttpdPackages_2_4 = recurseIntoAttrs (
10069 apacheHttpdPackagesFor apacheHttpd_2_4 apacheHttpdPackages_2_4
10070 );
10071 apacheHttpdPackages = apacheHttpdPackages_2_4;
10072
10073 appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { };
10074
10075 cassandra_4 = callPackage ../servers/nosql/cassandra/4.nix {
10076 # Effective Cassandra 4.0.2 there is full Java 11 support
10077 # -- https://cassandra.apache.org/doc/latest/cassandra/new/java11.html
10078 jre = pkgs.jdk11_headless;
10079 python = python3;
10080 };
10081 cassandra = cassandra_4;
10082
10083 cassandra-cpp-driver = callPackage ../development/libraries/cassandra-cpp-driver/default.nix { };
10084
10085 apache-jena = callPackage ../servers/nosql/apache-jena/binary.nix {
10086 java = jre;
10087 };
10088
10089 apache-jena-fuseki = callPackage ../servers/nosql/apache-jena/fuseki-binary.nix {
10090 java = jre;
10091 };
10092
10093 inherit (callPackages ../servers/asterisk { })
10094 asterisk
10095 asterisk-stable
10096 asterisk-lts
10097 asterisk_18
10098 asterisk_20
10099 ;
10100
10101 asterisk-ldap = lowPrio (asterisk.override { ldapSupport = true; });
10102
10103 dnsutils = bind.dnsutils;
10104 dig = lib.addMetaAttrs { mainProgram = "dig"; } bind.dnsutils;
10105
10106 charybdis = callPackage ../servers/irc/charybdis { };
10107
10108 clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
10109
10110 couchdb3 = callPackage ../servers/http/couchdb/3.nix { };
10111
10112 dcnnt = python3Packages.callPackage ../servers/dcnnt { };
10113
10114 deconz = qt5.callPackage ../servers/deconz { };
10115
10116 dict = callPackage ../servers/dict {
10117 flex = flex_2_5_35;
10118 libmaa = callPackage ../servers/dict/libmaa.nix { };
10119 };
10120
10121 dictdDBs = recurseIntoAttrs (callPackages ../servers/dict/dictd-db.nix { });
10122
10123 dictDBCollector = callPackage ../servers/dict/dictd-db-collector.nix { };
10124
10125 diod = callPackage ../servers/diod { lua = lua5_1; };
10126
10127 directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler {
10128 # https://github.com/NixOS/nixpkgs/issues/216294
10129 stdenv = if stdenv.cc.isGNU && stdenv.hostPlatform.isi686 then gcc11Stdenv else stdenv;
10130 };
10131
10132 dodgy = with python3Packages; toPythonApplication dodgy;
10133
10134 envoy = callPackage ../by-name/en/envoy/package.nix {
10135 jdk = openjdk11_headless;
10136 };
10137
10138 etcd = etcd_3_5;
10139 etcd_3_4 = callPackage ../servers/etcd/3.4.nix { };
10140 etcd_3_5 = callPackage ../servers/etcd/3.5 { };
10141
10142 prosody = callPackage ../servers/xmpp/prosody {
10143 withExtraLibs = [ ];
10144 withExtraLuaPackages = _: [ ];
10145 };
10146
10147 elasticmq-server-bin = callPackage ../servers/elasticmq-server-bin {
10148 jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
10149 jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
10150 };
10151
10152 eventstore = callPackage ../servers/nosql/eventstore { };
10153
10154 felix = callPackage ../servers/felix { };
10155
10156 felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { };
10157
10158 inherit (callPackages ../servers/firebird { })
10159 firebird_4
10160 firebird_3
10161 firebird
10162 ;
10163
10164 freshrss = callPackage ../servers/web-apps/freshrss { };
10165 freshrss-extensions = recurseIntoAttrs (callPackage ../servers/web-apps/freshrss/extensions { });
10166
10167 grafana = callPackage ../servers/monitoring/grafana { };
10168 grafanaPlugins = recurseIntoAttrs (callPackages ../servers/monitoring/grafana/plugins { });
10169
10170 hasura-cli = callPackage ../servers/hasura/cli.nix { };
10171
10172 inherit (callPackage ../servers/hbase { })
10173 hbase_2_4
10174 hbase_2_5
10175 hbase_2_6
10176 hbase_3_0
10177 ;
10178 hbase2 = hbase_2_6;
10179 hbase3 = hbase_3_0;
10180 hbase = hbase2; # when updating, point to the latest stable release
10181
10182 home-assistant = callPackage ../servers/home-assistant { };
10183
10184 buildHomeAssistantComponent = callPackage ../servers/home-assistant/build-custom-component { };
10185 home-assistant-custom-components = lib.recurseIntoAttrs (
10186 lib.packagesFromDirectoryRecursive {
10187 inherit (home-assistant.python.pkgs) callPackage;
10188 directory = ../servers/home-assistant/custom-components;
10189 }
10190 );
10191 home-assistant-custom-lovelace-modules = lib.recurseIntoAttrs (
10192 lib.packagesFromDirectoryRecursive {
10193 inherit callPackage;
10194 directory = ../servers/home-assistant/custom-lovelace-modules;
10195 }
10196 );
10197
10198 home-assistant-cli = callPackage ../servers/home-assistant/cli.nix { };
10199
10200 home-assistant-component-tests = recurseIntoAttrs home-assistant.tests.components;
10201
10202 icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { };
10203 icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { };
10204 icingaweb2 = callPackage ../servers/icingaweb2 { };
10205 icingaweb2Modules = {
10206 theme-april = callPackage ../servers/icingaweb2/theme-april { };
10207 theme-lsd = callPackage ../servers/icingaweb2/theme-lsd { };
10208 theme-particles = callPackage ../servers/icingaweb2/theme-particles { };
10209 theme-snow = callPackage ../servers/icingaweb2/theme-snow { };
10210 theme-spring = callPackage ../servers/icingaweb2/theme-spring { };
10211 };
10212
10213 inspircdMinimal = inspircd.override { extraModules = [ ]; };
10214
10215 inherit (callPackages ../servers/http/jetty { })
10216 jetty_11
10217 jetty_12
10218 ;
10219
10220 jetty = jetty_12;
10221
10222 kanidm_1_5 = callPackage ../by-name/ka/kanidm/1_5.nix { kanidm = kanidm_1_5; };
10223 kanidm_1_6 = callPackage ../by-name/ka/kanidm/1_6.nix { kanidm = kanidm_1_6; };
10224
10225 kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_6;
10226
10227 kanidmWithSecretProvisioning_1_5 = callPackage ../by-name/ka/kanidm/1_5.nix {
10228 enableSecretProvisioning = true;
10229 };
10230
10231 kanidmWithSecretProvisioning_1_6 = callPackage ../by-name/ka/kanidm/1_6.nix {
10232 enableSecretProvisioning = true;
10233 };
10234
10235 knot-resolver = callPackage ../servers/dns/knot-resolver {
10236 systemd = systemdMinimal; # in closure already anyway
10237 };
10238
10239 leafnode = callPackage ../servers/news/leafnode { };
10240
10241 leafnode1 = callPackage ../servers/news/leafnode/1.nix { };
10242
10243 lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix { };
10244
10245 lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix {
10246 nodejs = nodejs_20;
10247 };
10248
10249 mailmanPackages = recurseIntoAttrs (callPackage ../servers/mail/mailman { });
10250 inherit (mailmanPackages) mailman mailman-hyperkitty;
10251 mailman-web = mailmanPackages.web;
10252
10253 mastodon = callPackage ../servers/mastodon {
10254 nodejs-slim = nodejs-slim_22;
10255 python3 = python311;
10256 ruby = ruby_3_3;
10257 yarn-berry = yarn-berry_4.override { nodejs = nodejs-slim_22; };
10258 };
10259
10260 micro-full = micro.wrapper.override {
10261 extraPackages = [
10262 wl-clipboard
10263 xclip
10264 ];
10265 };
10266
10267 micro-with-wl-clipboard = micro.wrapper.override {
10268 extraPackages = [
10269 wl-clipboard
10270 ];
10271 };
10272
10273 micro-with-xclip = micro.wrapper.override {
10274 extraPackages = [
10275 xclip
10276 ];
10277 };
10278
10279 minio = callPackage ../servers/minio { };
10280 # Keep around to allow people to migrate their data from the old legacy fs format
10281 # https://github.com/minio/minio/releases/tag/RELEASE.2022-10-29T06-21-33Z
10282 minio_legacy_fs = callPackage ../servers/minio/legacy_fs.nix { };
10283
10284 mkchromecast = libsForQt5.callPackage ../applications/networking/mkchromecast { };
10285
10286 inherit
10287 (callPackages ../servers/mpd {
10288 })
10289 mpd
10290 mpd-small
10291 mpdWithFeatures
10292 ;
10293
10294 mtprotoproxy = python3.pkgs.callPackage ../servers/mtprotoproxy { };
10295
10296 moodle = callPackage ../servers/web-apps/moodle { };
10297
10298 moodle-utils = callPackage ../servers/web-apps/moodle/moodle-utils.nix { };
10299
10300 inherit (callPackage ../applications/networking/mullvad { })
10301 mullvad
10302 ;
10303
10304 mullvad-closest = with python3Packages; toPythonApplication mullvad-closest;
10305
10306 napalm =
10307 with python3Packages;
10308 toPythonApplication (
10309 napalm.overridePythonAttrs (attrs: {
10310 # add community frontends that depend on the napalm python package
10311 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
10312 napalm-hp-procurve
10313 ];
10314 })
10315 );
10316
10317 nginx = nginxStable;
10318
10319 nginxQuic = callPackage ../servers/http/nginx/quic.nix {
10320 zlib-ng = zlib-ng.override { withZlibCompat = true; };
10321 withPerl = false;
10322 # We don't use `with` statement here on purpose!
10323 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
10324 modules = [
10325 nginxModules.rtmp
10326 nginxModules.dav
10327 nginxModules.moreheaders
10328 ];
10329 # Use latest boringssl to allow http3 support
10330 openssl = quictls;
10331 };
10332
10333 nginxStable = callPackage ../servers/http/nginx/stable.nix {
10334 zlib-ng = zlib-ng.override { withZlibCompat = true; };
10335 withPerl = false;
10336 # We don't use `with` statement here on purpose!
10337 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
10338 modules = [
10339 nginxModules.rtmp
10340 nginxModules.dav
10341 nginxModules.moreheaders
10342 ];
10343 };
10344
10345 nginxMainline = callPackage ../servers/http/nginx/mainline.nix {
10346 zlib-ng = zlib-ng.override { withZlibCompat = true; };
10347 withKTLS = true;
10348 withPerl = false;
10349 # We don't use `with` statement here on purpose!
10350 # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334
10351 modules = [
10352 nginxModules.dav
10353 nginxModules.moreheaders
10354 ];
10355 };
10356
10357 nginxModules = recurseIntoAttrs (callPackage ../servers/http/nginx/modules.nix { });
10358
10359 # We should move to dynamic modules and create a nginxFull package with all modules
10360 nginxShibboleth = nginxStable.override {
10361 modules = [
10362 nginxModules.rtmp
10363 nginxModules.dav
10364 nginxModules.moreheaders
10365 nginxModules.shibboleth
10366 ];
10367 };
10368
10369 libmodsecurity = callPackage ../tools/security/libmodsecurity { };
10370
10371 nsd = callPackage ../servers/dns/nsd (config.nsd or { });
10372
10373 outline = callPackage ../servers/web-apps/outline (
10374 lib.fix (super: {
10375 yarn = yarn.override { inherit (super) nodejs; };
10376 nodejs = nodejs_20;
10377 })
10378 );
10379
10380 openafs = callPackage ../servers/openafs/1.8 { };
10381
10382 openresty = callPackage ../servers/http/openresty {
10383 zlib-ng = zlib;
10384 withPerl = false;
10385 modules = [ ];
10386 };
10387
10388 system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { });
10389
10390 # PulseAudio daemons
10391
10392 hsphfpd = callPackage ../servers/pulseaudio/hsphfpd.nix { };
10393
10394 pulseaudio = callPackage ../servers/pulseaudio { };
10395
10396 qpaeq = libsForQt5.callPackage ../servers/pulseaudio/qpaeq.nix { };
10397
10398 pulseaudioFull = pulseaudio.override {
10399 x11Support = true;
10400 jackaudioSupport = true;
10401 airtunesSupport = true;
10402 bluetoothSupport = true;
10403 advancedBluetoothCodecs = true;
10404 remoteControlSupport = true;
10405 zeroconfSupport = true;
10406 };
10407
10408 libpulseaudio = pulseaudio.override {
10409 libOnly = true;
10410 };
10411
10412 apulse = callPackage ../misc/apulse { };
10413
10414 libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { };
10415
10416 tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { };
10417
10418 libmysqlclient = libmysqlclient_3_3;
10419 libmysqlclient_3_1 = mariadb-connector-c_3_1;
10420 libmysqlclient_3_2 = mariadb-connector-c_3_2;
10421 libmysqlclient_3_3 = mariadb-connector-c_3_3;
10422 mariadb-connector-c = mariadb-connector-c_3_3;
10423 mariadb-connector-c_3_1 = callPackage ../servers/sql/mariadb/connector-c/3_1.nix { };
10424 mariadb-connector-c_3_2 = callPackage ../servers/sql/mariadb/connector-c/3_2.nix { };
10425 mariadb-connector-c_3_3 = callPackage ../servers/sql/mariadb/connector-c/3_3.nix { };
10426
10427 inherit (import ../servers/sql/mariadb pkgs)
10428 mariadb_106
10429 mariadb_1011
10430 mariadb_114
10431 mariadb_118
10432 ;
10433 mariadb = mariadb_1011;
10434 mariadb-embedded = mariadb.override { withEmbedded = true; };
10435
10436 mongodb = hiPrio mongodb-7_0;
10437
10438 mongodb-6_0 = callPackage ../servers/nosql/mongodb/6.0.nix {
10439 sasl = cyrus_sasl;
10440 boost = boost178.override { enableShared = false; };
10441 };
10442
10443 mongodb-7_0 = callPackage ../servers/nosql/mongodb/7.0.nix {
10444 sasl = cyrus_sasl;
10445 boost = boost179.override { enableShared = false; };
10446 };
10447
10448 influxdb = callPackage ../servers/nosql/influxdb { };
10449 influxdb2-server = callPackage ../servers/nosql/influxdb2 { };
10450 influxdb2-cli = callPackage ../servers/nosql/influxdb2/cli.nix { };
10451 influxdb2-token-manipulator = callPackage ../servers/nosql/influxdb2/token-manipulator.nix { };
10452 influxdb2-provision = callPackage ../servers/nosql/influxdb2/provision.nix { };
10453 # For backwards compatibility with older versions of influxdb2,
10454 # which bundled the server and CLI into the same derivation. Will be
10455 # removed in a few releases.
10456 influxdb2 = callPackage ../servers/nosql/influxdb2/combined.nix { };
10457
10458 mysql80 = callPackage ../servers/sql/mysql/8.0.x.nix {
10459 inherit (darwin) developer_cmds DarwinTools;
10460 boost = boost177; # Configure checks for specific version.
10461 icu = icu69;
10462 protobuf = protobuf_21;
10463 };
10464
10465 mssql_jdbc = callPackage ../servers/sql/mssql/jdbc { };
10466 jtds_jdbc = callPackage ../servers/sql/mssql/jdbc/jtds.nix { };
10467
10468 inherit (callPackage ../servers/mir { })
10469 mir
10470 mir_2_15
10471 ;
10472
10473 icinga2 = callPackage ../servers/monitoring/icinga2 { };
10474
10475 icinga2-agent = callPackage ../servers/monitoring/icinga2 {
10476 nameSuffix = "-agent";
10477 withMysql = false;
10478 withNotification = false;
10479 withIcingadb = false;
10480 withPerfdata = false;
10481 };
10482
10483 nagiosPlugins = recurseIntoAttrs (callPackages ../servers/monitoring/nagios-plugins { });
10484
10485 riemann-dash = callPackage ../servers/monitoring/riemann-dash { };
10486
10487 qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { };
10488
10489 rust-hypervisor-firmware = callPackage ../applications/virtualization/rust-hypervisor-firmware { };
10490
10491 OVMF = callPackage ../applications/virtualization/OVMF {
10492 inherit (python3Packages) pexpect;
10493 };
10494 OVMFFull = callPackage ../applications/virtualization/OVMF {
10495 inherit (python3Packages) pexpect;
10496 secureBoot = true;
10497 httpSupport = true;
10498 tpmSupport = true;
10499 tlsSupport = true;
10500 msVarsTemplate = stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isAarch64;
10501 };
10502
10503 tang = callPackage ../servers/tang {
10504 asciidoc = asciidoc-full;
10505 };
10506
10507 inherit (import ../servers/sql/postgresql pkgs)
10508 postgresqlVersions
10509 postgresqlJitVersions
10510 libpq
10511 ;
10512
10513 inherit (postgresqlVersions)
10514 postgresql_13
10515 postgresql_14
10516 postgresql_15
10517 postgresql_16
10518 postgresql_17
10519 postgresql_18
10520 ;
10521
10522 inherit (postgresqlJitVersions)
10523 postgresql_13_jit
10524 postgresql_14_jit
10525 postgresql_15_jit
10526 postgresql_16_jit
10527 postgresql_17_jit
10528 postgresql_18_jit
10529 ;
10530 postgresql = postgresql_17;
10531 postgresql_jit = postgresql_17_jit;
10532 postgresqlPackages = recurseIntoAttrs postgresql.pkgs;
10533 postgresql13Packages = recurseIntoAttrs postgresql_13.pkgs;
10534 postgresql14Packages = recurseIntoAttrs postgresql_14.pkgs;
10535 postgresql15Packages = recurseIntoAttrs postgresql_15.pkgs;
10536 postgresql16Packages = recurseIntoAttrs postgresql_16.pkgs;
10537 postgresql17Packages = recurseIntoAttrs postgresql_17.pkgs;
10538 postgresql18Packages = recurseIntoAttrs postgresql_18.pkgs;
10539
10540 postgres-websockets = haskellPackages.postgres-websockets.bin;
10541 postgrest = haskellPackages.postgrest.bin;
10542
10543 prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { };
10544 prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { };
10545 prometheus-apcupsd-exporter = callPackage ../servers/monitoring/prometheus/apcupsd-exporter.nix { };
10546 prometheus-artifactory-exporter =
10547 callPackage ../servers/monitoring/prometheus/artifactory-exporter.nix
10548 { };
10549 prometheus-atlas-exporter = callPackage ../servers/monitoring/prometheus/atlas-exporter.nix { };
10550 prometheus-aws-s3-exporter = callPackage ../servers/monitoring/prometheus/aws-s3-exporter.nix { };
10551 prometheus-bind-exporter = callPackage ../servers/monitoring/prometheus/bind-exporter.nix { };
10552 prometheus-bird-exporter = callPackage ../servers/monitoring/prometheus/bird-exporter.nix { };
10553 prometheus-bitcoin-exporter = callPackage ../servers/monitoring/prometheus/bitcoin-exporter.nix { };
10554 prometheus-blackbox-exporter =
10555 callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix
10556 { };
10557 prometheus-cloudflare-exporter =
10558 callPackage ../servers/monitoring/prometheus/cloudflare-exporter.nix
10559 { };
10560 prometheus-collectd-exporter =
10561 callPackage ../servers/monitoring/prometheus/collectd-exporter.nix
10562 { };
10563 prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { };
10564 prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { };
10565 prometheus-domain-exporter = callPackage ../servers/monitoring/prometheus/domain-exporter.nix { };
10566 prometheus-fastly-exporter = callPackage ../servers/monitoring/prometheus/fastly-exporter.nix { };
10567 prometheus-flow-exporter = callPackage ../servers/monitoring/prometheus/flow-exporter.nix { };
10568 prometheus-fritzbox-exporter =
10569 callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix
10570 { };
10571 prometheus-gitlab-ci-pipelines-exporter =
10572 callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix
10573 { };
10574 prometheus-graphite-exporter =
10575 callPackage ../servers/monitoring/prometheus/graphite-exporter.nix
10576 { };
10577 prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { };
10578 prometheus-idrac-exporter = callPackage ../servers/monitoring/prometheus/idrac-exporter.nix { };
10579 prometheus-imap-mailstat-exporter =
10580 callPackage ../servers/monitoring/prometheus/imap-mailstat-exporter.nix
10581 { };
10582 prometheus-influxdb-exporter =
10583 callPackage ../servers/monitoring/prometheus/influxdb-exporter.nix
10584 { };
10585 prometheus-ipmi-exporter = callPackage ../servers/monitoring/prometheus/ipmi-exporter.nix { };
10586 prometheus-jitsi-exporter = callPackage ../servers/monitoring/prometheus/jitsi-exporter.nix { };
10587 prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix { };
10588 prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { };
10589 prometheus-junos-czerwonk-exporter =
10590 callPackage ../servers/monitoring/prometheus/junos-czerwonk-exporter.nix
10591 { };
10592 prometheus-kea-exporter = callPackage ../servers/monitoring/prometheus/kea-exporter.nix { };
10593 prometheus-keylight-exporter =
10594 callPackage ../servers/monitoring/prometheus/keylight-exporter.nix
10595 { };
10596 prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { };
10597 prometheus-lnd-exporter = callPackage ../servers/monitoring/prometheus/lnd-exporter.nix { };
10598 prometheus-mail-exporter = callPackage ../servers/monitoring/prometheus/mail-exporter.nix { };
10599 prometheus-mikrotik-exporter =
10600 callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix
10601 { };
10602 prometheus-modemmanager-exporter =
10603 callPackage ../servers/monitoring/prometheus/modemmanager-exporter.nix
10604 { };
10605 prometheus-mongodb-exporter = callPackage ../servers/monitoring/prometheus/mongodb-exporter.nix { };
10606 prometheus-mysqld-exporter = callPackage ../servers/monitoring/prometheus/mysqld-exporter.nix { };
10607 prometheus-nats-exporter = callPackage ../servers/monitoring/prometheus/nats-exporter.nix { };
10608 prometheus-nextcloud-exporter =
10609 callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix
10610 { };
10611 prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { };
10612 prometheus-nginxlog-exporter =
10613 callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix
10614 { };
10615 prometheus-nut-exporter = callPackage ../servers/monitoring/prometheus/nut-exporter.nix { };
10616 prometheus-pgbouncer-exporter =
10617 callPackage ../servers/monitoring/prometheus/pgbouncer-exporter.nix
10618 { };
10619 prometheus-php-fpm-exporter = callPackage ../servers/monitoring/prometheus/php-fpm-exporter.nix { };
10620 prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix { };
10621 prometheus-ping-exporter = callPackage ../servers/monitoring/prometheus/ping-exporter.nix { };
10622 prometheus-postfix-exporter = callPackage ../servers/monitoring/prometheus/postfix-exporter.nix { };
10623 prometheus-postgres-exporter =
10624 callPackage ../servers/monitoring/prometheus/postgres-exporter.nix
10625 { };
10626 prometheus-process-exporter = callPackage ../servers/monitoring/prometheus/process-exporter.nix { };
10627 prometheus-pve-exporter = callPackage ../servers/monitoring/prometheus/pve-exporter.nix { };
10628 prometheus-redis-exporter = callPackage ../servers/monitoring/prometheus/redis-exporter.nix { };
10629 prometheus-rabbitmq-exporter =
10630 callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix
10631 { };
10632 prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { };
10633 prometheus-sabnzbd-exporter = callPackage ../servers/monitoring/prometheus/sabnzbd-exporter.nix { };
10634 prometheus-sachet = callPackage ../servers/monitoring/prometheus/sachet.nix { };
10635 prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { };
10636 prometheus-shelly-exporter = callPackage ../servers/monitoring/prometheus/shelly-exporter.nix { };
10637 prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { };
10638 prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
10639 prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { };
10640 prometheus-sql-exporter = callPackage ../servers/monitoring/prometheus/sql-exporter.nix { };
10641 prometheus-systemd-exporter = callPackage ../servers/monitoring/prometheus/systemd-exporter.nix { };
10642 prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { };
10643 prometheus-v2ray-exporter = callPackage ../servers/monitoring/prometheus/v2ray-exporter.nix { };
10644 prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { };
10645 prometheus-wireguard-exporter =
10646 callPackage ../servers/monitoring/prometheus/wireguard-exporter.nix
10647 {
10648 };
10649 prometheus-zfs-exporter = callPackage ../servers/monitoring/prometheus/zfs-exporter.nix { };
10650 prometheus-xmpp-alerts = callPackage ../servers/monitoring/prometheus/xmpp-alerts.nix { };
10651
10652 public-inbox = perlPackages.callPackage ../servers/mail/public-inbox { };
10653
10654 spf-engine = python3.pkgs.callPackage ../servers/mail/spf-engine { };
10655
10656 pypiserver = with python3Packages; toPythonApplication pypiserver;
10657
10658 qremotecontrol-server = libsForQt5.callPackage ../servers/misc/qremotecontrol-server { };
10659
10660 rabbitmq-server = callPackage ../by-name/ra/rabbitmq-server/package.nix rec {
10661 erlang = erlang_27;
10662 elixir = elixir_1_17.override { inherit erlang; };
10663 };
10664
10665 rake = callPackage ../development/tools/build-managers/rake { };
10666
10667 rethinkdb = callPackage ../servers/nosql/rethinkdb {
10668 stdenv = clangStdenv;
10669 libtool = cctools;
10670 protobuf = protobuf_21;
10671 };
10672
10673 samba4 = callPackage ../servers/samba/4.x.nix { };
10674
10675 samba = samba4;
10676
10677 samba4Full = lowPrio (
10678 samba4.override {
10679 enableLDAP = true;
10680 enablePrinting = true;
10681 enableMDNS = true;
10682 enableDomainController = true;
10683 enableRegedit = true;
10684 enableCephFS = !stdenv.hostPlatform.isAarch64;
10685 }
10686 );
10687
10688 sambaFull = samba4Full;
10689
10690 scalene = with python3Packages; toPythonApplication scalene;
10691
10692 shairplay = callPackage ../servers/shairplay { avahi = avahi-compat; };
10693
10694 shairport-sync-airplay2 = shairport-sync.override {
10695 enableAirplay2 = true;
10696 };
10697
10698 stalwart-mail-webadmin = stalwart-mail.webadmin;
10699 stalwart-mail-spam-filter = stalwart-mail.spam-filter;
10700
10701 stalwart-mail-enterprise = stalwart-mail.override {
10702 stalwartEnterprise = true;
10703 };
10704
10705 ruby-zoom = callPackage ../tools/text/ruby-zoom { };
10706
10707 inherit (callPackages ../servers/monitoring/sensu-go { })
10708 sensu-go-agent
10709 sensu-go-backend
10710 sensu-go-cli
10711 ;
10712
10713 shishi = callPackage ../servers/shishi {
10714 pam = if stdenv.hostPlatform.isLinux then pam else null;
10715 # see also openssl, which has/had this same trick
10716 };
10717
10718 sickgear = callPackage ../servers/sickbeard/sickgear.nix { };
10719
10720 spacecookie = haskell.lib.compose.justStaticExecutables haskellPackages.spacecookie;
10721
10722 inherit (callPackages ../servers/http/tomcat { })
10723 tomcat9
10724 tomcat10
10725 tomcat11
10726 ;
10727
10728 tomcat = tomcat11;
10729
10730 torque = callPackage ../servers/computing/torque { };
10731
10732 virtualenv = with python3Packages; toPythonApplication virtualenv;
10733
10734 virtualenv-clone = with python3Packages; toPythonApplication virtualenv-clone;
10735
10736 quartz-wm = callPackage ../servers/x11/quartz-wm {
10737 stdenv = clangStdenv;
10738 };
10739
10740 xorg =
10741 let
10742 # Use `lib.callPackageWith __splicedPackages` rather than plain `callPackage`
10743 # so as not to have the newly bound xorg items already in scope, which would
10744 # have created a cycle.
10745 overrides = lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix {
10746 inherit (buildPackages.darwin) bootstrap_cmds;
10747 udev = if stdenv.hostPlatform.isLinux then udev else null;
10748 libdrm = if stdenv.hostPlatform.isLinux then libdrm else null;
10749 };
10750
10751 generatedPackages = lib.callPackageWith __splicedPackages ../servers/x11/xorg/default.nix { };
10752
10753 xorgPackages = makeScopeWithSplicing' {
10754 otherSplices = generateSplicesForMkScope "xorg";
10755 f = lib.extends overrides generatedPackages;
10756 };
10757
10758 in
10759 recurseIntoAttrs xorgPackages;
10760
10761 xwayland = callPackage ../servers/x11/xorg/xwayland.nix { };
10762
10763 zabbixFor = version: rec {
10764 agent = (callPackages ../servers/monitoring/zabbix/agent.nix { }).${version};
10765 proxy-mysql =
10766 (callPackages ../servers/monitoring/zabbix/proxy.nix { mysqlSupport = true; }).${version};
10767 proxy-pgsql =
10768 (callPackages ../servers/monitoring/zabbix/proxy.nix { postgresqlSupport = true; }).${version};
10769 proxy-sqlite =
10770 (callPackages ../servers/monitoring/zabbix/proxy.nix { sqliteSupport = true; }).${version};
10771 server-mysql =
10772 (callPackages ../servers/monitoring/zabbix/server.nix { mysqlSupport = true; }).${version};
10773 server-pgsql =
10774 (callPackages ../servers/monitoring/zabbix/server.nix { postgresqlSupport = true; }).${version};
10775 web = (callPackages ../servers/monitoring/zabbix/web.nix { }).${version};
10776 agent2 = (callPackages ../servers/monitoring/zabbix/agent2.nix { }).${version};
10777
10778 # backwards compatibility
10779 server = server-pgsql;
10780 };
10781
10782 zabbix74 = recurseIntoAttrs (zabbixFor "v74");
10783 zabbix72 = recurseIntoAttrs (zabbixFor "v72");
10784 zabbix70 = recurseIntoAttrs (zabbixFor "v70");
10785 zabbix60 = recurseIntoAttrs (zabbixFor "v60");
10786
10787 zabbix = zabbix60;
10788
10789 ### SERVERS / GEOSPATIAL
10790
10791 ### OS-SPECIFIC
10792
10793 alfred = callPackage ../os-specific/linux/batman-adv/alfred.nix { };
10794
10795 alsa-utils = callPackage ../by-name/al/alsa-utils/package.nix {
10796 fftw = fftwFloat;
10797 };
10798
10799 arm-trusted-firmware = callPackage ../misc/arm-trusted-firmware { };
10800 inherit (arm-trusted-firmware)
10801 buildArmTrustedFirmware
10802 armTrustedFirmwareTools
10803 armTrustedFirmwareAllwinner
10804 armTrustedFirmwareAllwinnerH616
10805 armTrustedFirmwareAllwinnerH6
10806 armTrustedFirmwareQemu
10807 armTrustedFirmwareRK3328
10808 armTrustedFirmwareRK3399
10809 armTrustedFirmwareRK3568
10810 armTrustedFirmwareRK3588
10811 armTrustedFirmwareS905
10812 ;
10813
10814 inherit (libapparmor.passthru) apparmorRulesFromClosure;
10815
10816 ath9k-htc-blobless-firmware = callPackage ../os-specific/linux/firmware/ath9k { };
10817 ath9k-htc-blobless-firmware-unstable = callPackage ../os-specific/linux/firmware/ath9k {
10818 enableUnstable = true;
10819 };
10820
10821 b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { };
10822
10823 b43Firmware_6_30_163_46 =
10824 callPackage ../os-specific/linux/firmware/b43-firmware/6.30.163.46.nix
10825 { };
10826
10827 batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { };
10828
10829 bluez5 = bluez;
10830 bluez5-experimental = bluez-experimental;
10831
10832 bluez-experimental = bluez.override {
10833 enableExperimental = true;
10834 };
10835
10836 busybox = callPackage ../os-specific/linux/busybox {
10837 # Fixes libunwind from being dynamically linked to a static binary.
10838 stdenv =
10839 if (stdenv.targetPlatform.useLLVM or false) then
10840 overrideCC stdenv buildPackages.llvmPackages.clangNoLibcxx
10841 else
10842 stdenv;
10843 };
10844 busybox-sandbox-shell = callPackage ../os-specific/linux/busybox/sandbox-shell.nix { };
10845
10846 cm-rgb = python3Packages.callPackage ../tools/system/cm-rgb { };
10847
10848 conky = callPackage ../os-specific/linux/conky (
10849 {
10850 lua = lua5_4;
10851 inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl;
10852 }
10853 // config.conky or { }
10854 );
10855
10856 cpupower-gui = python3Packages.callPackage ../os-specific/linux/cpupower-gui {
10857 inherit (pkgs) meson;
10858 };
10859
10860 # Darwin package set
10861 #
10862 # Even though this is a set of packages not single package, use `callPackage`
10863 # not `callPackages` so the per-package callPackages don't have their
10864 # `.override` clobbered. C.F. `llvmPackages` which does the same.
10865 darwin = recurseIntoAttrs (callPackage ./darwin-packages.nix { });
10866
10867 displaylink = callPackage ../os-specific/linux/displaylink {
10868 inherit (linuxPackages) evdi;
10869 };
10870
10871 dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; };
10872
10873 drbd = callPackage ../os-specific/linux/drbd/utils.nix { };
10874
10875 # unstable until the first 1.x release
10876 fwts = callPackage ../os-specific/linux/fwts { };
10877
10878 libuuid = if stdenv.hostPlatform.isLinux then util-linuxMinimal else null;
10879
10880 elegant-sddm = libsForQt5.callPackage ../data/themes/elegant-sddm { };
10881
10882 error-inject = callPackages ../os-specific/linux/error-inject { };
10883
10884 ffado = callPackage ../os-specific/linux/ffado { };
10885 ffado-mixer = callPackage ../os-specific/linux/ffado { withMixer = true; };
10886 libffado = ffado;
10887
10888 freefall = callPackage ../os-specific/linux/freefall {
10889 inherit (linuxPackages) kernel;
10890 };
10891
10892 fusePackages = dontRecurseIntoAttrs (
10893 callPackage ../os-specific/linux/fuse {
10894 util-linux = util-linuxMinimal;
10895 }
10896 );
10897 fuse = fuse2;
10898 fuse2 = lowPrio (if stdenv.hostPlatform.isDarwin then macfuse-stubs else fusePackages.fuse_2);
10899 fuse3 = fusePackages.fuse_3;
10900
10901 gpm = callPackage ../servers/gpm {
10902 withNcurses = false; # Keep curses disabled for lack of value
10903 };
10904
10905 gpm-ncurses = gpm.override { withNcurses = true; };
10906
10907 btop-cuda = btop.override { cudaSupport = true; };
10908 btop-rocm = btop.override { rocmSupport = true; };
10909
10910 i7z = qt5.callPackage ../os-specific/linux/i7z { };
10911
10912 ipu6-camera-hal = callPackage ../development/libraries/ipu6-camera-hal { };
10913
10914 ipu6ep-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
10915 ipuVersion = "ipu6ep";
10916 };
10917
10918 ipu6epmtl-camera-hal = callPackage ../development/libraries/ipu6-camera-hal {
10919 ipuVersion = "ipu6epmtl";
10920 };
10921
10922 iputils = hiPrio (callPackage ../os-specific/linux/iputils { });
10923 # hiPrio for collisions with inetutils (ping)
10924
10925 iptables = callPackage ../os-specific/linux/iptables { };
10926 iptables-legacy = callPackage ../os-specific/linux/iptables { nftablesCompat = false; };
10927 iptables-nftables-compat = iptables;
10928
10929 jool-cli = callPackage ../os-specific/linux/jool/cli.nix { };
10930
10931 libkrun-sev = libkrun.override { sevVariant = true; };
10932
10933 linthesia = callPackage ../games/linthesia/default.nix { };
10934
10935 projecteur = libsForQt5.callPackage ../os-specific/linux/projecteur { };
10936
10937 lklWithFirewall = lkl.override { firewallSupport = true; };
10938
10939 inherit (callPackages ../os-specific/linux/kernel-headers { inherit (pkgsBuildBuild) elf-header; })
10940 linuxHeaders
10941 makeLinuxHeaders
10942 ;
10943
10944 klibc = callPackage ../os-specific/linux/klibc { };
10945
10946 klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { });
10947
10948 linuxKernel = recurseIntoAttrs (callPackage ./linux-kernels.nix { });
10949
10950 inherit (linuxKernel) buildLinux linuxConfig kernelPatches;
10951
10952 linuxPackagesFor = linuxKernel.packagesFor;
10953
10954 hardenedLinuxPackagesFor = linuxKernel.hardenedPackagesFor;
10955
10956 linuxManualConfig = linuxKernel.manualConfig;
10957
10958 linuxPackages_custom = linuxKernel.customPackage;
10959
10960 # This serves as a test for linuxPackages_custom
10961 linuxPackages_custom_tinyconfig_kernel =
10962 let
10963 base = linuxPackages.kernel;
10964 tinyLinuxPackages = linuxKernel.customPackage {
10965 inherit (base) version modDirVersion src;
10966 allowImportFromDerivation = false;
10967 configfile = linuxConfig {
10968 makeTarget = "tinyconfig";
10969 src = base.src;
10970 };
10971 };
10972 in
10973 tinyLinuxPackages.kernel;
10974
10975 # The current default kernel / kernel modules.
10976 linuxPackages = linuxKernel.packageAliases.linux_default;
10977 linux = linuxPackages.kernel;
10978
10979 linuxPackages_latest = linuxKernel.packageAliases.linux_latest;
10980 linux_latest = linuxPackages_latest.kernel;
10981
10982 # Testing (rc) kernel
10983 linuxPackages_testing = linuxKernel.packages.linux_testing;
10984 linux_testing = linuxKernel.kernels.linux_testing;
10985
10986 # Realtime kernel
10987 linuxPackages-rt = linuxKernel.packageAliases.linux_rt_default;
10988 linuxPackages-rt_latest = linuxKernel.packageAliases.linux_rt_latest;
10989 linux-rt = linuxPackages-rt.kernel;
10990 linux-rt_latest = linuxPackages-rt_latest.kernel;
10991
10992 # hardened kernels
10993 linuxPackages_hardened = linuxKernel.packages.linux_hardened;
10994 linux_hardened = linuxPackages_hardened.kernel;
10995 linuxPackages_5_4_hardened = linuxKernel.packages.linux_5_4_hardened;
10996 linux_5_4_hardened = linuxKernel.kernels.linux_5_4_hardened;
10997 linuxPackages_5_10_hardened = linuxKernel.packages.linux_5_10_hardened;
10998 linux_5_10_hardened = linuxKernel.kernels.linux_5_10_hardened;
10999 linuxPackages_5_15_hardened = linuxKernel.packages.linux_5_15_hardened;
11000 linux_5_15_hardened = linuxKernel.kernels.linux_5_15_hardened;
11001 linuxPackages_6_1_hardened = linuxKernel.packages.linux_6_1_hardened;
11002 linux_6_1_hardened = linuxKernel.kernels.linux_6_1_hardened;
11003 linuxPackages_6_6_hardened = linuxKernel.packages.linux_6_6_hardened;
11004 linux_6_6_hardened = linuxKernel.kernels.linux_6_6_hardened;
11005 linuxPackages_6_12_hardened = linuxKernel.packages.linux_6_12_hardened;
11006 linux_6_12_hardened = linuxKernel.kernels.linux_6_12_hardened;
11007
11008 # GNU Linux-libre kernels
11009 linuxPackages-libre = linuxKernel.packages.linux_libre;
11010 linux-libre = linuxPackages-libre.kernel;
11011 linuxPackages_latest-libre = linuxKernel.packages.linux_latest_libre;
11012 linux_latest-libre = linuxPackages_latest-libre.kernel;
11013
11014 # zen-kernel
11015 linuxPackages_zen = linuxKernel.packages.linux_zen;
11016 linux_zen = linuxPackages_zen.kernel;
11017 linuxPackages_lqx = linuxKernel.packages.linux_lqx;
11018 linux_lqx = linuxPackages_lqx.kernel;
11019
11020 # XanMod kernel
11021 linuxPackages_xanmod = linuxKernel.packages.linux_xanmod;
11022 linux_xanmod = linuxKernel.kernels.linux_xanmod;
11023 linuxPackages_xanmod_stable = linuxKernel.packages.linux_xanmod_stable;
11024 linux_xanmod_stable = linuxKernel.kernels.linux_xanmod_stable;
11025 linuxPackages_xanmod_latest = linuxKernel.packages.linux_xanmod_latest;
11026 linux_xanmod_latest = linuxKernel.kernels.linux_xanmod_latest;
11027
11028 linux-doc = callPackage ../os-specific/linux/kernel/htmldocs.nix { };
11029
11030 cryptodev = linuxPackages.cryptodev;
11031
11032 librealsense = callPackage ../development/libraries/librealsense { };
11033
11034 librealsenseWithCuda = callPackage ../development/libraries/librealsense {
11035 cudaSupport = true;
11036 # librealsenseWithCuda doesn't build on gcc11. CUDA 11.3 is the last version
11037 # to use pre-gcc11, in particular gcc9.
11038 stdenv = gcc9Stdenv;
11039 };
11040
11041 librealsenseWithoutCuda = callPackage ../development/libraries/librealsense {
11042 cudaSupport = false;
11043 };
11044
11045 librealsense-gui = callPackage ../development/libraries/librealsense {
11046 enableGUI = true;
11047 };
11048
11049 kmod = callPackage ../os-specific/linux/kmod { };
11050
11051 lvm2 = callPackage ../os-specific/linux/lvm2/2_03.nix {
11052 # break the cyclic dependency:
11053 # util-linux (non-minimal) depends (optionally, but on by default) on systemd,
11054 # systemd (optionally, but on by default) on cryptsetup and cryptsetup depends on lvm2
11055 util-linux = util-linuxMinimal;
11056 };
11057
11058 lvm2_dmeventd = lvm2.override {
11059 enableDmeventd = true;
11060 enableCmdlib = true;
11061 };
11062 lvm2_vdo = lvm2_dmeventd.override {
11063 enableVDO = true;
11064 };
11065
11066 mdadm = mdadm4;
11067 minimal-bootstrap = recurseIntoAttrs (
11068 import ../os-specific/linux/minimal-bootstrap {
11069 inherit (stdenv) buildPlatform hostPlatform;
11070 inherit lib config;
11071 fetchurl = import ../build-support/fetchurl/boot.nix {
11072 inherit (stdenv.buildPlatform) system;
11073 inherit (config) rewriteURL;
11074 };
11075 checkMeta = callPackage ../stdenv/generic/check-meta.nix { inherit (stdenv) hostPlatform; };
11076 }
11077 );
11078 minimal-bootstrap-sources =
11079 callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix
11080 {
11081 inherit (stdenv) hostPlatform;
11082 };
11083 make-minimal-bootstrap-sources =
11084 callPackage ../os-specific/linux/minimal-bootstrap/stage0-posix/make-bootstrap-sources.nix
11085 {
11086 inherit (stdenv) hostPlatform;
11087 };
11088
11089 aggregateModules =
11090 modules:
11091 callPackage ../os-specific/linux/kmod/aggregator.nix {
11092 inherit (buildPackages) kmod;
11093 inherit modules;
11094 };
11095
11096 nushell = callPackage ../shells/nushell { };
11097
11098 nushellPlugins = recurseIntoAttrs (
11099 callPackage ../shells/nushell/plugins {
11100 }
11101 );
11102
11103 net-tools =
11104 if stdenv.hostPlatform.isLinux then
11105 callPackage ../os-specific/linux/net-tools { }
11106 else
11107 unixtools.net-tools;
11108
11109 nftables = callPackage ../os-specific/linux/nftables { };
11110
11111 open-vm-tools-headless = open-vm-tools.override { withX = false; };
11112
11113 odin = callPackage ../by-name/od/odin/package.nix {
11114 llvmPackages = llvmPackages_18;
11115 };
11116
11117 pam =
11118 if stdenv.hostPlatform.isLinux then
11119 linux-pam
11120 else if stdenv.hostPlatform.isFreeBSD then
11121 freebsd.libpam
11122 else
11123 openpam;
11124
11125 # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader )
11126
11127 procps =
11128 if stdenv.hostPlatform.isLinux then
11129 callPackage ../os-specific/linux/procps-ng { }
11130 else
11131 unixtools.procps;
11132
11133 qemu_kvm = lowPrio (qemu.override { hostCpuOnly = true; });
11134 qemu_full = lowPrio (
11135 qemu.override {
11136 smbdSupport = lib.meta.availableOn stdenv.hostPlatform samba;
11137 cephSupport = lib.meta.availableOn stdenv.hostPlatform ceph;
11138 glusterfsSupport =
11139 lib.meta.availableOn stdenv.hostPlatform glusterfs
11140 && lib.meta.availableOn stdenv.hostPlatform libuuid;
11141 }
11142 );
11143
11144 qemu_test = lowPrio (
11145 qemu.override {
11146 hostCpuOnly = true;
11147 nixosTestRunner = true;
11148 }
11149 );
11150
11151 raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi { };
11152 raspberrypi-armstubs = callPackage ../os-specific/linux/firmware/raspberrypi/armstubs.nix { };
11153
11154 rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { };
11155
11156 sddm-astronaut = qt6Packages.callPackage ../data/themes/sddm-astronaut { };
11157
11158 sddm-chili-theme = libsForQt5.callPackage ../data/themes/chili-sddm { };
11159
11160 sddm-sugar-dark = libsForQt5.callPackage ../data/themes/sddm-sugar-dark { };
11161
11162 sgx-sdk = callPackage ../os-specific/linux/sgx/sdk { };
11163
11164 sgx-psw = callPackage ../os-specific/linux/sgx/psw {
11165 protobuf = protobuf_21;
11166 };
11167
11168 sinit = callPackage ../os-specific/linux/sinit {
11169 rcinit = "/etc/rc.d/rc.init";
11170 rcshutdown = "/etc/rc.d/rc.shutdown";
11171 };
11172
11173 sysdig = callPackage ../os-specific/linux/sysdig {
11174 kernel = null;
11175 }; # sysdig is a client, for a driver look at linuxPackagesFor
11176
11177 sysprof = callPackage ../development/tools/profiling/sysprof { };
11178
11179 libsysprof-capture = callPackage ../development/tools/profiling/sysprof/capture.nix { };
11180
11181 systemd = callPackage ../os-specific/linux/systemd {
11182 # break some cyclic dependencies
11183 util-linux = util-linuxMinimal;
11184 # provide a super minimal gnupg used for systemd-machined
11185 gnupg = gnupg.override {
11186 enableMinimal = true;
11187 guiSupport = false;
11188 };
11189 };
11190 systemdMinimal = systemd.override {
11191 pname = "systemd-minimal";
11192 withAcl = false;
11193 withAnalyze = false;
11194 withApparmor = false;
11195 withAudit = false;
11196 withCompression = false;
11197 withCoredump = false;
11198 withCryptsetup = false;
11199 withRepart = false;
11200 withDocumentation = false;
11201 withEfi = false;
11202 withFido2 = false;
11203 withGcrypt = false;
11204 withHostnamed = false;
11205 withHomed = false;
11206 withHwdb = false;
11207 withImportd = false;
11208 withIptables = false;
11209 withLibBPF = false;
11210 withLibidn2 = false;
11211 withLocaled = false;
11212 withLogind = false;
11213 withMachined = false;
11214 withNetworkd = false;
11215 withNss = false;
11216 withOomd = false;
11217 withOpenSSL = false;
11218 withPCRE2 = false;
11219 withPam = false;
11220 withPolkit = false;
11221 withPortabled = false;
11222 withRemote = false;
11223 withResolved = false;
11224 withShellCompletions = false;
11225 withSysupdate = false;
11226 withSysusers = false;
11227 withTimedated = false;
11228 withTimesyncd = false;
11229 withTpm2Tss = false;
11230 withUserDb = false;
11231 withUkify = false;
11232 withBootloader = false;
11233 withPasswordQuality = false;
11234 withVmspawn = false;
11235 withQrencode = false;
11236 withLibarchive = false;
11237 };
11238 systemdLibs = systemdMinimal.override {
11239 pname = "systemd-minimal-libs";
11240 buildLibsOnly = true;
11241 };
11242 # We do not want to include ukify in the normal systemd attribute as it
11243 # relies on Python at runtime.
11244 systemdUkify = systemd.override {
11245 withUkify = true;
11246 };
11247
11248 udev = if lib.meta.availableOn stdenv.hostPlatform systemdLibs then systemdLibs else libudev-zero;
11249
11250 sysvtools = sysvinit.override {
11251 withoutInitTools = true;
11252 };
11253
11254 # Upstream U-Boots:
11255 inherit (callPackage ../misc/uboot { })
11256 buildUBoot
11257 ubootTools
11258 ubootA20OlinuxinoLime
11259 ubootA20OlinuxinoLime2EMMC
11260 ubootBananaPi
11261 ubootBananaPim3
11262 ubootBananaPim64
11263 ubootAmx335xEVM
11264 ubootClearfog
11265 ubootCM3588NAS
11266 ubootCubieboard2
11267 ubootGuruplug
11268 ubootJetsonTK1
11269 ubootLibreTechCC
11270 ubootNanoPCT4
11271 ubootNanoPCT6
11272 ubootNovena
11273 ubootOdroidC2
11274 ubootOdroidXU3
11275 ubootOlimexA64Olinuxino
11276 ubootOlimexA64Teres1
11277 ubootOrangePi3
11278 ubootOrangePi3B
11279 ubootOrangePi5
11280 ubootOrangePi5Max
11281 ubootOrangePi5Plus
11282 ubootOrangePiPc
11283 ubootOrangePiZeroPlus2H5
11284 ubootOrangePiZero
11285 ubootOrangePiZero2
11286 ubootOrangePiZero3
11287 ubootPcduino3Nano
11288 ubootPine64
11289 ubootPine64LTS
11290 ubootPinebook
11291 ubootPinebookPro
11292 ubootQemuAarch64
11293 ubootQemuArm
11294 ubootQemuRiscv64Smode
11295 ubootQemuX86
11296 ubootQemuX86_64
11297 ubootQuartz64B
11298 ubootRadxaZero3W
11299 ubootRaspberryPi
11300 ubootRaspberryPi2
11301 ubootRaspberryPi3_32bit
11302 ubootRaspberryPi3_64bit
11303 ubootRaspberryPi4_32bit
11304 ubootRaspberryPi4_64bit
11305 ubootRaspberryPiZero
11306 ubootRock4CPlus
11307 ubootRock5ModelB
11308 ubootRock64
11309 ubootRock64v2
11310 ubootRockPiE
11311 ubootRockPi4
11312 ubootRockPro64
11313 ubootROCPCRK3399
11314 ubootSheevaplug
11315 ubootSopine
11316 ubootTuringRK1
11317 ubootUtilite
11318 ubootVisionFive2
11319 ubootWandboard
11320 ;
11321
11322 eudev = callPackage ../by-name/eu/eudev/package.nix {
11323 util-linux = util-linuxMinimal;
11324 };
11325
11326 udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { };
11327 udisks = udisks2;
11328
11329 usbrelay = callPackage ../os-specific/linux/usbrelay { };
11330 usbrelayd = callPackage ../os-specific/linux/usbrelay/daemon.nix { };
11331
11332 util-linuxMinimal = util-linux.override {
11333 fetchurl = stdenv.fetchurlBoot;
11334 cryptsetupSupport = false;
11335 nlsSupport = false;
11336 ncursesSupport = false;
11337 pamSupport = false;
11338 shadowSupport = false;
11339 systemdSupport = false;
11340 translateManpages = false;
11341 };
11342
11343 v4l-utils = qt6.callPackage ../os-specific/linux/v4l-utils { };
11344
11345 windows = callPackages ../os-specific/windows { };
11346
11347 wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { };
11348
11349 wpa_supplicant_gui = libsForQt5.callPackage ../os-specific/linux/wpa_supplicant/gui.nix { };
11350
11351 inherit
11352 ({
11353 zfs_2_2 = callPackage ../os-specific/linux/zfs/2_2.nix {
11354 configFile = "user";
11355 };
11356 zfs_2_3 = callPackage ../os-specific/linux/zfs/2_3.nix {
11357 configFile = "user";
11358 };
11359 zfs_unstable = callPackage ../os-specific/linux/zfs/unstable.nix {
11360 configFile = "user";
11361 };
11362 })
11363 zfs_2_2
11364 zfs_2_3
11365 zfs_unstable
11366 ;
11367 zfs = zfs_2_3;
11368
11369 ### DATA
11370
11371 adwaita-qt = libsForQt5.callPackage ../data/themes/adwaita-qt { };
11372
11373 adwaita-qt6 = qt6Packages.callPackage ../data/themes/adwaita-qt {
11374 useQt6 = true;
11375 };
11376
11377 androguard = with python3.pkgs; toPythonApplication androguard;
11378
11379 andromeda-gtk-theme = libsForQt5.callPackage ../data/themes/andromeda-gtk-theme { };
11380
11381 ant-theme = callPackage ../data/themes/ant-theme/ant.nix { };
11382
11383 ant-bloody-theme = callPackage ../data/themes/ant-theme/ant-bloody.nix { };
11384
11385 ant-nebula-theme = callPackage ../data/themes/ant-theme/ant-nebula.nix { };
11386
11387 bibata-cursors-translucent = callPackage ../data/icons/bibata-cursors/translucent.nix { };
11388
11389 breath-theme = libsForQt5.callPackage ../data/themes/breath-theme { };
11390
11391 colloid-kde = libsForQt5.callPackage ../data/themes/colloid-kde { };
11392
11393 dejavu_fonts = lowPrio (callPackage ../data/fonts/dejavu-fonts { });
11394
11395 # solve collision for nix-env before https://github.com/NixOS/nix/pull/815
11396 dejavu_fontsEnv = buildEnv {
11397 name = dejavu_fonts.name;
11398 paths = [ dejavu_fonts.out ];
11399 };
11400
11401 docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { };
11402
11403 docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { };
11404
11405 docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { };
11406
11407 docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { };
11408
11409 docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { };
11410
11411 docbook_xml_dtd_44 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix { };
11412
11413 docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { };
11414
11415 inherit (callPackages ../data/sgml+xml/stylesheets/xslt/docbook-xsl { })
11416 docbook-xsl-nons
11417 docbook-xsl-ns
11418 ;
11419
11420 # TODO: move this to aliases
11421 docbook_xsl = docbook-xsl-nons;
11422 docbook_xsl_ns = docbook-xsl-ns;
11423
11424 documentation-highlighter = callPackage ../misc/documentation-highlighter { };
11425
11426 moeli = eduli;
11427
11428 emojione = callPackage ../data/fonts/emojione {
11429 inherit (nodePackages) svgo;
11430 };
11431
11432 flat-remix-icon-theme = callPackage ../data/icons/flat-remix-icon-theme {
11433 inherit (plasma5Packages) breeze-icons;
11434 };
11435 font-awesome_4 = (callPackage ../data/fonts/font-awesome { }).v4;
11436 font-awesome_5 = (callPackage ../data/fonts/font-awesome { }).v5;
11437 font-awesome_6 = (callPackage ../data/fonts/font-awesome { }).v6;
11438 font-awesome = font-awesome_6;
11439
11440 graphite-kde-theme = libsForQt5.callPackage ../data/themes/graphite-kde-theme { };
11441
11442 palenight-theme = callPackage ../data/themes/gtk-theme-framework { theme = "palenight"; };
11443
11444 amarena-theme = callPackage ../data/themes/gtk-theme-framework { theme = "amarena"; };
11445
11446 gruvterial-theme = callPackage ../data/themes/gtk-theme-framework { theme = "gruvterial"; };
11447
11448 oceanic-theme = callPackage ../data/themes/gtk-theme-framework { theme = "oceanic"; };
11449
11450 spacx-gtk-theme = callPackage ../data/themes/gtk-theme-framework { theme = "spacx"; };
11451
11452 inherit
11453 ({
11454 gruppled-black-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_black"; };
11455 gruppled-black-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
11456 theme = "gruppled_black_lite";
11457 };
11458 gruppled-white-cursors = callPackage ../data/icons/gruppled-cursors { theme = "gruppled_white"; };
11459 gruppled-white-lite-cursors = callPackage ../data/icons/gruppled-lite-cursors {
11460 theme = "gruppled_white_lite";
11461 };
11462 })
11463 gruppled-black-cursors
11464 gruppled-black-lite-cursors
11465 gruppled-white-cursors
11466 gruppled-white-lite-cursors
11467 ;
11468
11469 gruvbox-dark-icons-gtk = callPackage ../data/icons/gruvbox-dark-icons-gtk {
11470 inherit (plasma5Packages) breeze-icons;
11471 };
11472
11473 iosevka-comfy = recurseIntoAttrs (callPackages ../data/fonts/iosevka/comfy.nix { });
11474
11475 /**
11476 A JSON Schema Catalog is a mapping from URIs to JSON Schema documents.
11477
11478 It enables offline use, e.g. in build processes, and it improves performance, robustness and safety.
11479 */
11480 inherit (callPackage ../data/json-schema/default.nix { }) jsonSchemaCatalogs;
11481
11482 kde-rounded-corners =
11483 kdePackages.callPackage ../data/themes/kwin-decorations/kde-rounded-corners
11484 { };
11485
11486 kora-icon-theme = callPackage ../data/icons/kora-icon-theme {
11487 inherit (libsForQt5.kdeFrameworks) breeze-icons;
11488 };
11489
11490 la-capitaine-icon-theme = callPackage ../data/icons/la-capitaine-icon-theme {
11491 inherit (plasma5Packages) breeze-icons;
11492 inherit (pantheon) elementary-icon-theme;
11493 };
11494
11495 layan-kde = libsForQt5.callPackage ../data/themes/layan-kde { };
11496
11497 inherit (callPackages ../data/fonts/liberation-fonts { })
11498 liberation_ttf_v1
11499 liberation_ttf_v2
11500 ;
11501 liberation_ttf = liberation_ttf_v2;
11502
11503 lightly-qt = libsForQt5.callPackage ../data/themes/lightly-qt { };
11504
11505 lightly-boehs = libsForQt5.callPackage ../data/themes/lightly-boehs { };
11506
11507 # ltunifi and solaar both provide udev rules but solaar's rules are more
11508 # up-to-date so we simply use that instead of having to maintain our own rules
11509 logitech-udev-rules = solaar.udev;
11510
11511 # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
11512 # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia
11513 # lohit-fonts.tamil-classical lohit-fonts.tamil lohit-fonts.telugu
11514 # lohit-fonts.kashmiri lohit-fonts.konkani lohit-fonts.maithili lohit-fonts.sindhi
11515 lohit-fonts = recurseIntoAttrs (callPackages ../data/fonts/lohit-fonts { });
11516
11517 maia-icon-theme = libsForQt5.callPackage ../data/icons/maia-icon-theme { };
11518
11519 marwaita-icons = callPackage ../by-name/ma/marwaita-icons/package.nix {
11520 inherit (kdePackages) breeze-icons;
11521 };
11522
11523 material-kwin-decoration = libsForQt5.callPackage ../data/themes/material-kwin-decoration { };
11524
11525 mplus-outline-fonts = recurseIntoAttrs (callPackage ../data/fonts/mplus-outline-fonts { });
11526
11527 noto-fonts-cjk-serif-static = callPackage ../by-name/no/noto-fonts-cjk-serif/package.nix {
11528 static = true;
11529 };
11530
11531 noto-fonts-cjk-sans-static = callPackage ../by-name/no/noto-fonts-cjk-sans/package.nix {
11532 static = true;
11533 };
11534
11535 noto-fonts-lgc-plus = callPackage ../by-name/no/noto-fonts/package.nix {
11536 suffix = "-lgc-plus";
11537 variants = [
11538 "Noto Sans"
11539 "Noto Serif"
11540 "Noto Sans Mono"
11541 "Noto Music"
11542 "Noto Sans Symbols"
11543 "Noto Sans Symbols 2"
11544 "Noto Sans Math"
11545 ];
11546 longDescription = ''
11547 This package provides the Noto Fonts, but only for latin, greek
11548 and cyrillic scripts, as well as some extra fonts.
11549 '';
11550 };
11551
11552 nullmailer = callPackage ../servers/mail/nullmailer {
11553 stdenv = gccStdenv;
11554 };
11555
11556 numix-icon-theme = callPackage ../data/icons/numix-icon-theme {
11557 inherit (plasma5Packages) breeze-icons;
11558 };
11559
11560 openmoji-color = callPackage ../data/fonts/openmoji { fontFormats = [ "glyf_colr_0" ]; };
11561
11562 openmoji-black = callPackage ../data/fonts/openmoji { fontFormats = [ "glyf" ]; };
11563
11564 papirus-maia-icon-theme = callPackage ../data/icons/papirus-maia-icon-theme {
11565 inherit (plasma5Packages) breeze-icons;
11566 };
11567
11568 papis = with python3Packages; toPythonApplication papis;
11569
11570 plata-theme = callPackage ../data/themes/plata {
11571 inherit (mate) marco;
11572 };
11573
11574 polychromatic = qt6Packages.callPackage ../applications/misc/polychromatic { };
11575
11576 qogir-kde = libsForQt5.callPackage ../data/themes/qogir-kde { };
11577
11578 ricochet-refresh = callPackage ../by-name/ri/ricochet-refresh/package.nix {
11579 protobuf = protobuf_21; # https://github.com/blueprint-freespeech/ricochet-refresh/issues/178
11580 };
11581
11582 roapi-http = callPackage ../servers/roapi/http.nix { };
11583
11584 shaderc = callPackage ../development/compilers/shaderc {
11585 inherit (darwin) autoSignDarwinBinariesHook;
11586 };
11587
11588 sierra-breeze-enhanced =
11589 libsForQt5.callPackage ../data/themes/kwin-decorations/sierra-breeze-enhanced
11590 { useQt5 = true; };
11591
11592 scheherazade-new = scheherazade.override {
11593 version = "4.300";
11594 };
11595
11596 inherit (callPackages ../data/fonts/gdouros { })
11597 aegan
11598 aegyptus
11599 akkadian
11600 assyrian
11601 eemusic
11602 maya
11603 symbola
11604 textfonts
11605 unidings
11606 ;
11607
11608 inherit (callPackages ../data/fonts/pretendard { })
11609 pretendard
11610 pretendard-gov
11611 pretendard-jp
11612 pretendard-std
11613 ;
11614
11615 sourceHanPackages = dontRecurseIntoAttrs (callPackage ../data/fonts/source-han { });
11616 source-han-sans = sourceHanPackages.sans;
11617 source-han-serif = sourceHanPackages.serif;
11618 source-han-mono = sourceHanPackages.mono;
11619 source-han-sans-vf-otf = sourceHanPackages.sans-vf-otf;
11620 source-han-sans-vf-ttf = sourceHanPackages.sans-vf-ttf;
11621 source-han-serif-vf-otf = sourceHanPackages.serif-vf-otf;
11622 source-han-serif-vf-ttf = sourceHanPackages.serif-vf-ttf;
11623
11624 tango-icon-theme = callPackage ../data/icons/tango-icon-theme {
11625 gtk = res.gtk2;
11626 };
11627
11628 themes = name: callPackage (../data/misc/themes + ("/" + name + ".nix")) { };
11629
11630 tex-gyre = callPackages ../data/fonts/tex-gyre { };
11631
11632 tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { };
11633
11634 utterly-nord-plasma = kdePackages.callPackage ../data/themes/utterly-nord-plasma {
11635 # renamed in KF6
11636 plasma-framework = kdePackages.libplasma;
11637 };
11638
11639 whitesur-kde = kdePackages.callPackage ../data/themes/whitesur-kde { };
11640
11641 xkeyboard_config = xkeyboard-config;
11642
11643 xlsx2csv = with python3Packages; toPythonApplication xlsx2csv;
11644
11645 zafiro-icons = callPackage ../data/icons/zafiro-icons {
11646 inherit (plasma5Packages) breeze-icons;
11647 };
11648
11649 zeal-qt5 = libsForQt5.callPackage ../data/documentation/zeal { };
11650 zeal = zeal-qt5;
11651 zeal-qt6 = qt6Packages.callPackage ../data/documentation/zeal {
11652 qtx11extras = null; # Because it does not exist in qt6
11653 };
11654
11655 ### APPLICATIONS / GIS
11656
11657 qgis-ltr = callPackage ../applications/gis/qgis/ltr.nix { };
11658
11659 qgis = callPackage ../applications/gis/qgis { };
11660
11661 spatialite-gui = callPackage ../by-name/sp/spatialite-gui/package.nix {
11662 wxGTK = wxGTK32;
11663 };
11664
11665 zombietrackergps = libsForQt5.callPackage ../applications/gis/zombietrackergps { };
11666
11667 ### APPLICATIONS
11668
11669 _2bwm = callPackage ../applications/window-managers/2bwm {
11670 patches = config."2bwm".patches or [ ];
11671 };
11672
11673 acd-cli = callPackage ../applications/networking/sync/acd_cli {
11674 inherit (python3Packages)
11675 buildPythonApplication
11676 appdirs
11677 colorama
11678 python-dateutil
11679 requests
11680 requests-toolbelt
11681 setuptools
11682 sqlalchemy
11683 fusepy
11684 ;
11685 };
11686
11687 inherit (qt6Packages.callPackage ../applications/office/activitywatch { })
11688 aw-qt
11689 aw-notify
11690 aw-server-rust
11691 aw-watcher-afk
11692 aw-watcher-window
11693 ;
11694
11695 activitywatch = callPackage ../applications/office/activitywatch/wrapper.nix { };
11696
11697 anilibria-winmaclinux = libsForQt5.callPackage ../applications/video/anilibria-winmaclinux { };
11698
11699 masterpdfeditor4 = libsForQt5.callPackage ../applications/misc/masterpdfeditor4 { };
11700
11701 inherit
11702 ({
11703 pdfstudio2021 = callPackage ../applications/misc/pdfstudio { year = "2021"; };
11704 pdfstudio2022 = callPackage ../applications/misc/pdfstudio { year = "2022"; };
11705 pdfstudio2023 = callPackage ../applications/misc/pdfstudio { year = "2023"; };
11706 pdfstudio2024 = callPackage ../applications/misc/pdfstudio { year = "2024"; };
11707 pdfstudioviewer = callPackage ../applications/misc/pdfstudio { program = "pdfstudioviewer"; };
11708 })
11709 pdfstudio2021
11710 pdfstudio2022
11711 pdfstudio2023
11712 pdfstudio2024
11713 pdfstudioviewer
11714 ;
11715
11716 airwave = libsForQt5.callPackage ../applications/audio/airwave { };
11717
11718 amarok = libsForQt5.callPackage ../applications/audio/amarok { };
11719 amarok-kf5 = amarok; # for compatibility
11720
11721 androidStudioPackages = recurseIntoAttrs (callPackage ../applications/editors/android-studio { });
11722 android-studio = androidStudioPackages.stable;
11723 android-studio-full = android-studio.full;
11724
11725 androidStudioForPlatformPackages = recurseIntoAttrs (
11726 callPackage ../applications/editors/android-studio-for-platform { }
11727 );
11728 android-studio-for-platform = androidStudioForPlatformPackages.stable;
11729
11730 apngasm = callPackage ../applications/graphics/apngasm { };
11731 apngasm_2 = callPackage ../applications/graphics/apngasm/2.nix { };
11732
11733 ardour = callPackage ../applications/audio/ardour { };
11734 ardour_7 = callPackage ../applications/audio/ardour/7.nix { };
11735
11736 arelle = with python3Packages; toPythonApplication arelle;
11737
11738 astroid = callPackage ../applications/networking/mailreaders/astroid {
11739 vim = vim-full.override { features = "normal"; };
11740 protobuf = protobuf_21;
11741 };
11742
11743 audacious = audacious-bare.override { withPlugins = true; };
11744
11745 av-98 = callPackage ../applications/networking/browsers/av-98 { };
11746
11747 bambootracker-qt6 = bambootracker.override { withQt6 = true; };
11748
11749 ausweisapp = qt6Packages.callPackage ../applications/misc/ausweisapp { };
11750
11751 awesome = callPackage ../applications/window-managers/awesome {
11752 cairo = cairo.override { xcbSupport = true; };
11753 inherit (texFunctions) fontsConf;
11754 };
11755
11756 awesomebump = libsForQt5.callPackage ../applications/graphics/awesomebump { };
11757
11758 backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { };
11759
11760 backintime-qt = qt6.callPackage ../applications/networking/sync/backintime/qt.nix { };
11761
11762 backintime = backintime-qt;
11763
11764 barrier = libsForQt5.callPackage ../applications/misc/barrier { };
11765
11766 bespokesynth-with-vst2 = bespokesynth.override {
11767 enableVST2 = true;
11768 };
11769
11770 bfcal = libsForQt5.callPackage ../applications/misc/bfcal { };
11771
11772 bino3d = qt6Packages.callPackage ../applications/video/bino3d { };
11773
11774 bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { };
11775 bitlbee-plugins = callPackage ../applications/networking/instant-messengers/bitlbee/plugins.nix { };
11776
11777 bitscope = recurseIntoAttrs (
11778 callPackage ../applications/science/electronics/bitscope/packages.nix { }
11779 );
11780
11781 bitwig-studio3 = callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { };
11782 bitwig-studio4 = callPackage ../applications/audio/bitwig-studio/bitwig-studio4.nix {
11783 libjpeg = libjpeg8;
11784 };
11785 bitwig-studio5-unwrapped = callPackage ../applications/audio/bitwig-studio/bitwig-studio5.nix {
11786 libjpeg = libjpeg8;
11787 };
11788
11789 bitwig-studio5 = callPackage ../applications/audio/bitwig-studio/bitwig-wrapper.nix {
11790 bitwig-studio-unwrapped = bitwig-studio5-unwrapped;
11791 };
11792
11793 bitwig-studio = bitwig-studio5;
11794
11795 blackbox = callPackage ../applications/version-management/blackbox {
11796 pinentry = pinentry-curses;
11797 };
11798
11799 blender = callPackage ../by-name/bl/blender/package.nix {
11800 python3Packages = python311Packages;
11801 };
11802
11803 blender-hip = blender.override { hipSupport = true; };
11804
11805 blucontrol = callPackage ../applications/misc/blucontrol/wrapper.nix {
11806 inherit (haskellPackages) ghcWithPackages;
11807 };
11808
11809 breezy = with python3Packages; toPythonApplication breezy;
11810
11811 calcmysky = qt6Packages.callPackage ../applications/science/astronomy/calcmysky { };
11812
11813 # calico-felix and calico-node have not been packaged due to libbpf, linking issues
11814 inherit (callPackage ../applications/networking/cluster/calico { })
11815 calico-apiserver
11816 calico-app-policy
11817 calico-cni-plugin
11818 calico-kube-controllers
11819 calico-pod2daemon
11820 calico-typha
11821 calicoctl
11822 confd-calico
11823 ;
11824
11825 carla = libsForQt5.callPackage ../applications/audio/carla { };
11826
11827 cb2bib = libsForQt5.callPackage ../applications/office/cb2bib { };
11828
11829 cbconvert-gui = cbconvert.gui;
11830
11831 cdparanoia = cdparanoiaIII;
11832
11833 cdxj-indexer = with python3Packages; toPythonApplication cdxj-indexer;
11834
11835 chromium = callPackage ../applications/networking/browsers/chromium (config.chromium or { });
11836
11837 chuck = callPackage ../applications/audio/chuck {
11838 inherit (darwin) DarwinTools;
11839 };
11840
11841 clight = callPackage ../applications/misc/clight { };
11842
11843 clight-gui = libsForQt5.callPackage ../applications/misc/clight/clight-gui.nix { };
11844
11845 clightd = callPackage ../applications/misc/clight/clightd.nix { };
11846
11847 clipgrab = libsForQt5.callPackage ../applications/video/clipgrab { };
11848
11849 cmus = callPackage ../applications/audio/cmus {
11850 libjack = libjack2;
11851 };
11852
11853 cni = callPackage ../applications/networking/cluster/cni { };
11854 cni-plugins = callPackage ../applications/networking/cluster/cni/plugins.nix { };
11855
11856 communi = libsForQt5.callPackage ../applications/networking/irc/communi { };
11857
11858 confclerk = libsForQt5.callPackage ../applications/misc/confclerk { };
11859
11860 copyq = qt6Packages.callPackage ../applications/misc/copyq { };
11861
11862 cpeditor = libsForQt5.callPackage ../applications/editors/cpeditor { };
11863
11864 csound = callPackage ../applications/audio/csound { };
11865
11866 csound-qt = libsForQt5.callPackage ../applications/audio/csound/csound-qt { };
11867
11868 codeblocksFull = codeblocks.override { contribPlugins = true; };
11869
11870 cudatext-qt = callPackage ../applications/editors/cudatext { widgetset = "qt5"; };
11871 cudatext-gtk = callPackage ../applications/editors/cudatext { widgetset = "gtk2"; };
11872 cudatext = cudatext-qt;
11873
11874 cqrlog = callPackage ../applications/radio/cqrlog {
11875 hamlib = hamlib_4;
11876 };
11877
11878 cutecom = libsForQt5.callPackage ../tools/misc/cutecom { };
11879
11880 darcs = haskell.lib.compose.disableCabalFlag "library" (
11881 haskell.lib.compose.justStaticExecutables haskellPackages.darcs
11882 );
11883
11884 darktable = callPackage ../by-name/da/darktable/package.nix {
11885 lua = lua5_4;
11886 pugixml = pugixml.override { shared = true; };
11887 };
11888
11889 datadog-agent = callPackage ../tools/networking/dd-agent/datadog-agent.nix {
11890 pythonPackages = datadog-integrations-core { };
11891 };
11892 datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { };
11893 datadog-integrations-core =
11894 extras:
11895 callPackage ../tools/networking/dd-agent/integrations-core.nix {
11896 extraIntegrations = extras;
11897 };
11898
11899 dbeaver-bin = callPackage ../by-name/db/dbeaver-bin/package.nix {
11900 inherit (darwin) autoSignDarwinBinariesHook;
11901 };
11902
11903 deadbeef = callPackage ../applications/audio/deadbeef { };
11904
11905 deadbeefPlugins = {
11906 headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { };
11907 lyricbar = callPackage ../applications/audio/deadbeef/plugins/lyricbar.nix { };
11908 mpris2 = callPackage ../applications/audio/deadbeef/plugins/mpris2.nix { };
11909 musical-spectrum = callPackage ../applications/audio/deadbeef/plugins/musical-spectrum.nix { };
11910 statusnotifier = callPackage ../applications/audio/deadbeef/plugins/statusnotifier.nix { };
11911 playlist-manager = callPackage ../applications/audio/deadbeef/plugins/playlist-manager.nix { };
11912 waveform-seekbar = callPackage ../applications/audio/deadbeef/plugins/waveform-seekbar.nix { };
11913 };
11914
11915 deadbeef-with-plugins = callPackage ../applications/audio/deadbeef/wrapper.nix {
11916 plugins = [ ];
11917 };
11918
11919 inherit (callPackage ../development/tools/devpod { }) devpod devpod-desktop;
11920
11921 dfasma = libsForQt5.callPackage ../applications/audio/dfasma { };
11922
11923 direwolf = callPackage ../applications/radio/direwolf {
11924 hamlib = hamlib_4;
11925 };
11926
11927 djv = callPackage ../by-name/dj/djv/package.nix { openexr = openexr_2; };
11928
11929 djview4 = djview;
11930
11931 dmenu-rs-enable-plugins = dmenu-rs.override { enablePlugins = true; };
11932
11933 dmensamenu = callPackage ../applications/misc/dmensamenu {
11934 inherit (python3Packages) buildPythonApplication requests;
11935 };
11936
11937 inherit (callPackage ../applications/virtualization/docker { })
11938 docker_25
11939 docker_28
11940 ;
11941
11942 docker = docker_28;
11943 docker-client = docker.override { clientOnly = true; };
11944
11945 docker-gc = callPackage ../applications/virtualization/docker/gc.nix { };
11946 docker-machine-hyperkit =
11947 callPackage ../applications/networking/cluster/docker-machine/hyperkit.nix
11948 { };
11949 docker-machine-kvm2 = callPackage ../applications/networking/cluster/docker-machine/kvm2.nix { };
11950
11951 docker-buildx = callPackage ../applications/virtualization/docker/buildx.nix { };
11952 docker-compose = callPackage ../applications/virtualization/docker/compose.nix { };
11953 docker-sbom = callPackage ../applications/virtualization/docker/sbom.nix { };
11954
11955 drawio = callPackage ../applications/graphics/drawio {
11956 inherit (darwin) autoSignDarwinBinariesHook;
11957 };
11958 drawio-headless = callPackage ../applications/graphics/drawio/headless.nix { };
11959
11960 drawpile-server-headless = drawpile.override {
11961 buildClient = false;
11962 buildServerGui = false;
11963 };
11964
11965 drawterm-wayland = callPackage ../by-name/dr/drawterm/package.nix { withWayland = true; };
11966
11967 droopy = python3Packages.callPackage ../applications/networking/droopy { };
11968
11969 dwl = callPackage ../by-name/dw/dwl/package.nix {
11970 wlroots = wlroots_0_18;
11971 };
11972
11973 evilwm = callPackage ../applications/window-managers/evilwm {
11974 patches = config.evilwm.patches or [ ];
11975 };
11976
11977 eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { });
11978
11979 electrum = libsForQt5.callPackage ../applications/misc/electrum { };
11980
11981 electrum-grs = libsForQt5.callPackage ../applications/misc/electrum/grs.nix { };
11982
11983 electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { };
11984
11985 elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { };
11986
11987 elinks = callPackage ../applications/networking/browsers/elinks { };
11988
11989 inherit (recurseIntoAttrs (callPackage ../applications/editors/emacs { }))
11990 emacs30
11991 emacs30-gtk3
11992 emacs30-nox
11993 emacs30-pgtk
11994
11995 emacs29-macport
11996 ;
11997
11998 emacs-macport = emacs29-macport;
11999 emacs = emacs30;
12000 emacs-gtk = emacs30-gtk3;
12001 emacs-nox = emacs30-nox;
12002 emacs-pgtk = emacs30-pgtk;
12003
12004 emacsPackagesFor =
12005 emacs:
12006 import ./emacs-packages.nix {
12007 inherit (lib) makeScope makeOverridable dontRecurseIntoAttrs;
12008 emacs' = emacs;
12009 pkgs' = pkgs; # default pkgs used for bootstrapping the emacs package set
12010 };
12011
12012 espeak-classic = callPackage ../applications/audio/espeak { };
12013
12014 espeak-ng = callPackage ../applications/audio/espeak-ng { };
12015 espeak = res.espeak-ng;
12016
12017 espeakedit = callPackage ../applications/audio/espeak/edit.nix { };
12018
12019 greenfoot = callPackage ../applications/editors/greenfoot {
12020 openjdk = openjdk21.override {
12021 enableJavaFX = true;
12022 openjfx_jdk = openjfx21.override { withWebKit = true; };
12023 };
12024 };
12025
12026 input-leap = qt6Packages.callPackage ../applications/misc/input-leap {
12027 avahi = avahi.override { withLibdnssdCompat = true; };
12028 };
12029
12030 evolution-data-server-gtk4 = evolution-data-server.override {
12031 withGtk3 = false;
12032 withGtk4 = true;
12033 };
12034 evolution = callPackage ../applications/networking/mailreaders/evolution/evolution { };
12035 evolutionWithPlugins =
12036 callPackage ../applications/networking/mailreaders/evolution/evolution/wrapper.nix
12037 {
12038 plugins = [
12039 evolution
12040 evolution-ews
12041 ];
12042 };
12043
12044 fetchmail = callPackage ../applications/misc/fetchmail { };
12045 fetchmail_7 = callPackage ../applications/misc/fetchmail/v7.nix { };
12046
12047 firewalld-gui = firewalld.override { withGui = true; };
12048
12049 flacon = libsForQt5.callPackage ../applications/audio/flacon { };
12050
12051 fldigi = callPackage ../applications/radio/fldigi {
12052 hamlib = hamlib_4;
12053 };
12054
12055 focuswriter = qt6Packages.callPackage ../applications/editors/focuswriter { };
12056
12057 fossil = callPackage ../applications/version-management/fossil {
12058 sqlite = sqlite.override { enableDeserialize = true; };
12059 };
12060
12061 fritzing = qt6Packages.callPackage ../applications/science/electronics/fritzing { };
12062
12063 fvwm = fvwm2;
12064
12065 ganttproject-bin = callPackage ../applications/misc/ganttproject-bin {
12066 jre = openjdk17.override {
12067 enableJavaFX = true;
12068 };
12069 };
12070
12071 gaucheBootstrap = callPackage ../development/interpreters/gauche/boot.nix { };
12072
12073 gauche = callPackage ../development/interpreters/gauche { };
12074
12075 geany = callPackage ../applications/editors/geany { };
12076 geany-with-vte = callPackage ../applications/editors/geany/with-vte.nix { };
12077
12078 gImageReader-qt = qt6Packages.callPackage ../by-name/gi/gImageReader/package.nix {
12079 withQt6 = true;
12080 };
12081
12082 gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix {
12083 unwrapped = callPackage ../applications/radio/gnuradio {
12084 python = python3;
12085 };
12086 };
12087 gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs;
12088
12089 greetd = recurseIntoAttrs (
12090 {
12091 greetd = callPackage ../applications/display-managers/greetd { };
12092 gtkgreet = callPackage ../applications/display-managers/greetd/gtkgreet.nix { };
12093 qtgreet = callPackage ../applications/display-managers/greetd/qtgreet.nix { };
12094 regreet = callPackage ../applications/display-managers/greetd/regreet.nix { };
12095 tuigreet = callPackage ../applications/display-managers/greetd/tuigreet.nix { };
12096 wlgreet = callPackage ../applications/display-managers/greetd/wlgreet.nix { };
12097 }
12098 // lib.optionalAttrs config.allowAliases {
12099 dlm = throw "greetd.dlm has been removed as it is broken and abandoned upstream"; # Added 2024-07-15
12100 }
12101 );
12102
12103 goldendict = libsForQt5.callPackage ../applications/misc/goldendict { };
12104 goldendict-ng = qt6Packages.callPackage ../applications/misc/goldendict-ng { };
12105
12106 inherit (ocamlPackages) google-drive-ocamlfuse;
12107
12108 gqrx-portaudio = gqrx.override {
12109 portaudioSupport = true;
12110 pulseaudioSupport = false;
12111 };
12112 gqrx-gr-audio = gqrx.override {
12113 portaudioSupport = false;
12114 pulseaudioSupport = false;
12115 };
12116
12117 guitarix = callPackage ../applications/audio/guitarix {
12118 fftw = fftwSinglePrec;
12119 };
12120
12121 puddletag = libsForQt5.callPackage ../applications/audio/puddletag { };
12122
12123 welle-io = qt6Packages.callPackage ../applications/radio/welle-io { };
12124
12125 wireshark = qt6Packages.callPackage ../applications/networking/sniffers/wireshark {
12126 libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
12127 };
12128 wireshark-qt = wireshark;
12129
12130 qtwirediff = qt6Packages.callPackage ../applications/networking/sniffers/qtwirediff { };
12131
12132 tshark = wireshark-cli;
12133 wireshark-cli = wireshark.override {
12134 withQt = false;
12135 libpcap = libpcap.override { withBluez = stdenv.hostPlatform.isLinux; };
12136 };
12137
12138 fclones = callPackage ../tools/misc/fclones { };
12139
12140 feh = callPackage ../applications/graphics/feh {
12141 imlib2 = imlib2Full;
12142 };
12143
12144 buildMozillaMach =
12145 opts: callPackage (import ../build-support/build-mozilla-mach/default.nix opts) { };
12146
12147 firefox-unwrapped = import ../applications/networking/browsers/firefox/packages/firefox.nix {
12148 inherit
12149 stdenv
12150 lib
12151 callPackage
12152 fetchurl
12153 nixosTests
12154 buildMozillaMach
12155 ;
12156 };
12157 firefox-beta-unwrapped =
12158 import ../applications/networking/browsers/firefox/packages/firefox-beta.nix
12159 {
12160 inherit
12161 stdenv
12162 lib
12163 callPackage
12164 fetchurl
12165 nixosTests
12166 buildMozillaMach
12167 ;
12168 };
12169 firefox-devedition-unwrapped =
12170 import ../applications/networking/browsers/firefox/packages/firefox-devedition.nix
12171 {
12172 inherit
12173 stdenv
12174 lib
12175 callPackage
12176 fetchurl
12177 nixosTests
12178 buildMozillaMach
12179 ;
12180 };
12181 firefox-esr-128-unwrapped =
12182 import ../applications/networking/browsers/firefox/packages/firefox-esr-128.nix
12183 {
12184 inherit
12185 stdenv
12186 lib
12187 callPackage
12188 fetchurl
12189 nixosTests
12190 buildMozillaMach
12191 ;
12192 };
12193 firefox-esr-140-unwrapped =
12194 import ../applications/networking/browsers/firefox/packages/firefox-esr-140.nix
12195 {
12196 inherit
12197 stdenv
12198 lib
12199 callPackage
12200 fetchurl
12201 nixosTests
12202 buildMozillaMach
12203 ;
12204 };
12205 firefox-esr-unwrapped = firefox-esr-128-unwrapped;
12206
12207 firefox = wrapFirefox firefox-unwrapped { };
12208 firefox-beta = wrapFirefox firefox-beta-unwrapped { };
12209 firefox-devedition = wrapFirefox firefox-devedition-unwrapped { };
12210
12211 firefox-mobile = callPackage ../applications/networking/browsers/firefox/mobile-config.nix { };
12212
12213 firefox-esr-128 = wrapFirefox firefox-esr-128-unwrapped {
12214 nameSuffix = "-esr";
12215 wmClass = "firefox-esr";
12216 icon = "firefox-esr";
12217 };
12218 firefox-esr-140 = wrapFirefox firefox-esr-140-unwrapped {
12219 nameSuffix = "-esr";
12220 wmClass = "firefox-esr";
12221 icon = "firefox-esr";
12222 };
12223 firefox-esr = firefox-esr-128;
12224
12225 firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin {
12226 inherit (firefox-unwrapped.passthru) applicationName;
12227 generated = import ../applications/networking/browsers/firefox-bin/release_sources.nix;
12228 };
12229
12230 firefox-bin = wrapFirefox firefox-bin-unwrapped {
12231 pname = "firefox-bin";
12232 };
12233
12234 librewolf-unwrapped = import ../applications/networking/browsers/librewolf {
12235 inherit
12236 stdenv
12237 lib
12238 callPackage
12239 buildMozillaMach
12240 nixosTests
12241 ;
12242 };
12243
12244 librewolf = wrapFirefox librewolf-unwrapped {
12245 inherit (librewolf-unwrapped) extraPrefsFiles extraPoliciesFiles;
12246 libName = "librewolf";
12247 };
12248
12249 librewolf-bin = wrapFirefox librewolf-bin-unwrapped {
12250 pname = "librewolf-bin";
12251 extraPrefsFiles = [
12252 "${librewolf-bin-unwrapped}/lib/librewolf-bin-${librewolf-bin-unwrapped.version}/librewolf.cfg"
12253 ];
12254 extraPoliciesFiles = [
12255 "${librewolf-bin-unwrapped}/lib/librewolf-bin-${librewolf-bin-unwrapped.version}/distribution/extra-policies.json"
12256 ];
12257 };
12258
12259 floorp-unwrapped = import ../applications/networking/browsers/floorp {
12260 inherit
12261 stdenv
12262 lib
12263 fetchFromGitHub
12264 buildMozillaMach
12265 nixosTests
12266 ;
12267 };
12268
12269 floorp = wrapFirefox floorp-unwrapped { };
12270
12271 formiko =
12272 with python3Packages;
12273 callPackage ../applications/editors/formiko {
12274 inherit buildPythonApplication;
12275 };
12276
12277 freedv = callPackage ../by-name/fr/freedv/package.nix {
12278 codec2 = codec2.override {
12279 freedvSupport = true;
12280 };
12281 };
12282
12283 freemind = callPackage ../applications/misc/freemind {
12284 jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
12285 jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
12286 };
12287
12288 inherit
12289 ({
12290 freeoffice = callPackage ../applications/office/softmaker/freeoffice.nix { };
12291 })
12292 freeoffice
12293 ;
12294
12295 inherit (xorg) xlsfonts;
12296
12297 gimp3 = callPackage ../applications/graphics/gimp {
12298 lcms = lcms2;
12299 };
12300
12301 gimp3-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix {
12302 gimpPlugins = gimp3Plugins;
12303 plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied
12304 };
12305
12306 gimp3Plugins = recurseIntoAttrs (
12307 callPackage ../applications/graphics/gimp/plugins {
12308 gimp = gimp3;
12309 }
12310 );
12311
12312 gimp = callPackage ../applications/graphics/gimp/2.0 {
12313 lcms = lcms2;
12314 };
12315
12316 gimp-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix {
12317 plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied
12318 };
12319
12320 gimpPlugins = recurseIntoAttrs (callPackage ../applications/graphics/gimp/plugins { });
12321
12322 gtk-pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { withGtk3 = true; };
12323
12324 kemai = qt6Packages.callPackage ../applications/misc/kemai { };
12325
12326 jetbrains = (
12327 recurseIntoAttrs (
12328 callPackages ../applications/editors/jetbrains {
12329 vmopts = config.jetbrains.vmopts or null;
12330 jdk = jetbrains.jdk;
12331 }
12332 )
12333 // {
12334 jdk-no-jcef = callPackage ../development/compilers/jetbrains-jdk {
12335 jdk = jdk21;
12336 withJcef = false;
12337 };
12338 jdk-no-jcef-17 = callPackage ../development/compilers/jetbrains-jdk/17.nix {
12339 withJcef = false;
12340 };
12341 jdk = callPackage ../development/compilers/jetbrains-jdk {
12342 jdk = jdk21;
12343 };
12344 jcef = callPackage ../development/compilers/jetbrains-jdk/jcef.nix {
12345 jdk = jdk21;
12346 };
12347 }
12348 );
12349
12350 librespot = callPackage ../applications/audio/librespot {
12351 withALSA = stdenv.hostPlatform.isLinux;
12352 withPulseAudio = config.pulseaudio or stdenv.hostPlatform.isLinux;
12353 withPortAudio = stdenv.hostPlatform.isDarwin;
12354 };
12355
12356 linssid = libsForQt5.callPackage ../applications/networking/linssid { };
12357
12358 linvstmanager = qt5.callPackage ../applications/audio/linvstmanager { };
12359
12360 deadd-notification-center = haskell.lib.compose.justStaticExecutables (
12361 haskellPackages.callPackage ../applications/misc/deadd-notification-center { }
12362 );
12363
12364 m32edit = callPackage ../applications/audio/midas/m32edit.nix { };
12365
12366 manim = python3Packages.toPythonApplication python3Packages.manim;
12367
12368 manim-slides = python3Packages.toPythonApplication (
12369 python3Packages.manim-slides.override {
12370 withGui = true;
12371 }
12372 );
12373
12374 manuskript = libsForQt5.callPackage ../applications/editors/manuskript { };
12375
12376 minari = python3Packages.toPythonApplication python3Packages.minari;
12377
12378 mindforger = libsForQt5.callPackage ../applications/editors/mindforger { };
12379
12380 molsketch = libsForQt5.callPackage ../applications/editors/molsketch { };
12381
12382 pattypan = callPackage ../applications/misc/pattypan {
12383 jdk = jdk.override { enableJavaFX = true; };
12384 };
12385
12386 gnunet = callPackage ../applications/networking/p2p/gnunet { };
12387
12388 gnunet-gtk = callPackage ../applications/networking/p2p/gnunet/gtk.nix { };
12389
12390 gphoto2 = callPackage ../applications/misc/gphoto2 { };
12391
12392 gphoto2fs = callPackage ../applications/misc/gphoto2/gphotofs.nix { };
12393
12394 graphicsmagick_q16 = graphicsmagick.override { quantumdepth = 16; };
12395 graphicsmagick-imagemagick-compat = graphicsmagick.imagemagick-compat;
12396
12397 q4wine = libsForQt5.callPackage ../applications/misc/q4wine { };
12398
12399 googleearth-pro = libsForQt5.callPackage ../applications/misc/googleearth-pro { };
12400
12401 gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel { };
12402
12403 gpsbabel-gui = gpsbabel.override {
12404 withGUI = true;
12405 withDoc = true;
12406 };
12407
12408 gpxsee-qt5 = libsForQt5.callPackage ../applications/misc/gpxsee { };
12409
12410 gpxsee-qt6 = qt6Packages.callPackage ../applications/misc/gpxsee { };
12411
12412 gpxsee = gpxsee-qt5;
12413
12414 guvcview = libsForQt5.callPackage ../os-specific/linux/guvcview { };
12415
12416 hachoir = with python3Packages; toPythonApplication hachoir;
12417
12418 heimer = libsForQt5.callPackage ../applications/misc/heimer { };
12419
12420 hydrogen-web-unwrapped =
12421 callPackage ../applications/networking/instant-messengers/hydrogen-web/unwrapped.nix
12422 { };
12423
12424 hydrogen-web = callPackage ../applications/networking/instant-messengers/hydrogen-web/wrapper.nix {
12425 conf = config.hydrogen-web.conf or { };
12426 };
12427
12428 hledger = haskell.lib.compose.justStaticExecutables haskellPackages.hledger;
12429 hledger-iadd = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-iadd;
12430 hledger-interest = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-interest;
12431 hledger-ui = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-ui;
12432 hledger-web =
12433 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
12434 (
12435 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
12436 lib.id
12437 else
12438 haskell.lib.compose.justStaticExecutables
12439 )
12440 haskellPackages.hledger-web;
12441 hledger-utils = with python3.pkgs; toPythonApplication hledger-utils;
12442
12443 hpack = haskell.lib.compose.justStaticExecutables haskellPackages.hpack;
12444
12445 hpmyroom = libsForQt5.callPackage ../applications/networking/hpmyroom { };
12446
12447 hugin = callPackage ../applications/graphics/hugin {
12448 wxGTK = wxGTK32;
12449 };
12450
12451 huggle = libsForQt5.callPackage ../applications/misc/huggle { };
12452
12453 hushboard = python3.pkgs.callPackage ../applications/audio/hushboard { };
12454
12455 hyperion-ng = libsForQt5.callPackage ../applications/video/hyperion-ng { };
12456
12457 jackline = callPackage ../applications/networking/instant-messengers/jackline {
12458 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
12459 };
12460
12461 meerk40t = callPackage ../applications/misc/meerk40t { };
12462
12463 meerk40t-camera = callPackage ../applications/misc/meerk40t/camera.nix { };
12464
12465 libmt32emu = callPackage ../applications/audio/munt/libmt32emu.nix { };
12466
12467 mt32emu-qt = libsForQt5.callPackage ../applications/audio/munt/mt32emu-qt.nix { };
12468
12469 mt32emu-smf2wav = callPackage ../applications/audio/munt/mt32emu-smf2wav.nix { };
12470
12471 noson = libsForQt5.callPackage ../applications/audio/noson { };
12472
12473 pass2csv = python3Packages.callPackage ../tools/security/pass2csv { };
12474
12475 pinboard = with python3Packages; toPythonApplication pinboard;
12476
12477 pinboard-notes-backup = haskell.lib.compose.justStaticExecutables haskellPackages.pinboard-notes-backup;
12478
12479 pixel2svg = python310Packages.callPackage ../tools/graphics/pixel2svg { };
12480
12481 inherit (callPackage ../applications/virtualization/singularity/packages.nix { })
12482 apptainer
12483 singularity
12484 apptainer-overriden-nixos
12485 singularity-overriden-nixos
12486 ;
12487
12488 inherit (callPackages ../development/libraries/wlroots { })
12489 wlroots_0_17
12490 wlroots_0_18
12491 wlroots_0_19
12492 ;
12493
12494 sway-contrib = recurseIntoAttrs (callPackages ../applications/misc/sway-contrib { });
12495
12496 i3 = callPackage ../applications/window-managers/i3 {
12497 xcb-util-cursor = if stdenv.hostPlatform.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
12498 };
12499
12500 i3-auto-layout = callPackage ../applications/window-managers/i3/auto-layout.nix { };
12501
12502 i3-rounded = callPackage ../applications/window-managers/i3/rounded.nix { };
12503
12504 i3altlayout = callPackage ../applications/window-managers/i3/altlayout.nix { };
12505
12506 i3-balance-workspace =
12507 python3Packages.callPackage ../applications/window-managers/i3/balance-workspace.nix
12508 { };
12509
12510 i3-cycle-focus = callPackage ../applications/window-managers/i3/cycle-focus.nix { };
12511
12512 i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { };
12513
12514 i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.nix { };
12515
12516 i3-ratiosplit = callPackage ../applications/window-managers/i3/i3-ratiosplit.nix { };
12517
12518 i3-resurrect = python3Packages.callPackage ../applications/window-managers/i3/i3-resurrect.nix { };
12519
12520 i3-swallow = python3Packages.callPackage ../applications/window-managers/i3/swallow.nix { };
12521
12522 i3blocks = callPackage ../applications/window-managers/i3/blocks.nix { };
12523
12524 i3blocks-gaps = callPackage ../applications/window-managers/i3/blocks-gaps.nix { };
12525
12526 i3ipc-glib = callPackage ../applications/window-managers/i3/i3ipc-glib.nix { };
12527
12528 i3lock = callPackage ../applications/window-managers/i3/lock.nix {
12529 cairo = cairo.override { xcbSupport = true; };
12530 };
12531
12532 i3lock-blur = callPackage ../applications/window-managers/i3/lock-blur.nix { };
12533
12534 i3lock-color = callPackage ../applications/window-managers/i3/lock-color.nix { };
12535
12536 i3lock-fancy = callPackage ../applications/window-managers/i3/lock-fancy.nix { };
12537
12538 i3lock-fancy-rapid = callPackage ../applications/window-managers/i3/lock-fancy-rapid.nix { };
12539
12540 i3status = callPackage ../applications/window-managers/i3/status.nix { };
12541
12542 i3wsr = callPackage ../applications/window-managers/i3/wsr.nix { };
12543
12544 i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { };
12545
12546 kitti3 = python3.pkgs.callPackage ../applications/window-managers/i3/kitti3.nix { };
12547
12548 waybox = callPackage ../by-name/wa/waybox/package.nix {
12549 wlroots = wlroots_0_17;
12550 };
12551
12552 workstyle = callPackage ../applications/window-managers/i3/workstyle.nix { };
12553
12554 wmfocus = callPackage ../applications/window-managers/i3/wmfocus.nix { };
12555
12556 ii = callPackage ../applications/networking/irc/ii {
12557 stdenv = gccStdenv;
12558 };
12559
12560 ikiwiki = callPackage ../applications/misc/ikiwiki {
12561 inherit
12562 (perlPackages.override {
12563 pkgs = pkgs // {
12564 imagemagick = imagemagickBig;
12565 };
12566 })
12567 ImageMagick
12568 ;
12569 };
12570
12571 ikiwiki-full = ikiwiki.override {
12572 bazaarSupport = false; # tests broken
12573 cvsSupport = true;
12574 docutilsSupport = true;
12575 gitSupport = true;
12576 mercurialSupport = true;
12577 monotoneSupport = true;
12578 subversionSupport = true;
12579 };
12580
12581 avalonia-ilspy = callPackage ../applications/misc/avalonia-ilspy {
12582 inherit (darwin) autoSignDarwinBinariesHook;
12583 };
12584
12585 imagemagick6_light = imagemagick6.override {
12586 bzip2Support = false;
12587 zlibSupport = false;
12588 libX11Support = false;
12589 libXtSupport = false;
12590 fontconfigSupport = false;
12591 freetypeSupport = false;
12592 ghostscriptSupport = false;
12593 libjpegSupport = false;
12594 djvulibreSupport = false;
12595 lcms2Support = false;
12596 openexrSupport = false;
12597 libpngSupport = false;
12598 liblqr1Support = false;
12599 librsvgSupport = false;
12600 libtiffSupport = false;
12601 libxml2Support = false;
12602 openjpegSupport = false;
12603 libwebpSupport = false;
12604 libheifSupport = false;
12605 libde265Support = false;
12606 };
12607
12608 imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix { };
12609
12610 imagemagick6Big = imagemagick6.override {
12611 ghostscriptSupport = true;
12612 };
12613
12614 imagemagick_light = lowPrio (
12615 imagemagick.override {
12616 bzip2Support = false;
12617 zlibSupport = false;
12618 libX11Support = false;
12619 libXtSupport = false;
12620 fontconfigSupport = false;
12621 freetypeSupport = false;
12622 libraqmSupport = false;
12623 libjpegSupport = false;
12624 djvulibreSupport = false;
12625 lcms2Support = false;
12626 openexrSupport = false;
12627 libjxlSupport = false;
12628 libpngSupport = false;
12629 liblqr1Support = false;
12630 librsvgSupport = false;
12631 libtiffSupport = false;
12632 libxml2Support = false;
12633 openjpegSupport = false;
12634 libwebpSupport = false;
12635 libheifSupport = false;
12636 }
12637 );
12638
12639 imagemagick = lowPrio (
12640 callPackage ../applications/graphics/ImageMagick {
12641 }
12642 );
12643
12644 imagemagickBig = lowPrio (
12645 imagemagick.override {
12646 ghostscriptSupport = true;
12647 }
12648 );
12649
12650 inherit (nodePackages) imapnotify;
12651
12652 img2pdf = with python3Packages; toPythonApplication img2pdf;
12653
12654 inkscape = callPackage ../applications/graphics/inkscape {
12655 lcms = lcms2;
12656 };
12657
12658 inkscape-with-extensions = callPackage ../applications/graphics/inkscape/with-extensions.nix { };
12659
12660 inkscape-extensions = recurseIntoAttrs (
12661 callPackages ../applications/graphics/inkscape/extensions.nix { }
12662 );
12663
12664 ion3 = callPackage ../applications/window-managers/ion-3 {
12665 lua = lua5_1;
12666 };
12667
12668 ipe = qt6Packages.callPackage ../applications/graphics/ipe {
12669 ghostscript = ghostscriptX;
12670 lua5 = lua5_3;
12671 };
12672
12673 ir.lv2 = callPackage ../applications/audio/ir.lv2 { };
12674
12675 jabcode = callPackage ../development/libraries/jabcode { };
12676
12677 jabcode-writer = callPackage ../development/libraries/jabcode {
12678 subproject = "writer";
12679 };
12680
12681 jabcode-reader = callPackage ../development/libraries/jabcode {
12682 subproject = "reader";
12683 };
12684
12685 jabref = callPackage ../applications/office/jabref {
12686 jdk = jdk21.override {
12687 enableJavaFX = true;
12688 openjfx_jdk = openjfx23;
12689 };
12690 };
12691
12692 jackmix = libsForQt5.callPackage ../applications/audio/jackmix { };
12693 jackmix_jack1 = jackmix.override { jack = jack1; };
12694
12695 jalv-qt = jalv.override { useQt = true; };
12696
12697 js8call = qt5.callPackage ../applications/radio/js8call { };
12698
12699 jwm = callPackage ../applications/window-managers/jwm { };
12700
12701 jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { };
12702
12703 inherit (callPackage ../applications/networking/cluster/k3s { })
12704 k3s_1_30
12705 k3s_1_31
12706 k3s_1_32
12707 k3s_1_33
12708 ;
12709 k3s = k3s_1_33;
12710
12711 kapow = libsForQt5.callPackage ../applications/misc/kapow { };
12712
12713 okteta = libsForQt5.callPackage ../applications/editors/okteta { };
12714
12715 k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { };
12716
12717 kbibtex = libsForQt5.callPackage ../applications/office/kbibtex { };
12718
12719 kexi = libsForQt5.callPackage ../applications/office/kexi { };
12720
12721 kid3-cli = kid3.override {
12722 withCLI = true;
12723 withKDE = false;
12724 withQt = false;
12725 };
12726 kid3-kde = kid3.override {
12727 withCLI = true;
12728 withKDE = true;
12729 withQt = false;
12730 };
12731 kid3-qt = kid3.override {
12732 withCLI = true;
12733 withKDE = false;
12734 withQt = true;
12735 };
12736
12737 kiwix = libsForQt5.callPackage ../applications/misc/kiwix { };
12738
12739 kiwix-tools = callPackage ../applications/misc/kiwix/tools.nix { };
12740
12741 klayout = libsForQt5.callPackage ../applications/misc/klayout { };
12742
12743 klee = callPackage ../applications/science/logic/klee {
12744 llvmPackages = llvmPackages_13;
12745 };
12746
12747 kmplayer = libsForQt5.callPackage ../applications/video/kmplayer { };
12748
12749 kmymoney = libsForQt5.callPackage ../applications/office/kmymoney { };
12750
12751 kotatogram-desktop =
12752 callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop
12753 { };
12754
12755 ktimetracker = libsForQt5.callPackage ../applications/office/ktimetracker { };
12756
12757 kubeval = callPackage ../applications/networking/cluster/kubeval { };
12758
12759 kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { };
12760
12761 kubectl-convert = kubectl.convert;
12762
12763 kubectl-view-allocations =
12764 callPackage ../applications/networking/cluster/kubectl-view-allocations
12765 { };
12766
12767 kubelogin-oidc = callPackage ../by-name/ku/kubelogin-oidc/package.nix {
12768 buildGoModule = buildGo124Module;
12769 };
12770
12771 kthxbye = callPackage ../servers/monitoring/prometheus/kthxbye.nix { };
12772
12773 linkerd = callPackage ../applications/networking/cluster/linkerd { };
12774 linkerd_edge = callPackage ../applications/networking/cluster/linkerd/edge.nix { };
12775 linkerd_stable = linkerd;
12776
12777 kuma = callPackage ../applications/networking/cluster/kuma { isFull = true; };
12778 kuma-experimental = callPackage ../applications/networking/cluster/kuma {
12779 isFull = true;
12780 enableGateway = true;
12781 pname = "kuma-experimental";
12782 };
12783 kumactl = callPackage ../applications/networking/cluster/kuma {
12784 components = [ "kumactl" ];
12785 pname = "kumactl";
12786 };
12787 kuma-cp = callPackage ../applications/networking/cluster/kuma {
12788 components = [ "kuma-cp" ];
12789 pname = "kuma-cp";
12790 };
12791 kuma-dp = callPackage ../applications/networking/cluster/kuma {
12792 components = [ "kuma-dp" ];
12793 pname = "kuma-dp";
12794 };
12795
12796 kubernetes-helm = callPackage ../applications/networking/cluster/helm { };
12797
12798 wrapHelm = callPackage ../applications/networking/cluster/helm/wrapper.nix { };
12799
12800 kubernetes-helm-wrapped = wrapHelm kubernetes-helm { };
12801
12802 kubernetes-helmPlugins = recurseIntoAttrs (
12803 callPackage ../applications/networking/cluster/helm/plugins { }
12804 );
12805
12806 kup = libsForQt5.callPackage ../applications/misc/kup { };
12807
12808 kvirc = libsForQt5.callPackage ../applications/networking/irc/kvirc { };
12809
12810 ladspaH = callPackage ../applications/audio/ladspa-sdk/ladspah.nix { };
12811
12812 ladspaPlugins = callPackage ../applications/audio/ladspa-plugins {
12813 fftw = fftwSinglePrec;
12814 };
12815
12816 ladspa-sdk = callPackage ../applications/audio/ladspa-sdk { };
12817
12818 lemonbar = callPackage ../applications/window-managers/lemonbar { };
12819
12820 lemonbar-xft = callPackage ../applications/window-managers/lemonbar/xft.nix { };
12821
12822 lenovo-legion = libsForQt5.callPackage ../os-specific/linux/lenovo-legion/app.nix { };
12823
12824 leo-editor = libsForQt5.callPackage ../applications/editors/leo-editor { };
12825
12826 libkiwix = callPackage ../applications/misc/kiwix/lib.nix { };
12827
12828 libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { };
12829
12830 libreoffice = hiPrio libreoffice-still;
12831 libreoffice-unwrapped = libreoffice.unwrapped;
12832
12833 libreoffice-qt = hiPrio libreoffice-qt-still;
12834 libreoffice-qt-unwrapped = libreoffice-qt.unwrapped;
12835
12836 libreoffice-qt-fresh = lowPrio (
12837 callPackage ../applications/office/libreoffice/wrapper.nix {
12838 unwrapped = libsForQt5.callPackage ../applications/office/libreoffice {
12839 kdeIntegration = true;
12840 variant = "fresh";
12841 };
12842 }
12843 );
12844 libreoffice-qt-fresh-unwrapped = libreoffice-qt-fresh.unwrapped;
12845
12846 libreoffice-qt-still = lowPrio (
12847 callPackage ../applications/office/libreoffice/wrapper.nix {
12848 unwrapped = libsForQt5.callPackage ../applications/office/libreoffice {
12849 kdeIntegration = true;
12850 variant = "still";
12851 };
12852 }
12853 );
12854 libreoffice-qt-still-unwrapped = libreoffice-qt-still.unwrapped;
12855
12856 libreoffice-qt6 = hiPrio libreoffice-qt6-still;
12857 libreoffice-qt6-unwrapped = libreoffice-qt6.unwrapped;
12858
12859 libreoffice-qt6-fresh = lowPrio (
12860 callPackage ../applications/office/libreoffice/wrapper.nix {
12861 unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
12862 kdeIntegration = true;
12863 variant = "fresh";
12864 };
12865 }
12866 );
12867 libreoffice-qt6-fresh-unwrapped = libreoffice-qt6-fresh.unwrapped;
12868
12869 libreoffice-qt6-still = lowPrio (
12870 callPackage ../applications/office/libreoffice/wrapper.nix {
12871 unwrapped = kdePackages.callPackage ../applications/office/libreoffice {
12872 kdeIntegration = true;
12873 variant = "still";
12874 };
12875 }
12876 );
12877 libreoffice-qt6-still-unwrapped = libreoffice-qt-still.unwrapped;
12878
12879 libreoffice-fresh = lowPrio (
12880 callPackage ../applications/office/libreoffice/wrapper.nix {
12881 unwrapped = callPackage ../applications/office/libreoffice {
12882 variant = "fresh";
12883 };
12884 }
12885 );
12886 libreoffice-fresh-unwrapped = libreoffice-fresh.unwrapped;
12887
12888 libreoffice-still = lowPrio (
12889 callPackage ../applications/office/libreoffice/wrapper.nix {
12890 unwrapped = callPackage ../applications/office/libreoffice {
12891 variant = "still";
12892 };
12893 }
12894 );
12895 libreoffice-still-unwrapped = libreoffice-still.unwrapped;
12896
12897 libreoffice-collabora = callPackage ../applications/office/libreoffice {
12898 variant = "collabora";
12899 withFonts = true;
12900 };
12901
12902 libutp = callPackage ../applications/networking/p2p/libutp { };
12903 libutp_3_4 = callPackage ../applications/networking/p2p/libutp/3.4.nix { };
12904
12905 linphone = libsForQt5.callPackage ../applications/networking/instant-messengers/linphone { };
12906
12907 lmms = libsForQt5.callPackage ../applications/audio/lmms {
12908 lame = null;
12909 libsoundio = null;
12910 portaudio = null;
12911 };
12912
12913 luminanceHDR = callPackage ../applications/graphics/luminance-hdr {
12914 openexr = openexr_2;
12915 };
12916
12917 luddite = with python3Packages; toPythonApplication luddite;
12918
12919 lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris {
12920 inherit (pkgs) meson;
12921 };
12922 lutris = callPackage ../applications/misc/lutris/fhsenv.nix { };
12923 lutris-free = lutris.override {
12924 steamSupport = false;
12925 };
12926
12927 lv2lint = callPackage ../applications/audio/lv2lint/default.nix { };
12928
12929 lxi-tools = callPackage ../tools/networking/lxi-tools { };
12930 lxi-tools-gui = callPackage ../tools/networking/lxi-tools { withGui = true; };
12931
12932 lyx = libsForQt5.callPackage ../applications/misc/lyx { };
12933
12934 magic-wormhole = with python3Packages; toPythonApplication magic-wormhole;
12935
12936 magnetophonDSP = lib.recurseIntoAttrs {
12937 CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { };
12938 CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { };
12939 ConstantDetuneChorus = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { };
12940 faustCompressors = callPackage ../applications/audio/magnetophonDSP/faustCompressors { };
12941 LazyLimiter = callPackage ../applications/audio/magnetophonDSP/LazyLimiter { };
12942 MBdistortion = callPackage ../applications/audio/magnetophonDSP/MBdistortion { };
12943 pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { };
12944 RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
12945 VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
12946 shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { };
12947 };
12948
12949 mandelbulber = callPackage ../applications/graphics/mandelbulber { };
12950
12951 mastodon-bot = nodePackages.mastodon-bot;
12952
12953 matrix-commander =
12954 python3Packages.callPackage ../applications/networking/instant-messengers/matrix-commander
12955 { };
12956
12957 mbrola = callPackage ../applications/audio/mbrola { };
12958
12959 mbrola-voices = callPackage ../applications/audio/mbrola/voices.nix { };
12960
12961 mediaelch-qt5 = callPackage ../by-name/me/mediaelch/package.nix { qtVersion = 5; };
12962 mediaelch-qt6 = mediaelch;
12963
12964 melmatcheq.lv2 = callPackage ../applications/audio/melmatcheq.lv2 { };
12965
12966 mendeley = libsForQt5.callPackage ../applications/office/mendeley {
12967 gconf = gnome2.GConf;
12968 };
12969
12970 mercurialFull = mercurial.override { fullBuild = true; };
12971
12972 meshcentral = callPackage ../tools/admin/meshcentral { };
12973
12974 michabo = libsForQt5.callPackage ../applications/misc/michabo { };
12975
12976 miniaudicle = qt6Packages.callPackage ../applications/audio/miniaudicle { };
12977
12978 minitube = libsForQt5.callPackage ../applications/video/minitube { };
12979
12980 mixxx = qt6Packages.callPackage ../applications/audio/mixxx { };
12981
12982 mldonkey = callPackage ../applications/networking/p2p/mldonkey {
12983 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
12984 };
12985
12986 mmlgui = callPackage ../applications/audio/mmlgui {
12987 libvgm = libvgm.override {
12988 withAllEmulators = false;
12989 emulators = [
12990 "_PRESET_SMD"
12991 ];
12992 enableLibplayer = false;
12993 };
12994 };
12995
12996 monotone = callPackage ../applications/version-management/monotone {
12997 lua = lua5;
12998 };
12999
13000 monotoneViz = callPackage ../applications/version-management/monotone-viz {
13001 ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string;
13002 };
13003
13004 monitor = callPackage ../applications/system/monitor {
13005 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
13006 };
13007
13008 moolticute = libsForQt5.callPackage ../applications/misc/moolticute { };
13009
13010 mopidyPackages =
13011 (callPackages ../applications/audio/mopidy {
13012 python = python3;
13013 })
13014 // {
13015 __attrsFailEvaluation = true;
13016 };
13017
13018 inherit (mopidyPackages)
13019 mopidy
13020 mopidy-listenbrainz
13021 mopidy-bandcamp
13022 mopidy-iris
13023 mopidy-jellyfin
13024 mopidy-local
13025 mopidy-moped
13026 mopidy-mopify
13027 mopidy-mpd
13028 mopidy-mpris
13029 mopidy-muse
13030 mopidy-musicbox-webclient
13031 mopidy-notify
13032 mopidy-podcast
13033 mopidy-scrobbler
13034 mopidy-somafm
13035 mopidy-soundcloud
13036 mopidy-spotify
13037 mopidy-subidy
13038 mopidy-tidal
13039 mopidy-tunein
13040 mopidy-youtube
13041 mopidy-ytmusic
13042 ;
13043
13044 mpg123 = callPackage ../applications/audio/mpg123 {
13045 jack = libjack2;
13046 };
13047
13048 libmpg123 = mpg123.override {
13049 libOnly = true;
13050 withConplay = false;
13051 };
13052
13053 pragha = libsForQt5.callPackage ../applications/audio/pragha { };
13054
13055 rofi-emoji = (callPackage ../applications/misc/rofi-emoji { }).v3;
13056 rofi-emoji-wayland =
13057 (callPackage ../applications/misc/rofi-emoji {
13058 rofi-unwrapped = rofi-wayland-unwrapped;
13059 }).v4;
13060
13061 rofi-rbw = python3Packages.callPackage ../applications/misc/rofi-rbw {
13062 waylandSupport = false;
13063 x11Support = false;
13064 };
13065
13066 rofi-rbw-wayland = python3Packages.callPackage ../applications/misc/rofi-rbw {
13067 waylandSupport = true;
13068 };
13069
13070 rofi-rbw-x11 = python3Packages.callPackage ../applications/misc/rofi-rbw {
13071 x11Support = true;
13072 };
13073
13074 rquickshare-legacy = rquickshare.override { app-type = "legacy"; };
13075
13076 # a somewhat more maintained fork of ympd
13077 memento = qt6Packages.callPackage ../applications/video/memento { };
13078
13079 mplayer = callPackage ../applications/video/mplayer (
13080 {
13081 libdvdnav = libdvdnav_4_2_1;
13082 }
13083 // (config.mplayer or { })
13084 );
13085
13086 mpv-unwrapped = callPackage ../applications/video/mpv {
13087 stdenv = if stdenv.hostPlatform.isDarwin then swiftPackages.stdenv else stdenv;
13088 };
13089
13090 # Wrap avoiding rebuild
13091 mpv = mpv-unwrapped.wrapper { mpv = mpv-unwrapped; };
13092
13093 mpvScripts = mpv-unwrapped.scripts;
13094
13095 mu-repo = python3Packages.callPackage ../applications/misc/mu-repo { };
13096
13097 murmur =
13098 (callPackages ../applications/networking/mumble {
13099 avahi = avahi-compat;
13100 pulseSupport = config.pulseaudio or false;
13101 iceSupport = config.murmur.iceSupport or true;
13102 }).murmur;
13103
13104 mumble =
13105 (callPackages ../applications/networking/mumble {
13106 avahi = avahi-compat;
13107 jackSupport = config.mumble.jackSupport or false;
13108 speechdSupport = config.mumble.speechdSupport or false;
13109 }).mumble;
13110
13111 mumble_overlay = (callPackages ../applications/networking/mumble { }).overlay;
13112
13113 mup = callPackage ../applications/audio/mup {
13114 autoreconfHook = buildPackages.autoreconfHook269;
13115 };
13116
13117 musescore = qt6.callPackage ../applications/audio/musescore { };
13118
13119 mwic = callPackage ../applications/misc/mwic {
13120 pythonPackages = python3Packages;
13121 };
13122
13123 natron = libsForQt5.callPackage ../applications/video/natron { };
13124
13125 netmaker = callPackage ../applications/networking/netmaker { subPackages = [ "." ]; };
13126 netmaker-full = callPackage ../applications/networking/netmaker { };
13127
13128 ninja_1_11 = callPackage ../by-name/ni/ninja/package.nix { ninjaRelease = "1.11"; };
13129
13130 nootka = qt5.callPackage ../applications/audio/nootka { };
13131
13132 opcua-client-gui = libsForQt5.callPackage ../misc/opcua-client-gui { };
13133
13134 ostinato = libsForQt5.callPackage ../applications/networking/ostinato {
13135 protobuf = protobuf_21;
13136 };
13137
13138 p4v = qt6Packages.callPackage ../applications/version-management/p4v { };
13139
13140 pcmanfm-qt = lxqt.pcmanfm-qt;
13141
13142 pdfmixtool = libsForQt5.callPackage ../applications/office/pdfmixtool { };
13143
13144 pijuice = with python3Packages; toPythonApplication pijuice;
13145
13146 pinegrow6 = callPackage ../applications/editors/pinegrow { pinegrowVersion = "6"; };
13147
13148 pinegrow = callPackage ../applications/editors/pinegrow { };
13149
13150 pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { };
13151
13152 playonlinux = callPackage ../applications/misc/playonlinux { stdenv = stdenv_32bit; };
13153
13154 pleroma-bot = python3Packages.callPackage ../development/python-modules/pleroma-bot { };
13155
13156 pnglatex = with python3Packages; toPythonApplication pnglatex;
13157
13158 polybarFull = polybar.override {
13159 alsaSupport = true;
13160 githubSupport = true;
13161 mpdSupport = true;
13162 pulseSupport = true;
13163 iwSupport = false;
13164 nlSupport = true;
13165 i3Support = true;
13166 };
13167
13168 polyphone = qt6.callPackage ../applications/audio/polyphone { };
13169
13170 scx = recurseIntoAttrs (callPackage ../os-specific/linux/scx { });
13171
13172 shogun = callPackage ../applications/science/machine-learning/shogun {
13173 protobuf = protobuf_21;
13174 };
13175
13176 smtube = libsForQt5.callPackage ../applications/video/smtube { };
13177
13178 inherit
13179 ({
13180 softmaker-office = callPackage ../applications/office/softmaker/softmaker-office.nix { };
13181 softmaker-office-nx = callPackage ../applications/office/softmaker/softmaker-office-nx.nix { };
13182 })
13183 softmaker-office
13184 softmaker-office-nx
13185 ;
13186
13187 taxi-cli = with python3Packages; toPythonApplication taxi;
13188
13189 imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix {
13190 lua = lua5;
13191 };
13192
13193 pdfsam-basic = callPackage ../applications/misc/pdfsam-basic {
13194 jdk21 = openjdk21.override { enableJavaFX = true; };
13195 };
13196
13197 mupdf-headless = mupdf.override {
13198 enableX11 = false;
13199 enableGL = false;
13200 };
13201
13202 diffpdf = libsForQt5.callPackage ../applications/misc/diffpdf { };
13203
13204 diff-pdf = callPackage ../applications/misc/diff-pdf {
13205 wxGTK = wxGTK32;
13206 };
13207
13208 mypaint-brushes1 = callPackage ../development/libraries/mypaint-brushes/1.0.nix { };
13209
13210 mypaint-brushes = callPackage ../development/libraries/mypaint-brushes { };
13211
13212 mythtv = libsForQt5.callPackage ../applications/video/mythtv { };
13213
13214 ncdu_1 = callPackage ../by-name/nc/ncdu/1.nix { };
13215
13216 notepadqq = libsForQt5.callPackage ../applications/editors/notepadqq { };
13217
13218 notmuch = callPackage ../applications/networking/mailreaders/notmuch {
13219 pythonPackages = python3Packages;
13220 };
13221
13222 notmuch-mutt = callPackage ../applications/networking/mailreaders/notmuch/mutt.nix { };
13223
13224 muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { };
13225
13226 nufraw = callPackage ../applications/graphics/nufraw { };
13227
13228 nufraw-thumbnailer = callPackage ../applications/graphics/nufraw {
13229 addThumbnailer = true;
13230 };
13231
13232 obs-studio = qt6Packages.callPackage ../applications/video/obs-studio { };
13233
13234 obs-studio-plugins = recurseIntoAttrs (callPackage ../applications/video/obs-studio/plugins { });
13235 wrapOBS = callPackage ../applications/video/obs-studio/wrapper.nix { };
13236
13237 okms-cli = callPackage ../by-name/ok/okms-cli/package.nix {
13238 buildGoModule = buildGo123Module;
13239 };
13240
13241 omegat = callPackage ../applications/misc/omegat.nix { };
13242
13243 openambit = qt5.callPackage ../applications/misc/openambit { };
13244
13245 openbox-menu = callPackage ../applications/misc/openbox-menu {
13246 stdenv = gccStdenv;
13247 };
13248
13249 openbrf = libsForQt5.callPackage ../applications/misc/openbrf { };
13250
13251 opencpn = callPackage ../applications/misc/opencpn {
13252 inherit (darwin) DarwinTools;
13253 };
13254
13255 open-music-kontrollers = lib.recurseIntoAttrs {
13256 eteroj = callPackage ../applications/audio/open-music-kontrollers/eteroj.nix { };
13257 jit = callPackage ../applications/audio/open-music-kontrollers/jit.nix { };
13258 mephisto = callPackage ../applications/audio/open-music-kontrollers/mephisto.nix { };
13259 midi_matrix = callPackage ../applications/audio/open-music-kontrollers/midi_matrix.nix { };
13260 moony = callPackage ../applications/audio/open-music-kontrollers/moony.nix { };
13261 orbit = callPackage ../applications/audio/open-music-kontrollers/orbit.nix { };
13262 patchmatrix = callPackage ../applications/audio/open-music-kontrollers/patchmatrix.nix { };
13263 router = callPackage ../applications/audio/open-music-kontrollers/router.nix { };
13264 sherlock = callPackage ../applications/audio/open-music-kontrollers/sherlock.nix { };
13265 synthpod = callPackage ../applications/audio/open-music-kontrollers/synthpod.nix { };
13266 vm = callPackage ../applications/audio/open-music-kontrollers/vm.nix { };
13267 };
13268
13269 inherit (callPackages ../data/fonts/open-relay { })
13270 constructium
13271 fairfax
13272 fairfax-hd
13273 kreative-square
13274 ;
13275
13276 opentx = libsForQt5.callPackage ../applications/misc/opentx { };
13277
13278 organicmaps = qt6Packages.callPackage ../applications/misc/organicmaps { };
13279
13280 openrazer-daemon = python3Packages.toPythonApplication python3Packages.openrazer-daemon;
13281
13282 orpie = callPackage ../applications/misc/orpie {
13283 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
13284 };
13285
13286 osmscout-server = libsForQt5.callPackage ../applications/misc/osmscout-server {
13287 protobuf = protobuf_21.override {
13288 abseil-cpp = abseil-cpp_202103.override {
13289 cxxStandard = "17";
13290 };
13291 };
13292 };
13293
13294 palemoon-bin = callPackage ../applications/networking/browsers/palemoon/bin.nix { };
13295
13296 pantalaimon = callPackage ../applications/networking/instant-messengers/pantalaimon { };
13297
13298 pantalaimon-headless = callPackage ../applications/networking/instant-messengers/pantalaimon {
13299 enableDbusUi = false;
13300 };
13301
13302 parsec-bin = callPackage ../applications/misc/parsec/bin.nix { };
13303
13304 paraview = libsForQt5.callPackage ../applications/graphics/paraview { };
13305
13306 pekwm = callPackage ../by-name/pe/pekwm/package.nix {
13307 awk = gawk;
13308 grep = gnugrep;
13309 sed = gnused;
13310 };
13311
13312 petrifoo = callPackage ../applications/audio/petrifoo {
13313 inherit (gnome2) libgnomecanvas;
13314 };
13315
13316 pdfpc = callPackage ../applications/misc/pdfpc {
13317 inherit (gst_all_1)
13318 gstreamer
13319 gst-plugins-base
13320 gst-plugins-good
13321 gst-libav
13322 ;
13323 };
13324
13325 peaclock = callPackage ../applications/misc/peaclock {
13326 stdenv = gccStdenv;
13327 };
13328
13329 pianoteq = callPackage ../applications/audio/pianoteq { };
13330
13331 pidginPackages = recurseIntoAttrs (
13332 callPackage ../applications/networking/instant-messengers/pidgin/pidgin-plugins { }
13333 );
13334
13335 inherit (pidginPackages) pidgin;
13336
13337 pithos = callPackage ../applications/audio/pithos {
13338 pythonPackages = python3Packages;
13339 };
13340
13341 pineapple-pictures = qt6Packages.callPackage ../applications/graphics/pineapple-pictures { };
13342
13343 plater = libsForQt5.callPackage ../applications/misc/plater { };
13344
13345 plexamp = callPackage ../applications/audio/plexamp { };
13346
13347 plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { };
13348
13349 plover = recurseIntoAttrs (libsForQt5.callPackage ../applications/misc/plover { });
13350
13351 pokefinder = qt6Packages.callPackage ../tools/games/pokefinder { };
13352
13353 pothos = libsForQt5.callPackage ../applications/radio/pothos { };
13354
13355 qiv = callPackage ../applications/graphics/qiv {
13356 imlib2 = imlib2Full;
13357 };
13358
13359 processing = callPackage ../applications/graphics/processing {
13360 jdk = jdk17;
13361 };
13362
13363 # perhaps there are better apps for this task? It's how I had configured my previous system.
13364 # And I don't want to rewrite all rules
13365 profanity = callPackage ../applications/networking/instant-messengers/profanity (
13366 {
13367 }
13368 // (config.profanity or { })
13369 );
13370
13371 protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
13372 protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
13373
13374 protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
13375
13376 psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
13377
13378 psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { };
13379
13380 pulseview = libsForQt5.callPackage ../applications/science/electronics/pulseview { };
13381
13382 puredata = callPackage ../applications/audio/puredata { };
13383 puredata-with-plugins =
13384 plugins: callPackage ../applications/audio/puredata/wrapper.nix { inherit plugins; };
13385
13386 pure-maps = libsForQt5.callPackage ../applications/misc/pure-maps { };
13387
13388 qbittorrent-nox = qbittorrent.override { guiSupport = false; };
13389
13390 qbittorrent-enhanced-nox = qbittorrent-enhanced.override { guiSupport = false; };
13391
13392 qcad = libsForQt5.callPackage ../applications/misc/qcad { };
13393
13394 qctools = libsForQt5.callPackage ../applications/video/qctools { };
13395
13396 qelectrotech = libsForQt5.callPackage ../applications/misc/qelectrotech { };
13397
13398 eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { };
13399
13400 qemu = callPackage ../applications/virtualization/qemu {
13401 inherit (darwin) sigtool;
13402 };
13403
13404 qemu-python-utils = python3Packages.toPythonApplication (
13405 python3Packages.qemu.override {
13406 fuseSupport = true;
13407 tuiSupport = true;
13408 }
13409 );
13410
13411 qemu-utils = qemu.override {
13412 toolsOnly = true;
13413 };
13414
13415 # variant of qemu building user space emulator only - intended to be used from pkgsStatic
13416 qemu-user = qemu.override {
13417 userOnly = true;
13418 };
13419
13420 canokey-qemu = callPackage ../applications/virtualization/qemu/canokey-qemu.nix { };
13421
13422 wrapQemuBinfmtP = callPackage ../applications/virtualization/qemu/binfmt-p-wrapper.nix { };
13423
13424 qjackctl = libsForQt5.callPackage ../applications/audio/qjackctl { };
13425
13426 qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { };
13427
13428 qmplay2-qt5 = qmplay2.override { qtVersion = "5"; };
13429 qmplay2-qt6 = qmplay2.override { qtVersion = "6"; };
13430
13431 qmidinet = libsForQt5.callPackage ../applications/audio/qmidinet { };
13432
13433 qnotero = libsForQt5.callPackage ../applications/office/qnotero { };
13434
13435 qpwgraph = qt6Packages.callPackage ../applications/audio/qpwgraph { };
13436
13437 qsampler = libsForQt5.callPackage ../applications/audio/qsampler { };
13438
13439 qsstv = qt5.callPackage ../applications/radio/qsstv { };
13440
13441 qsyncthingtray = libsForQt5.callPackage ../applications/misc/qsyncthingtray { };
13442
13443 qsudo = libsForQt5.callPackage ../applications/misc/qsudo { };
13444
13445 qsynth = libsForQt5.callPackage ../applications/audio/qsynth { };
13446
13447 qtbitcointrader = libsForQt5.callPackage ../applications/misc/qtbitcointrader { };
13448
13449 qtemu = libsForQt5.callPackage ../applications/virtualization/qtemu { };
13450
13451 qtpass = libsForQt5.callPackage ../applications/misc/qtpass { };
13452
13453 quassel = libsForQt5.callPackage ../applications/networking/irc/quassel { };
13454
13455 quasselClient = quassel.override {
13456 monolithic = false;
13457 client = true;
13458 tag = "-client-kf5";
13459 };
13460
13461 quasselDaemon = quassel.override {
13462 monolithic = false;
13463 enableDaemon = true;
13464 withKDE = false;
13465 tag = "-daemon-qt5";
13466 };
13467
13468 quiterss = libsForQt5.callPackage ../applications/networking/newsreaders/quiterss { };
13469
13470 quodlibet = callPackage ../applications/audio/quodlibet {
13471 kakasi = null;
13472 keybinder3 = null;
13473 libappindicator-gtk3 = null;
13474 libmodplug = null;
13475 };
13476
13477 quodlibet-without-gst-plugins = quodlibet.override {
13478 tag = "-without-gst-plugins";
13479 withGstPlugins = false;
13480 };
13481
13482 quodlibet-xine = quodlibet.override {
13483 tag = "-xine";
13484 withGstreamerBackend = false;
13485 withXineBackend = true;
13486 };
13487
13488 quodlibet-full = quodlibet.override {
13489 inherit gtksourceview;
13490 kakasi = kakasi;
13491 keybinder3 = keybinder3;
13492 libappindicator-gtk3 = libappindicator-gtk3;
13493 libmodplug = libmodplug;
13494 tag = "-full";
13495 withDbusPython = true;
13496 withMusicBrainzNgs = true;
13497 withPahoMqtt = true;
13498 withPypresence = true;
13499 withSoco = true;
13500 };
13501
13502 quodlibet-xine-full = quodlibet-full.override {
13503 tag = "-xine-full";
13504 withGstreamerBackend = false;
13505 withXineBackend = true;
13506 };
13507
13508 qutebrowser-qt5 = qutebrowser.override {
13509 qt6Packages = libsForQt5;
13510 };
13511
13512 rakarrack = callPackage ../applications/audio/rakarrack {
13513 fltk = fltk13;
13514 };
13515
13516 radiotray-ng = callPackage ../applications/audio/radiotray-ng {
13517 wxGTK = wxGTK32;
13518 };
13519
13520 rawtherapee = callPackage ../applications/graphics/rawtherapee {
13521 fftw = fftwSinglePrec;
13522 };
13523
13524 rclone = callPackage ../applications/networking/sync/rclone { };
13525
13526 rclone-browser = libsForQt5.callPackage ../applications/networking/sync/rclone/browser.nix { };
13527
13528 reaper = callPackage ../applications/audio/reaper {
13529 jackLibrary = libjack2; # Another option is "pipewire.jack".
13530 ffmpeg = ffmpeg_4-headless;
13531 };
13532
13533 rednotebook = python3Packages.callPackage ../applications/editors/rednotebook { };
13534
13535 retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { };
13536
13537 rgp = libsForQt5.callPackage ../development/tools/rgp { };
13538
13539 ripcord =
13540 if stdenv.hostPlatform.isLinux then
13541 qt5.callPackage ../applications/networking/instant-messengers/ripcord { }
13542 else
13543 callPackage ../applications/networking/instant-messengers/ripcord/darwin.nix { };
13544
13545 inherit (callPackage ../applications/networking/cluster/rke2 { })
13546 rke2_1_30
13547 rke2_1_31
13548 rke2_1_32
13549 rke2_stable
13550 rke2_latest
13551 ;
13552 rke2 = rke2_stable;
13553
13554 rofi-unwrapped = callPackage ../applications/misc/rofi { };
13555 rofi = callPackage ../applications/misc/rofi/wrapper.nix { };
13556 rofi-wayland-unwrapped = callPackage ../applications/misc/rofi/wayland.nix { };
13557 rofi-wayland = callPackage ../applications/misc/rofi/wrapper.nix {
13558 rofi-unwrapped = rofi-wayland-unwrapped;
13559 };
13560
13561 rofi-pass = callPackage ../tools/security/pass/rofi-pass.nix { };
13562 rofi-pass-wayland = callPackage ../tools/security/pass/rofi-pass.nix {
13563 backend = "wayland";
13564 };
13565
13566 rstudio-server = rstudio.override { server = true; };
13567
13568 rsync = callPackage ../applications/networking/sync/rsync (config.rsync or { });
13569 rrsync = callPackage ../applications/networking/sync/rsync/rrsync.nix { };
13570
13571 inherit (callPackages ../applications/radio/rtl-sdr { })
13572 rtl-sdr-librtlsdr
13573 rtl-sdr-osmocom
13574 rtl-sdr-blog
13575 ;
13576
13577 rtl-sdr = rtl-sdr-blog;
13578
13579 rusty-psn-gui = rusty-psn.override { withGui = true; };
13580
13581 sayonara = libsForQt5.callPackage ../applications/audio/sayonara { };
13582
13583 scantailor-advanced = callPackage ../applications/graphics/scantailor/advanced.nix { };
13584
13585 scantailor-universal = callPackage ../applications/graphics/scantailor/universal.nix { };
13586
13587 seafile-client = libsForQt5.callPackage ../applications/networking/seafile-client { };
13588
13589 seq66 = qt5.callPackage ../applications/audio/seq66 { };
13590
13591 sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { };
13592
13593 sommelier = callPackage ../applications/window-managers/sommelier { };
13594
13595 spotify-qt = qt6Packages.callPackage ../applications/audio/spotify-qt { };
13596
13597 squishyball = callPackage ../applications/audio/squishyball {
13598 ncurses = ncurses5;
13599 };
13600
13601 sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { };
13602
13603 stag = callPackage ../applications/misc/stag {
13604 curses = ncurses;
13605 };
13606
13607 sweethome3d = recurseIntoAttrs (
13608 (callPackage ../applications/misc/sweethome3d { })
13609 // (callPackage ../applications/misc/sweethome3d/editors.nix {
13610 sweethome3dApp = sweethome3d.application;
13611 })
13612 );
13613
13614 sxiv = callPackage ../applications/graphics/sxiv {
13615 imlib2 = imlib2Full;
13616 };
13617
13618 nsxiv = callPackage ../by-name/ns/nsxiv/package.nix {
13619 imlib2 = imlib2Full;
13620 };
13621
13622 dropbox = callPackage ../applications/networking/dropbox { };
13623
13624 dropbox-cli = callPackage ../applications/networking/dropbox/cli.nix { };
13625
13626 maestral = with python3Packages; toPythonApplication maestral;
13627
13628 maestral-gui = qt6Packages.callPackage ../applications/networking/maestral-qt { };
13629
13630 myfitnesspal = with python3Packages; toPythonApplication myfitnesspal;
13631
13632 libstrangle = callPackage ../tools/X11/libstrangle {
13633 stdenv = stdenv_32bit;
13634 };
13635
13636 lightdm = libsForQt5.callPackage ../applications/display-managers/lightdm { };
13637
13638 lightdm_qt = lightdm.override { withQt5 = true; };
13639
13640 lightdm-gtk-greeter = callPackage ../applications/display-managers/lightdm/gtk-greeter.nix {
13641 inherit (xfce) xfce4-dev-tools;
13642 };
13643
13644 curaengine_stable = callPackage ../applications/misc/curaengine/stable.nix { };
13645
13646 curaengine = callPackage ../applications/misc/curaengine {
13647 inherit (python3.pkgs) libarcus;
13648 protobuf = protobuf_21;
13649 };
13650
13651 cura = libsForQt5.callPackage ../applications/misc/cura { };
13652
13653 curaPlugins = callPackage ../applications/misc/cura/plugins.nix { };
13654
13655 prusa-slicer = callPackage ../applications/misc/prusa-slicer {
13656 # Build with clang even on Linux, because GCC uses absolutely obscene amounts of memory
13657 # on this particular code base (OOM with 32GB memory and --cores 16 on GCC, succeeds
13658 # with --cores 32 on clang).
13659 stdenv = clangStdenv;
13660 };
13661
13662 super-slicer = callPackage ../applications/misc/prusa-slicer/super-slicer.nix { };
13663
13664 super-slicer-beta = super-slicer.beta;
13665
13666 super-slicer-latest = super-slicer.latest;
13667
13668 skrooge = libsForQt5.callPackage ../applications/office/skrooge { };
13669
13670 soci = callPackage ../development/libraries/soci { };
13671
13672 socialscan = with python3.pkgs; toPythonApplication socialscan;
13673
13674 sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { };
13675
13676 sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { };
13677
13678 squeezelite-pulse = callPackage ../by-name/sq/squeezelite/package.nix {
13679 audioBackend = "pulse";
13680 };
13681
13682 inherit (ocaml-ng.ocamlPackages) stog;
13683
13684 # Stumpwm is broken on SBCL 2.4.11, see
13685 # https://github.com/NixOS/nixpkgs/pull/360320
13686 stumpwm = callPackage ../applications/window-managers/stumpwm {
13687 stdenv = stdenvNoCC;
13688 sbcl = sbcl_2_4_10.withPackages (
13689 ps: with ps; [
13690 alexandria
13691 cl-ppcre
13692 clx
13693 fiasco
13694 ]
13695 );
13696 };
13697
13698 stumpwm-unwrapped = sbcl_2_4_10.pkgs.stumpwm;
13699
13700 sublime3Packages = recurseIntoAttrs (
13701 callPackage ../applications/editors/sublime/3/packages.nix { }
13702 );
13703
13704 sublime3 = sublime3Packages.sublime3;
13705
13706 sublime3-dev = sublime3Packages.sublime3-dev;
13707
13708 inherit (recurseIntoAttrs (callPackage ../applications/editors/sublime/4/packages.nix { }))
13709 sublime4
13710 sublime4-dev
13711 ;
13712
13713 inherit (callPackage ../applications/version-management/sublime-merge { })
13714 sublime-merge
13715 sublime-merge-dev
13716 ;
13717
13718 inherit
13719 (callPackages ../applications/version-management/subversion {
13720 sasl = cyrus_sasl;
13721 })
13722 subversion
13723 ;
13724
13725 subversionClient = subversion.override {
13726 bdbSupport = false;
13727 perlBindings = true;
13728 pythonBindings = true;
13729 };
13730
13731 surge = callPackage ../applications/audio/surge {
13732 git = gitMinimal;
13733 };
13734
13735 supersonic-wayland = supersonic.override {
13736 waylandSupport = true;
13737 };
13738
13739 syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { };
13740
13741 syncplay-nogui = syncplay.override { enableGUI = false; };
13742
13743 inherit
13744 (callPackages ../applications/networking/syncthing {
13745 inherit (darwin) autoSignDarwinBinariesHook;
13746 })
13747 syncthing
13748 syncthing-discovery
13749 syncthing-relay
13750 ;
13751
13752 syncthingtray = kdePackages.callPackage ../applications/misc/syncthingtray {
13753 # renamed in KF5 -> KF6
13754 plasma-framework = kdePackages.libplasma;
13755 };
13756 syncthingtray-minimal = syncthingtray.override {
13757 webviewSupport = false;
13758 jsSupport = false;
13759 kioPluginSupport = false;
13760 plasmoidSupport = false;
13761 systemdSupport = true;
13762 };
13763
13764 synergy = libsForQt5.callPackage ../applications/misc/synergy { };
13765
13766 synergyWithoutGUI = synergy.override { withGUI = false; };
13767
13768 tabbed = callPackage ../applications/window-managers/tabbed {
13769 # if you prefer a custom config, write the config.h in tabbed.config.h
13770 # and enable
13771 # customConfig = builtins.readFile ./tabbed.config.h;
13772 };
13773
13774 taffybar = callPackage ../applications/window-managers/taffybar {
13775 inherit (haskellPackages) ghcWithPackages taffybar;
13776 };
13777
13778 tagainijisho = libsForQt5.callPackage ../applications/office/tagainijisho { };
13779
13780 tamgamp.lv2 = callPackage ../applications/audio/tamgamp.lv2 { };
13781
13782 telegram-desktop =
13783 kdePackages.callPackage ../applications/networking/instant-messengers/telegram/telegram-desktop
13784 {
13785 stdenv = if stdenv.hostPlatform.isDarwin then llvmPackages_19.stdenv else stdenv;
13786 };
13787
13788 termdown = python3Packages.callPackage ../applications/misc/termdown { };
13789
13790 terminaltexteffects = with python3Packages; toPythonApplication terminaltexteffects;
13791
13792 inherit
13793 (callPackage ../applications/graphics/tesseract {
13794 })
13795 tesseract3
13796 tesseract4
13797 tesseract5
13798 ;
13799 tesseract = tesseract5;
13800
13801 thunderbirdPackages = recurseIntoAttrs (
13802 callPackage ../applications/networking/mailreaders/thunderbird/packages.nix {
13803 callPackage = newScope {
13804 inherit (rustPackages) cargo rustc;
13805 };
13806 }
13807 );
13808
13809 thunderbird-unwrapped = thunderbirdPackages.thunderbird;
13810 thunderbird = wrapThunderbird thunderbird-unwrapped { };
13811
13812 thunderbird-latest-unwrapped = thunderbirdPackages.thunderbird-latest;
13813 thunderbird-latest = wrapThunderbird thunderbird-latest-unwrapped { };
13814
13815 thunderbird-esr-unwrapped = thunderbirdPackages.thunderbird-esr;
13816 thunderbird-esr = wrapThunderbird thunderbird-esr-unwrapped { };
13817
13818 thunderbird-128-unwrapped = thunderbirdPackages.thunderbird-128;
13819 thunderbird-128 = wrapThunderbird thunderbirdPackages.thunderbird-128 { };
13820
13821 thunderbird-bin = thunderbird-latest-bin;
13822 thunderbird-latest-bin = wrapThunderbird thunderbird-latest-bin-unwrapped {
13823 pname = "thunderbird-bin";
13824 };
13825 thunderbird-latest-bin-unwrapped =
13826 callPackage ../applications/networking/mailreaders/thunderbird-bin
13827 {
13828 generated = import ../applications/networking/mailreaders/thunderbird-bin/release_sources.nix;
13829 };
13830 thunderbird-esr-bin = wrapThunderbird thunderbird-esr-bin-unwrapped {
13831 pname = "thunderbird-esr-bin";
13832 };
13833 thunderbird-esr-bin-unwrapped = callPackage ../applications/networking/mailreaders/thunderbird-bin {
13834 generated = import ../applications/networking/mailreaders/thunderbird-bin/release_esr_sources.nix;
13835 versionSuffix = "esr";
13836 };
13837
13838 timbreid = callPackage ../applications/audio/pd-plugins/timbreid {
13839 fftw = fftwSinglePrec;
13840 };
13841
13842 inherit
13843 ({
13844 timeshift-unwrapped = callPackage ../applications/backup/timeshift/unwrapped.nix { };
13845 timeshift = callPackage ../applications/backup/timeshift { grubPackage = grub2; };
13846 timeshift-minimal = callPackage ../applications/backup/timeshift/minimal.nix { };
13847 })
13848 timeshift-unwrapped
13849 timeshift
13850 timeshift-minimal
13851 ;
13852
13853 tipp10 = qt6.callPackage ../applications/misc/tipp10 { };
13854
13855 tlp = callPackage ../tools/misc/tlp {
13856 inherit (linuxPackages) x86_energy_perf_policy;
13857 };
13858
13859 tony = libsForQt5.callPackage ../applications/audio/tony { };
13860
13861 trustedqsl = tqsl; # Alias added 2019-02-10
13862
13863 libtransmission_3 = transmission_3.override {
13864 installLib = true;
13865 enableDaemon = false;
13866 enableCli = false;
13867 };
13868 transmission_3-gtk = transmission_3.override { enableGTK3 = true; };
13869 transmission_3-qt = transmission_3.override { enableQt = true; };
13870 transmission_3_noSystemd = transmission_3.override { enableSystemd = false; };
13871
13872 transmission_4 = callPackage ../applications/networking/p2p/transmission/4.nix {
13873 fmt = fmt_9;
13874 libutp = libutp_3_4;
13875 };
13876 libtransmission_4 = transmission_4.override {
13877 installLib = true;
13878 enableDaemon = false;
13879 enableCli = false;
13880 };
13881 transmission_4-gtk = transmission_4.override { enableGTK3 = true; };
13882 transmission_4-qt5 = transmission_4.override { enableQt5 = true; };
13883 transmission_4-qt6 = transmission_4.override { enableQt6 = true; };
13884 transmission_4-qt = transmission_4-qt5;
13885
13886 traverso = libsForQt5.callPackage ../applications/audio/traverso { };
13887
13888 tinywl = callPackage ../applications/window-managers/tinywl {
13889 wlroots = wlroots_0_19;
13890 };
13891
13892 trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita { };
13893
13894 tuxclocker = libsForQt5.callPackage ../applications/misc/tuxclocker {
13895 tuxclocker-plugins = tuxclocker-plugins-with-unfree;
13896 };
13897
13898 tuxclocker-without-unfree = libsForQt5.callPackage ../applications/misc/tuxclocker { };
13899
13900 twmn = libsForQt5.callPackage ../applications/misc/twmn { };
13901
13902 tests-stdenv-gcc-stageCompare = callPackage ../test/stdenv/gcc-stageCompare.nix { };
13903
13904 twinkle = qt5.callPackage ../applications/networking/instant-messengers/twinkle { };
13905
13906 buildTypstPackage = callPackage ../build-support/build-typst-package.nix { };
13907
13908 typstPackages = typst.packages;
13909
13910 ueberzug = with python3Packages; toPythonApplication ueberzug;
13911
13912 uefitoolPackages = recurseIntoAttrs (callPackage ../tools/system/uefitool/variants.nix { });
13913 uefitool = uefitoolPackages.new-engine;
13914
13915 ungoogled-chromium = callPackage ../applications/networking/browsers/chromium (
13916 (config.chromium or { })
13917 // {
13918 ungoogled = true;
13919 }
13920 );
13921
13922 unigine-tropics = pkgsi686Linux.callPackage ../applications/graphics/unigine-tropics { };
13923
13924 unigine-sanctuary = pkgsi686Linux.callPackage ../applications/graphics/unigine-sanctuary { };
13925
13926 unigine-superposition = libsForQt5.callPackage ../applications/graphics/unigine-superposition { };
13927
13928 uuagc = haskell.lib.compose.justStaticExecutables haskellPackages.uuagc;
13929
13930 valentina = libsForQt5.callPackage ../applications/misc/valentina { };
13931
13932 vdirsyncer = with python3Packages; toPythonApplication vdirsyncer;
13933
13934 veusz = callPackage ../applications/graphics/veusz { };
13935
13936 vim = vimUtils.makeCustomizable (
13937 callPackage ../applications/editors/vim {
13938 }
13939 );
13940
13941 macvim =
13942 let
13943 macvimUtils = callPackage ../applications/editors/vim/macvim-configurable.nix { };
13944 in
13945 macvimUtils.makeCustomizable (
13946 callPackage ../applications/editors/vim/macvim.nix {
13947 stdenv = clangStdenv;
13948 }
13949 );
13950
13951 vim-full = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/full.nix { });
13952
13953 vim-darwin =
13954 (vim-full.override {
13955 config = {
13956 vim = {
13957 gui = "none";
13958 darwin = true;
13959 };
13960 };
13961 }).overrideAttrs
13962 {
13963 pname = "vim-darwin";
13964 meta = {
13965 platforms = lib.platforms.darwin;
13966 };
13967 };
13968
13969 vimacs = callPackage ../applications/editors/vim/vimacs.nix { };
13970
13971 qpdfview = libsForQt5.callPackage ../applications/office/qpdfview { };
13972
13973 # this is a lower-level alternative to wrapNeovim conceived to handle
13974 # more usecases when wrapping neovim. The interface is being actively worked on
13975 # so expect breakage. use wrapNeovim instead if you want a stable alternative
13976 wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
13977 wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
13978 neovim-unwrapped = callPackage ../by-name/ne/neovim-unwrapped/package.nix {
13979 lua = if lib.meta.availableOn stdenv.hostPlatform luajit then luajit else lua5_1;
13980 };
13981
13982 neovimUtils = callPackage ../applications/editors/neovim/utils.nix {
13983 lua = lua5_1;
13984 };
13985 neovim = wrapNeovim neovim-unwrapped { };
13986
13987 gnvim-unwrapped = callPackage ../applications/editors/neovim/gnvim { };
13988
13989 gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { };
13990
13991 virt-top = callPackage ../applications/virtualization/virt-top {
13992 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
13993 };
13994
13995 virt-manager = callPackage ../applications/virtualization/virt-manager { };
13996
13997 virt-manager-qt = libsForQt5.callPackage ../applications/virtualization/virt-manager/qt.nix {
13998 qtermwidget = lxqt.qtermwidget_1_4;
13999 };
14000
14001 virtualbox = libsForQt5.callPackage ../applications/virtualization/virtualbox {
14002 stdenv = stdenv_32bit;
14003
14004 # VirtualBox uses wsimport, which was removed after JDK 8.
14005 jdk = jdk8;
14006
14007 # Opt out of building the guest BIOS sources with the problematic Open Watcom
14008 # toolchain. People who need to build the BIOS from sources (for example to
14009 # apply patches) can override this.
14010 open-watcom-bin = null;
14011 };
14012
14013 virtualboxKvm = lowPrio (
14014 virtualbox.override {
14015 enableKvm = true;
14016 }
14017 );
14018
14019 virtualboxHardened = lowPrio (
14020 virtualbox.override {
14021 enableHardening = true;
14022 }
14023 );
14024
14025 virtualboxHeadless = lowPrio (
14026 virtualbox.override {
14027 enableHardening = true;
14028 headless = true;
14029 }
14030 );
14031
14032 virtualboxExtpack = callPackage ../applications/virtualization/virtualbox/extpack.nix { };
14033
14034 virtualboxWithExtpack = lowPrio (
14035 virtualbox.override {
14036 extensionPack = virtualboxExtpack;
14037 }
14038 );
14039
14040 virtualglLib = callPackage ../tools/X11/virtualgl/lib.nix {
14041 fltk = fltk13;
14042 };
14043
14044 virtualgl = callPackage ../tools/X11/virtualgl {
14045 virtualglLib_i686 =
14046 if stdenv.hostPlatform.system == "x86_64-linux" then pkgsi686Linux.virtualglLib else null;
14047 };
14048
14049 vlc-bin-universal = vlc-bin.override { variant = "universal"; };
14050
14051 libvlc = vlc.override {
14052 withQt5 = false;
14053 onlyLibVLC = true;
14054 };
14055
14056 vorbis-tools = callPackage ../applications/audio/vorbis-tools { };
14057
14058 vscode = callPackage ../applications/editors/vscode/vscode.nix { };
14059 vscode-fhs = vscode.fhs;
14060 vscode-fhsWithPackages = vscode.fhsWithPackages;
14061
14062 vscode-with-extensions = callPackage ../applications/editors/vscode/with-extensions.nix { };
14063
14064 vscode-utils = callPackage ../applications/editors/vscode/extensions/vscode-utils.nix { };
14065
14066 vscode-extensions = recurseIntoAttrs (callPackage ../applications/editors/vscode/extensions { });
14067
14068 vscode-extension-update-script =
14069 callPackage ../by-name/vs/vscode-extension-update/vscode-extension-update-script.nix
14070 { };
14071
14072 vscodium = callPackage ../applications/editors/vscode/vscodium.nix { };
14073 vscodium-fhs = vscodium.fhs;
14074 vscodium-fhsWithPackages = vscodium.fhsWithPackages;
14075
14076 code-cursor = callPackage ../by-name/co/code-cursor/package.nix {
14077 vscode-generic = ../applications/editors/vscode/generic.nix;
14078 };
14079 code-cursor-fhs = code-cursor.fhs;
14080 code-cursor-fhsWithPackages = code-cursor.fhsWithPackages;
14081
14082 windsurf = callPackage ../by-name/wi/windsurf/package.nix {
14083 vscode-generic = ../applications/editors/vscode/generic.nix;
14084 };
14085
14086 code-server = callPackage ../servers/code-server {
14087 nodejs = nodejs_20;
14088 };
14089
14090 whispers = with python3Packages; toPythonApplication whispers;
14091
14092 # Should always be the version with the most features
14093 w3m-full = w3m;
14094
14095 # Version without X11
14096 w3m-nox = w3m.override {
14097 x11Support = false;
14098 imlib2 = imlib2-nox;
14099 };
14100
14101 # Version without X11 or graphics
14102 w3m-nographics = w3m.override {
14103 x11Support = false;
14104 graphicsSupport = false;
14105 };
14106
14107 # Version for batch text processing, not a good browser
14108 w3m-batch = w3m.override {
14109 graphicsSupport = false;
14110 mouseSupport = false;
14111 x11Support = false;
14112 imlib2 = imlib2-nox;
14113 };
14114
14115 wayfire = callPackage ../applications/window-managers/wayfire/default.nix {
14116 wlroots = wlroots_0_17;
14117 };
14118 wf-config = callPackage ../applications/window-managers/wayfire/wf-config.nix { };
14119
14120 wayfirePlugins = recurseIntoAttrs (
14121 callPackage ../applications/window-managers/wayfire/plugins.nix { }
14122 );
14123 wayfire-with-plugins = callPackage ../applications/window-managers/wayfire/wrapper.nix {
14124 plugins = with wayfirePlugins; [
14125 wcm
14126 wf-shell
14127 ];
14128 };
14129
14130 webcamoid = qt6Packages.callPackage ../applications/video/webcamoid { };
14131
14132 webcord = callPackage ../by-name/we/webcord/package.nix { electron = electron_36; };
14133
14134 webcord-vencord = callPackage ../by-name/we/webcord-vencord/package.nix { electron = electron_36; };
14135
14136 webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {
14137 stdenv = if stdenv.cc.isClang then gccStdenv else stdenv;
14138 };
14139
14140 webssh = with python3Packages; toPythonApplication webssh;
14141
14142 wrapWeechat = callPackage ../applications/networking/irc/weechat/wrapper.nix { };
14143
14144 weechat-unwrapped = callPackage ../applications/networking/irc/weechat {
14145 inherit (darwin) libresolv;
14146 guile = guile_3_0;
14147 };
14148
14149 weechat = wrapWeechat weechat-unwrapped { };
14150
14151 weechatScripts = recurseIntoAttrs (callPackage ../applications/networking/irc/weechat/scripts { });
14152
14153 westonLite = weston.override {
14154 demoSupport = false;
14155 jpegSupport = false;
14156 lcmsSupport = false;
14157 pangoSupport = false;
14158 pipewireSupport = false;
14159 rdpSupport = false;
14160 remotingSupport = false;
14161 vaapiSupport = false;
14162 vncSupport = false;
14163 webpSupport = false;
14164 xwaylandSupport = false;
14165 };
14166
14167 whalebird = callPackage ../applications/misc/whalebird {
14168 electron = electron_36;
14169 };
14170
14171 inherit (windowmaker) dockapps;
14172
14173 wofi-pass = callPackage ../../pkgs/tools/security/pass/wofi-pass.nix { };
14174
14175 worldengine-cli = python3Packages.worldengine;
14176
14177 wrapFirefox = callPackage ../applications/networking/browsers/firefox/wrapper.nix { };
14178
14179 wrapThunderbird = callPackage ../applications/networking/mailreaders/thunderbird/wrapper.nix { };
14180
14181 wsjtx = qt5.callPackage ../applications/radio/wsjtx { };
14182
14183 x11basic = callPackage ../development/compilers/x11basic {
14184 autoconf = buildPackages.autoconf269;
14185 };
14186
14187 x2goclient = callPackage ../applications/networking/remote/x2goclient { };
14188
14189 x2gokdriveclient = libsForQt5.callPackage ../applications/networking/remote/x2gokdriveclient { };
14190
14191 x32edit = callPackage ../applications/audio/midas/x32edit.nix { };
14192
14193 xbindkeys-config = callPackage ../tools/X11/xbindkeys-config {
14194 gtk = gtk2;
14195 };
14196
14197 kodiPackages = recurseIntoAttrs (kodi.packages);
14198
14199 kodi = callPackage ../applications/video/kodi {
14200 ffmpeg = ffmpeg_6;
14201 jre_headless = buildPackages.jdk11_headless;
14202 };
14203
14204 kodi-wayland = callPackage ../applications/video/kodi {
14205 ffmpeg = ffmpeg_6;
14206 jre_headless = buildPackages.jdk11_headless;
14207 waylandSupport = true;
14208 };
14209
14210 kodi-gbm = callPackage ../applications/video/kodi {
14211 ffmpeg = ffmpeg_6;
14212 jre_headless = buildPackages.jdk11_headless;
14213 gbmSupport = true;
14214 };
14215
14216 xca = qt6Packages.callPackage ../applications/misc/xca { };
14217
14218 inherit (xorg) xcompmgr;
14219
14220 xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { };
14221
14222 xdg-desktop-portal-hyprland =
14223 callPackage ../applications/window-managers/hyprwm/xdg-desktop-portal-hyprland
14224 {
14225 stdenv = gcc15Stdenv;
14226 inherit (qt6)
14227 qtbase
14228 qttools
14229 qtwayland
14230 wrapQtAppsHook
14231 ;
14232 };
14233
14234 gxneur = callPackage ../applications/misc/gxneur {
14235 inherit (gnome2) libglade GConf;
14236 };
14237
14238 xournalpp = callPackage ../applications/graphics/xournalpp {
14239 lua = lua5_3;
14240 };
14241
14242 xpdf = libsForQt5.callPackage ../applications/misc/xpdf { };
14243
14244 xmobar = haskellPackages.xmobar.bin;
14245
14246 xmonad-with-packages = callPackage ../applications/window-managers/xmonad/wrapper.nix {
14247 inherit (haskellPackages) ghcWithPackages;
14248 packages = _: [ haskellPackages.xmonad-contrib ];
14249 };
14250
14251 xmonadctl = callPackage ../applications/window-managers/xmonad/xmonadctl.nix {
14252 inherit (haskellPackages) ghcWithPackages;
14253 };
14254
14255 xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
14256 inherit (xfce) libxfce4util xfce4-panel;
14257 };
14258
14259 xmonad_log_applet_mate = xmonad_log_applet.override {
14260 desktopSupport = "mate";
14261 };
14262
14263 xmonad_log_applet_xfce = xmonad_log_applet.override {
14264 desktopSupport = "xfce4";
14265 };
14266
14267 libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { };
14268
14269 xygrib = libsForQt5.callPackage ../applications/misc/xygrib { };
14270
14271 ydiff = with python3.pkgs; toPythonApplication ydiff;
14272
14273 yokadi = python3Packages.callPackage ../applications/misc/yokadi { };
14274
14275 your-editor = callPackage ../applications/editors/your-editor { stdenv = gccStdenv; };
14276
14277 youtube-dl = with python3Packages; toPythonApplication youtube-dl;
14278
14279 youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light;
14280
14281 youtube-music = callPackage ../applications/audio/youtube-music {
14282 pnpm = pnpm_10;
14283 };
14284
14285 yt-dlp-light = yt-dlp.override {
14286 atomicparsleySupport = false;
14287 ffmpegSupport = false;
14288 rtmpSupport = false;
14289 };
14290
14291 youtube-viewer = perlPackages.WWWYoutubeViewer;
14292
14293 zathuraPkgs = callPackage ../applications/misc/zathura { };
14294 zathura = zathuraPkgs.zathuraWrapper;
14295
14296 zeroc-ice-cpp11 = zeroc-ice.override { cpp11 = true; };
14297
14298 zexy = callPackage ../applications/audio/pd-plugins/zexy {
14299 autoconf = buildPackages.autoconf269;
14300 };
14301
14302 zed-editor-fhs = zed-editor.fhs;
14303
14304 zgv = callPackage ../applications/graphics/zgv {
14305 # Enable the below line for terminal display. Note
14306 # that it requires sixel graphics compatible terminals like mlterm
14307 # or xterm -ti 340
14308 SDL = SDL_sixel;
14309 SDL_image = SDL_image.override { SDL = SDL_sixel; };
14310 };
14311
14312 zotero_7 = pkgs.zotero;
14313
14314 zynaddsubfx = callPackage ../applications/audio/zynaddsubfx {
14315 guiModule = "zest";
14316 fftw = fftwSinglePrec;
14317 };
14318
14319 zynaddsubfx-fltk = zynaddsubfx.override {
14320 guiModule = "fltk";
14321 };
14322
14323 zynaddsubfx-ntk = zynaddsubfx.override {
14324 guiModule = "ntk";
14325 };
14326
14327 ### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS
14328
14329 alfis-nogui = alfis.override {
14330 withGui = false;
14331 };
14332
14333 bitcoin = libsForQt5.callPackage ../applications/blockchains/bitcoin {
14334 withGui = true;
14335 inherit (darwin) autoSignDarwinBinariesHook;
14336 };
14337
14338 bitcoind = callPackage ../applications/blockchains/bitcoin {
14339 withGui = false;
14340 inherit (darwin) autoSignDarwinBinariesHook;
14341 };
14342
14343 bitcoin-knots = libsForQt5.callPackage ../applications/blockchains/bitcoin-knots {
14344 withGui = true;
14345 inherit (darwin) autoSignDarwinBinariesHook;
14346 };
14347
14348 bitcoind-knots = callPackage ../applications/blockchains/bitcoin-knots {
14349 withGui = false;
14350 inherit (darwin) autoSignDarwinBinariesHook;
14351 };
14352
14353 cryptop = python3.pkgs.callPackage ../applications/blockchains/cryptop { };
14354
14355 elements = libsForQt5.callPackage ../applications/blockchains/elements {
14356 withGui = true;
14357 inherit (darwin) autoSignDarwinBinariesHook;
14358 };
14359 elementsd = callPackage ../applications/blockchains/elements {
14360 withGui = false;
14361 inherit (darwin) autoSignDarwinBinariesHook;
14362 };
14363
14364 fulcrum = libsForQt5.callPackage ../applications/blockchains/fulcrum { };
14365
14366 gridcoin-research = libsForQt5.callPackage ../applications/blockchains/gridcoin-research {
14367 boost = boost179;
14368 };
14369
14370 groestlcoin = libsForQt5.callPackage ../applications/blockchains/groestlcoin {
14371 withGui = true;
14372 inherit (darwin) autoSignDarwinBinariesHook;
14373 };
14374
14375 groestlcoind = callPackage ../applications/blockchains/groestlcoin {
14376 inherit (darwin) autoSignDarwinBinariesHook;
14377 };
14378
14379 ledger-agent = with python3Packages; toPythonApplication ledger-agent;
14380
14381 napari = with python312Packages; toPythonApplication napari;
14382
14383 nano-wallet = libsForQt5.callPackage ../applications/blockchains/nano-wallet { };
14384
14385 pycoin = with python3Packages; toPythonApplication pycoin;
14386
14387 inherit (callPackages ../applications/blockchains/teos { })
14388 teos
14389 teos-watchtower-plugin
14390 ;
14391
14392 vertcoin = libsForQt5.callPackage ../applications/blockchains/vertcoin {
14393 withGui = true;
14394 };
14395 vertcoind = callPackage ../applications/blockchains/vertcoin {
14396 withGui = false;
14397 };
14398
14399 zcash = callPackage ../applications/blockchains/zcash {
14400 stdenv = llvmPackages.stdenv;
14401 };
14402
14403 samplv1 = qt6.callPackage ../applications/audio/samplv1 { };
14404
14405 beancount = with python3.pkgs; toPythonApplication beancount;
14406
14407 beancount_2 = with python3.pkgs; toPythonApplication beancount_2;
14408
14409 beancount-black = with python3.pkgs; toPythonApplication beancount-black;
14410
14411 beanhub-cli = with python3.pkgs; toPythonApplication beanhub-cli;
14412
14413 bean-add = callPackage ../applications/office/beancount/bean-add.nix { };
14414
14415 beanquery = with python3.pkgs; toPythonApplication beanquery;
14416
14417 bench =
14418 # TODO: Erroneous references to GHC on aarch64-darwin: https://github.com/NixOS/nixpkgs/issues/318013
14419 (
14420 if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then
14421 lib.id
14422 else
14423 haskell.lib.compose.justStaticExecutables
14424 )
14425 haskellPackages.bench;
14426
14427 cri-o = callPackage ../applications/virtualization/cri-o/wrapper.nix { };
14428 cri-o-unwrapped = callPackage ../applications/virtualization/cri-o { };
14429
14430 drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { };
14431
14432 phonemizer = with python3Packages; toPythonApplication phonemizer;
14433
14434 ### GAMES
14435
14436 _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; };
14437
14438 inherit (callPackages ../games/fteqw { })
14439 fteqw
14440 fteqw-dedicated
14441 fteqcc
14442 ;
14443
14444 pmars-x11 = pmars.override { enableXwinGraphics = true; };
14445
14446 vanillatd = callPackage ../by-name/va/vanillatd/package.nix { appName = "vanillatd"; };
14447
14448 vanillara = callPackage ../by-name/va/vanillatd/package.nix { appName = "vanillara"; };
14449
14450 ### GAMES/DOOM-PORTS
14451
14452 doomseeker = qt5.callPackage ../games/doom-ports/doomseeker { };
14453
14454 enyo-launcher = libsForQt5.callPackage ../games/doom-ports/enyo-launcher { };
14455
14456 slade = callPackage ../games/doom-ports/slade {
14457 wxGTK = wxGTK32.override {
14458 withWebKit = true;
14459 };
14460 };
14461
14462 sladeUnstable = callPackage ../games/doom-ports/slade/git.nix {
14463 wxGTK = wxGTK32.override {
14464 withWebKit = true;
14465 };
14466 };
14467
14468 zandronum = callPackage ../games/doom-ports/zandronum { };
14469
14470 zandronum-server = zandronum.override {
14471 serverOnly = true;
14472 };
14473
14474 zandronum-alpha = callPackage ../games/doom-ports/zandronum/alpha { };
14475
14476 zandronum-alpha-server = zandronum-alpha.override {
14477 serverOnly = true;
14478 };
14479
14480 fmodex = callPackage ../games/doom-ports/zandronum/fmod.nix { };
14481
14482 pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { };
14483
14484 qgo = libsForQt5.callPackage ../games/qgo { };
14485
14486 amoeba = callPackage ../games/amoeba { };
14487 amoeba-data = callPackage ../games/amoeba/data.nix { };
14488
14489 anki = callPackage ../games/anki { };
14490 anki-utils = callPackage ../games/anki/addons/anki-utils.nix { };
14491 ankiAddons = recurseIntoAttrs (callPackage ../games/anki/addons { });
14492 anki-bin = callPackage ../games/anki/bin.nix { };
14493 anki-sync-server = callPackage ../games/anki/sync-server.nix { };
14494
14495 armagetronad = callPackage ../games/armagetronad { };
14496
14497 armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; };
14498
14499 art = callPackage ../by-name/ar/art/package.nix {
14500 fftw = fftwSinglePrec;
14501 };
14502
14503 arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { };
14504
14505 asc = callPackage ../games/asc {
14506 lua = lua5_1;
14507 physfs = physfs_2;
14508 };
14509
14510 beancount-ing-diba = callPackage ../applications/office/beancount/beancount-ing-diba.nix {
14511 inherit (python3Packages) beancount beangulp;
14512 };
14513
14514 beancount-share = callPackage ../applications/office/beancount/beancount_share.nix {
14515 inherit (python3Packages) beancount beancount-plugin-utils;
14516 };
14517
14518 cataclysmDDA = callPackage ../games/cataclysm-dda { };
14519
14520 cataclysm-dda = cataclysmDDA.stable.tiles;
14521
14522 cataclysm-dda-git = cataclysmDDA.git.tiles;
14523
14524 chiaki = libsForQt5.callPackage ../games/chiaki { };
14525
14526 chiaki-ng = kdePackages.callPackage ../games/chiaki-ng { };
14527
14528 cockatrice = libsForQt5.callPackage ../games/cockatrice {
14529 protobuf = protobuf_21;
14530 };
14531
14532 construoBase = lowPrio (
14533 callPackage ../games/construo {
14534 libGL = null;
14535 libGLU = null;
14536 libglut = null;
14537 }
14538 );
14539
14540 construo = construoBase.override {
14541 inherit libGL libGLU libglut;
14542 };
14543
14544 crawlTiles = callPackage ../games/crawl {
14545 tileMode = true;
14546 };
14547
14548 crawl = callPackage ../games/crawl { };
14549
14550 curseofwar = callPackage ../games/curseofwar { SDL = null; };
14551 curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; };
14552
14553 cutechess = qt5.callPackage ../games/cutechess { };
14554
14555 cutemaze = qt6Packages.callPackage ../games/cutemaze { };
14556
14557 ddnet-server = ddnet.override { buildClient = false; };
14558
14559 duckmarines = callPackage ../games/duckmarines { love = love_0_10; };
14560
14561 dwarf-fortress-packages = recurseIntoAttrs (callPackage ../games/dwarf-fortress { });
14562
14563 inherit (dwarf-fortress-packages) dwarf-fortress dwarf-fortress-full dwarf-therapist;
14564
14565 dfhack = dwarf-fortress-packages.dwarf-fortress-full;
14566
14567 dxx-rebirth = callPackage ../games/dxx-rebirth { };
14568
14569 inherit (callPackages ../games/dxx-rebirth/assets.nix { })
14570 descent1-assets
14571 descent2-assets
14572 ;
14573
14574 inherit (callPackages ../games/dxx-rebirth/full.nix { })
14575 d1x-rebirth-full
14576 d2x-rebirth-full
14577 ;
14578
14579 fallout-ce = callPackage ../games/fallout-ce/fallout-ce.nix { };
14580 fallout2-ce = callPackage ../games/fallout-ce/fallout2-ce.nix { };
14581
14582 fltrator = callPackage ../games/fltrator {
14583 fltk = fltk-minimal;
14584 };
14585
14586 factorio = callPackage ../by-name/fa/factorio/package.nix { releaseType = "alpha"; };
14587
14588 factorio-experimental = factorio.override {
14589 releaseType = "alpha";
14590 experimental = true;
14591 };
14592
14593 factorio-headless = factorio.override { releaseType = "headless"; };
14594
14595 factorio-headless-experimental = factorio.override {
14596 releaseType = "headless";
14597 experimental = true;
14598 };
14599
14600 factorio-demo = factorio.override { releaseType = "demo"; };
14601
14602 factorio-demo-experimental = factorio.override {
14603 releaseType = "demo";
14604 experimental = true;
14605 };
14606
14607 factorio-space-age = factorio.override { releaseType = "expansion"; };
14608
14609 factorio-space-age-experimental = factorio.override {
14610 releaseType = "expansion";
14611 experimental = true;
14612 };
14613
14614 factorio-utils = callPackage ../by-name/fa/factorio/utils.nix { };
14615
14616 flightgear = libsForQt5.callPackage ../games/flightgear { };
14617
14618 freeciv = callPackage ../games/freeciv {
14619 sdl2Client = false;
14620 gtkClient = true;
14621 qtClient = false;
14622 };
14623
14624 freeciv_sdl2 = freeciv.override {
14625 sdl2Client = true;
14626 gtkClient = false;
14627 qtClient = false;
14628 };
14629
14630 freeciv_qt = freeciv.override {
14631 sdl2Client = false;
14632 gtkClient = false;
14633 qtClient = true;
14634 };
14635
14636 freeciv_gtk = freeciv;
14637
14638 garden-of-coloured-lights = callPackage ../games/garden-of-coloured-lights { allegro = allegro4; };
14639
14640 gl-gsync-demo = callPackage ../games/gl-gsync-demo {
14641 libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
14642 };
14643
14644 gscrabble = python3Packages.callPackage ../games/gscrabble { };
14645
14646 qtads = qt5.callPackage ../games/qtads { };
14647
14648 ibmcloud-cli = callPackage ../tools/admin/ibmcloud-cli { stdenv = stdenvNoCC; };
14649
14650 iortcw = callPackage ../games/iortcw { };
14651 # used as base package for iortcw forks
14652 iortcw_sp = callPackage ../games/iortcw/sp.nix { };
14653
14654 katagoWithCuda = katago.override {
14655 backend = "cuda";
14656 };
14657
14658 katagoCPU = katago.override {
14659 backend = "eigen";
14660 };
14661
14662 katagoTensorRT = katago.override {
14663 backend = "tensorrt";
14664 };
14665
14666 koboredux = callPackage ../games/koboredux { };
14667
14668 koboredux-free = callPackage ../games/koboredux {
14669 useProprietaryAssets = false;
14670 };
14671
14672 ldmud-full = callPackage ../by-name/ld/ldmud/package.nix {
14673 ipv6Support = true;
14674 mccpSupport = true;
14675 mysqlSupport = true;
14676 postgresSupport = true;
14677 sqliteSupport = true;
14678 tlsSupport = true;
14679 pythonSupport = true;
14680 };
14681
14682 leela-zero = libsForQt5.callPackage ../games/leela-zero { };
14683
14684 legendary-gl = python3Packages.callPackage ../games/legendary-gl { };
14685
14686 lincity = callPackage ../games/lincity { };
14687
14688 lincity_ng = callPackage ../games/lincity/ng.nix {
14689 # https://github.com/lincity-ng/lincity-ng/issues/25
14690 physfs = physfs_2;
14691 };
14692
14693 liquidwar = callPackage ../games/liquidwar {
14694 guile = guile_2_0;
14695 };
14696
14697 liquidwar5 = callPackage ../games/liquidwar/5.nix { };
14698
14699 maptool = callPackage ../games/maptool {
14700 # MapTool is fussy about which JRE it uses; OpenJDK will leave it hanging
14701 # at launch in a class initialization deadlock. MapTool ships Temurin with
14702 # their pre-built releases so we might as well use it too.
14703 jre = temurin-bin-21;
14704 openjfx = openjfx21;
14705 };
14706
14707 mindustry-wayland = callPackage ../by-name/mi/mindustry/package.nix {
14708 enableWayland = true;
14709 };
14710
14711 mindustry-server = callPackage ../by-name/mi/mindustry/package.nix {
14712 enableClient = false;
14713 enableServer = true;
14714 };
14715
14716 minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; };
14717 minecraft-server = minecraftServers.vanilla; # backwards compatibility
14718
14719 luanti-client = luanti.override { buildServer = false; };
14720 luanti-server = luanti.override { buildClient = false; };
14721
14722 mrrescue = callPackage ../games/mrrescue { love = love_0_10; };
14723
14724 mudlet = libsForQt5.callPackage ../games/mudlet {
14725 lua = lua5_1;
14726 };
14727
14728 blightmud = callPackage ../games/blightmud { };
14729
14730 blightmud-tts = callPackage ../games/blightmud { withTTS = true; };
14731
14732 nethack = callPackage ../games/nethack { };
14733
14734 nethack-qt = callPackage ../games/nethack {
14735 qtMode = true;
14736 stdenv = gccStdenv;
14737 };
14738
14739 nethack-x11 = callPackage ../games/nethack { x11Mode = true; };
14740
14741 npush = callPackage ../games/npush { };
14742 run-npush = callPackage ../games/npush/run.nix { };
14743
14744 oilrush = callPackage ../games/oilrush { };
14745
14746 openloco = pkgsi686Linux.callPackage ../games/openloco { };
14747
14748 openmw = libsForQt5.callPackage ../games/openmw { };
14749
14750 openmw-tes3mp = libsForQt5.callPackage ../games/openmw/tes3mp.nix { };
14751
14752 openraPackages_2019 = import ../games/openra_2019 {
14753 inherit lib;
14754 pkgs = pkgs.__splicedPackages;
14755 };
14756
14757 openra_2019 = openraPackages_2019.engines.release;
14758
14759 openraPackages = recurseIntoAttrs (callPackage ../games/openra { });
14760
14761 openra = openraPackages.engines.release;
14762
14763 openttd = callPackage ../games/openttd {
14764 zlib = zlib.override {
14765 static = true;
14766 };
14767 };
14768 openttd-jgrpp = callPackage ../games/openttd/jgrpp.nix {
14769 zlib = zlib.override {
14770 static = true;
14771 };
14772 };
14773 openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix { };
14774 openttd-nml = callPackage ../games/openttd/nml.nix { };
14775
14776 openxcom = callPackage ../games/openxcom { SDL = SDL_compat; };
14777
14778 openxray = callPackage ../games/openxray {
14779 # Builds with Clang, but hits an assertion failure unless GCC is used
14780 # https://github.com/OpenXRay/xray-16/issues/1224
14781 stdenv = gccStdenv;
14782 };
14783
14784 orthorobot = callPackage ../games/orthorobot { love = love_0_10; };
14785
14786 papermcServers = callPackages ../games/papermc { };
14787
14788 papermc = papermcServers.papermc;
14789
14790 path-of-building = qt6Packages.callPackage ../games/path-of-building { };
14791
14792 pentobi = libsForQt5.callPackage ../games/pentobi { };
14793
14794 pokerth = libsForQt5.callPackage ../games/pokerth {
14795 protobuf = protobuf_21;
14796 };
14797
14798 pokerth-server = libsForQt5.callPackage ../games/pokerth {
14799 target = "server";
14800 protobuf = protobuf_21;
14801 };
14802
14803 inherit (import ../games/quake3 pkgs.callPackage)
14804 quake3wrapper
14805 quake3arenadata
14806 quake3demodata
14807 quake3pointrelease
14808 quake3arena
14809 quake3arena-hires
14810 quake3demo
14811 quake3demo-hires
14812 quake3hires
14813 ;
14814
14815 quakespasm = callPackage ../games/quakespasm { };
14816 vkquake = callPackage ../games/quakespasm/vulkan.nix { };
14817
14818 rogue = callPackage ../games/rogue {
14819 ncurses = ncurses5;
14820 };
14821
14822 rott-shareware = callPackage ../by-name/ro/rott/package.nix {
14823 buildShareware = true;
14824 };
14825
14826 scummvm = callPackage ../games/scummvm { };
14827
14828 inherit (callPackage ../games/scummvm/games.nix { })
14829 beneath-a-steel-sky
14830 broken-sword-25
14831 drascula-the-vampire-strikes-back
14832 dreamweb
14833 flight-of-the-amazon-queen
14834 lure-of-the-temptress
14835 ;
14836
14837 sgt-puzzles = callPackage ../games/sgt-puzzles { };
14838
14839 sgt-puzzles-mobile = callPackage ../games/sgt-puzzles {
14840 isMobile = true;
14841 };
14842
14843 shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { };
14844 rkpd2 = callPackage ../games/shattered-pixel-dungeon/rkpd2 { };
14845 rat-king-adventure = callPackage ../games/shattered-pixel-dungeon/rat-king-adventure { };
14846 experienced-pixel-dungeon =
14847 callPackage ../games/shattered-pixel-dungeon/experienced-pixel-dungeon
14848 { };
14849 summoning-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/summoning-pixel-dungeon { };
14850 shorter-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/shorter-pixel-dungeon { };
14851 tower-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon/tower-pixel-dungeon { };
14852
14853 # get binaries without data built by Hydra
14854 simutrans_binaries = lowPrio simutrans.binaries;
14855
14856 soi = callPackage ../games/soi {
14857 lua = lua5_1;
14858 };
14859
14860 # You still can override by passing more arguments.
14861 spring = callPackage ../games/spring { asciidoc = asciidoc-full; };
14862
14863 springLobby = callPackage ../games/spring/springlobby.nix { };
14864
14865 steam-run = steam.run;
14866 steam-run-free = steam.run-free;
14867
14868 steamback = python3.pkgs.callPackage ../tools/games/steamback { };
14869
14870 protontricks = python3Packages.callPackage ../tools/package-management/protontricks {
14871 steam-run = steam-run-free;
14872 inherit winetricks yad;
14873 };
14874
14875 protonup-ng = with python3Packages; toPythonApplication protonup-ng;
14876
14877 stuntrally = callPackage ../games/stuntrally { boost = boost183; };
14878
14879 synthv1 = libsForQt5.callPackage ../applications/audio/synthv1 { };
14880
14881 the-powder-toy = callPackage ../by-name/th/the-powder-toy/package.nix {
14882 lua = lua5_2;
14883 };
14884
14885 tbe = libsForQt5.callPackage ../games/the-butterfly-effect { };
14886
14887 teeworlds-server = teeworlds.override { buildClient = false; };
14888
14889 tengine = callPackage ../servers/http/tengine {
14890 modules = with nginxModules; [
14891 rtmp
14892 dav
14893 moreheaders
14894 modsecurity
14895 ];
14896 };
14897
14898 tibia = pkgsi686Linux.callPackage ../games/tibia { };
14899
14900 speed_dreams = callPackage ../games/speed-dreams {
14901 # Torcs wants to make shared libraries linked with plib libraries (it provides static).
14902 # i686 is the only platform I know than can do that linking without plib built with -fPIC
14903 libpng = libpng12;
14904 };
14905
14906 ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { };
14907
14908 ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { };
14909
14910 ue4demos = recurseIntoAttrs (callPackage ../games/ue4demos { });
14911
14912 # To ensure vdrift's code is built on hydra
14913 vdrift-bin = vdrift.bin;
14914
14915 vessel = pkgsi686Linux.callPackage ../games/vessel { };
14916
14917 warsow-engine = callPackage ../games/warsow/engine.nix { };
14918
14919 warsow = callPackage ../games/warsow { };
14920
14921 wesnoth = callPackage ../games/wesnoth {
14922 boost = boost186;
14923 # wesnoth requires lua built with c++, see https://github.com/wesnoth/wesnoth/pull/8234
14924 lua = lua5_4.override {
14925 postConfigure = ''
14926 makeFlagsArray+=("CC=$CXX")
14927 '';
14928 };
14929 };
14930
14931 wesnoth-dev = wesnoth;
14932
14933 inherit (callPackage ../games/xonotic { })
14934 xonotic-data
14935 xonotic
14936 ;
14937
14938 xonotic-glx =
14939 (callPackage ../games/xonotic {
14940 withSDL = false;
14941 withGLX = true;
14942 }).xonotic;
14943
14944 xonotic-dedicated =
14945 (callPackage ../games/xonotic {
14946 withSDL = false;
14947 withDedicated = true;
14948 }).xonotic;
14949
14950 xonotic-sdl = xonotic;
14951 xonotic-sdl-unwrapped = xonotic-sdl.xonotic-unwrapped;
14952 xonotic-glx-unwrapped = xonotic-glx.xonotic-unwrapped;
14953 xonotic-dedicated-unwrapped = xonotic-dedicated.xonotic-unwrapped;
14954
14955 xpilot-ng = callPackage ../games/xpilot { };
14956 bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix { };
14957 bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix { };
14958
14959 inherit
14960 (callPackage ../games/quake2/yquake2 {
14961 })
14962 yquake2
14963 yquake2-ctf
14964 yquake2-ground-zero
14965 yquake2-the-reckoning
14966 yquake2-all-games
14967 ;
14968
14969 zeroad-unwrapped = callPackage ../by-name/ze/zeroad-unwrapped/package.nix {
14970 wxGTK = wxGTK32;
14971 fmt = fmt_9;
14972 };
14973
14974 ### DESKTOP ENVIRONMENTS
14975
14976 arcan-wrapped = arcan.wrapper.override { };
14977 arcan-all-wrapped = arcan.wrapper.override {
14978 name = "arcan-all-wrapped";
14979 appls = [
14980 cat9
14981 durden
14982 pipeworld
14983 ];
14984
14985 };
14986 cat9-wrapped = arcan.wrapper.override {
14987 name = "cat9-wrapped";
14988 appls = [ cat9 ];
14989 };
14990 durden-wrapped = arcan.wrapper.override {
14991 name = "durden-wrapped";
14992 appls = [ durden ];
14993 };
14994 pipeworld-wrapped = arcan.wrapper.override {
14995 name = "pipeworld-wrapped";
14996 appls = [ pipeworld ];
14997 };
14998 prio-wrapped = arcan.wrapper.override {
14999 name = "prio-wrapped";
15000 appls = [ prio ];
15001 };
15002
15003 deepin = recurseIntoAttrs (callPackage ../desktops/deepin { });
15004
15005 enlightenment = recurseIntoAttrs (callPackage ../desktops/enlightenment { });
15006
15007 expidus = recurseIntoAttrs (
15008 callPackages ../desktops/expidus {
15009 # Use the Nix built Flutter Engine for testing.
15010 # Also needed when we eventually package Genesis Shell.
15011 flutterPackages = flutterPackages-source;
15012 }
15013 );
15014
15015 gnome2 = recurseIntoAttrs (callPackage ../desktops/gnome-2 { });
15016
15017 gnome = recurseIntoAttrs (callPackage ../desktops/gnome { });
15018
15019 inherit (callPackage ../desktops/gnome/extensions { })
15020 gnomeExtensions
15021 gnome38Extensions
15022 gnome40Extensions
15023 gnome41Extensions
15024 gnome42Extensions
15025 gnome43Extensions
15026 gnome44Extensions
15027 gnome45Extensions
15028 gnome46Extensions
15029 gnome47Extensions
15030 gnome48Extensions
15031 ;
15032
15033 gnome-extensions-cli = python3Packages.callPackage ../desktops/gnome/misc/gnome-extensions-cli { };
15034
15035 gnome-session-ctl = callPackage ../by-name/gn/gnome-session/ctl.nix { };
15036
15037 lomiri = recurseIntoAttrs (callPackage ../desktops/lomiri { });
15038
15039 lumina = recurseIntoAttrs (callPackage ../desktops/lumina { });
15040
15041 ### DESKTOPS/LXDE
15042
15043 lxde = recurseIntoAttrs (callPackage ../desktops/lxde { });
15044 # Backwards compatibility aliases
15045 inherit (lxde)
15046 lxappearance
15047 lxappearance-gtk2
15048 lxmenu-data
15049 lxpanel
15050 lxrandr
15051 lxsession
15052 lxtask
15053 ;
15054
15055 lxqt = recurseIntoAttrs (
15056 import ../desktops/lxqt {
15057 inherit pkgs;
15058 inherit (lib) makeScope;
15059 inherit kdePackages;
15060 }
15061 );
15062
15063 mate = recurseIntoAttrs (callPackage ../desktops/mate { });
15064
15065 # Needed for elementary's gala, wingpanel and greeter until support for higher versions is provided
15066 pantheon = recurseIntoAttrs (callPackage ../desktops/pantheon { });
15067
15068 xfce = recurseIntoAttrs (callPackage ../desktops/xfce { });
15069
15070 plasma-applet-volumewin7mixer =
15071 libsForQt5.callPackage ../applications/misc/plasma-applet-volumewin7mixer
15072 { };
15073
15074 plasma-theme-switcher = libsForQt5.callPackage ../applications/misc/plasma-theme-switcher { };
15075
15076 plasma-pass = libsForQt5.callPackage ../tools/security/plasma-pass { };
15077
15078 inherit
15079 (callPackages ../applications/misc/redshift {
15080 inherit (python3Packages)
15081 python
15082 pygobject3
15083 pyxdg
15084 wrapPython
15085 ;
15086 geoclue = geoclue2;
15087 })
15088 redshift
15089 gammastep
15090 ;
15091
15092 redshift-plasma-applet = libsForQt5.callPackage ../applications/misc/redshift-plasma-applet { };
15093
15094 latte-dock = libsForQt5.callPackage ../applications/misc/latte-dock { };
15095
15096 ### SCIENCE/CHEMISTY
15097
15098 avogadrolibs = libsForQt5.callPackage ../development/libraries/science/chemistry/avogadrolibs { };
15099
15100 molequeue = libsForQt5.callPackage ../development/libraries/science/chemistry/molequeue { };
15101
15102 avogadro2 = libsForQt5.callPackage ../applications/science/chemistry/avogadro2 { };
15103
15104 jmol = callPackage ../applications/science/chemistry/jmol {
15105 jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
15106 };
15107
15108 marvin = callPackage ../applications/science/chemistry/marvin { };
15109
15110 molbar = with python3Packages; toPythonApplication molbar;
15111
15112 nwchem = callPackage ../applications/science/chemistry/nwchem {
15113 blas = blas-ilp64;
15114 lapack = lapack-ilp64;
15115 };
15116
15117 autodock-vina = callPackage ../applications/science/chemistry/autodock-vina { };
15118
15119 pdb2pqr = with python3Packages; toPythonApplication pdb2pqr;
15120
15121 quantum-espresso = callPackage ../applications/science/chemistry/quantum-espresso {
15122 hdf5 = hdf5-fortran;
15123 };
15124
15125 siesta = callPackage ../applications/science/chemistry/siesta { };
15126
15127 siesta-mpi = callPackage ../applications/science/chemistry/siesta { useMpi = true; };
15128
15129 ### SCIENCE/GEOMETRY
15130
15131 tetgen = callPackage ../applications/science/geometry/tetgen { }; # AGPL3+
15132 tetgen_1_4 = callPackage ../applications/science/geometry/tetgen/1.4.nix { }; # MIT
15133
15134 ### SCIENCE/BENCHMARK
15135
15136 ### SCIENCE/BIOLOGY
15137
15138 blast = callPackage ../applications/science/biology/blast { };
15139
15140 blast-bin = callPackage ../applications/science/biology/blast/bin.nix { };
15141
15142 cd-hit = callPackage ../applications/science/biology/cd-hit {
15143 inherit (llvmPackages) openmp;
15144 };
15145
15146 deepdiff = with python3Packages; toPythonApplication deepdiff;
15147
15148 deep-translator = with python3Packages; toPythonApplication deep-translator;
15149
15150 hh-suite = callPackage ../applications/science/biology/hh-suite {
15151 inherit (llvmPackages) openmp;
15152 };
15153
15154 nest = callPackage ../applications/science/biology/nest { };
15155
15156 nest-mpi = callPackage ../applications/science/biology/nest { withMpi = true; };
15157
15158 neuron-mpi = neuron.override { useMpi = true; };
15159
15160 neuron-full = neuron-mpi.override {
15161 useCore = true;
15162 useRx3d = true;
15163 };
15164
15165 minc_tools = callPackage ../applications/science/biology/minc-tools {
15166 inherit (perlPackages) perl TextFormat;
15167 };
15168
15169 obitools3 = callPackage ../applications/science/biology/obitools/obitools3.nix { };
15170
15171 raxml-mpi = raxml.override { useMpi = true; };
15172
15173 trimmomatic = callPackage ../applications/science/biology/trimmomatic {
15174 jdk = pkgs.jdk21_headless;
15175 # Reduce closure size
15176 jre = pkgs.jre_minimal.override {
15177 modules = [
15178 "java.base"
15179 "java.logging"
15180 ];
15181 jdk = pkgs.jdk21_headless;
15182 };
15183 };
15184
15185 truvari = callPackage ../applications/science/biology/truvari { };
15186
15187 ### SCIENCE/MACHINE LEARNING
15188
15189 sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { };
15190
15191 streamlit = with python3Packages; toPythonApplication streamlit;
15192
15193 ### SCIENCE/MATH
15194
15195 blas-ilp64 = blas.override { isILP64 = true; };
15196
15197 cantor = libsForQt5.cantor;
15198
15199 labplot = libsForQt5.callPackage ../applications/science/math/labplot { };
15200
15201 lapack-ilp64 = lapack.override { isILP64 = true; };
15202
15203 liblapack = lapack-reference;
15204
15205 nota = haskellPackages.callPackage ../applications/science/math/nota { };
15206
15207 notus-scanner = with python3Packages; toPythonApplication notus-scanner;
15208
15209 openblas = callPackage ../development/libraries/science/math/openblas {
15210 inherit (llvmPackages) openmp;
15211 };
15212
15213 # A version of OpenBLAS using 32-bit integers on all platforms for compatibility with
15214 # standard BLAS and LAPACK.
15215 openblasCompat = openblas.override { blas64 = false; };
15216
15217 inherit (callPackage ../development/libraries/science/math/magma { }) magma;
15218
15219 magma-cuda = magma.override {
15220 cudaSupport = true;
15221 rocmSupport = false;
15222 };
15223
15224 magma-cuda-static = magma-cuda.override {
15225 static = true;
15226 };
15227
15228 magma-hip = magma.override {
15229 cudaSupport = false;
15230 rocmSupport = true;
15231 };
15232
15233 mathematica = callPackage ../applications/science/math/mathematica { };
15234
15235 mathematica-webdoc = callPackage ../applications/science/math/mathematica {
15236 webdoc = true;
15237 };
15238
15239 mathematica-cuda = callPackage ../applications/science/math/mathematica {
15240 cudaSupport = true;
15241 };
15242
15243 mathematica-webdoc-cuda = callPackage ../applications/science/math/mathematica {
15244 webdoc = true;
15245 cudaSupport = true;
15246 };
15247
15248 math-preview = callPackage ../by-name/ma/math-preview/package.nix {
15249 nodejs = nodejs_20;
15250 };
15251
15252 p4est-sc-dbg = p4est-sc.override { debug = true; };
15253
15254 p4est-dbg = p4est.override { debug = true; };
15255
15256 sageWithDoc = sage.override { withDoc = true; };
15257
15258 suitesparse_5_3 = callPackage ../development/libraries/science/math/suitesparse {
15259 inherit (llvmPackages) openmp;
15260 };
15261 suitesparse = suitesparse_5_3;
15262
15263 trilinos = callPackage ../development/libraries/science/math/trilinos { };
15264
15265 trilinos-mpi = callPackage ../development/libraries/science/math/trilinos { withMPI = true; };
15266
15267 wolfram-engine = libsForQt5.callPackage ../applications/science/math/wolfram-engine { };
15268
15269 wolfram-for-jupyter-kernel = callPackage ../applications/editors/jupyter-kernels/wolfram { };
15270
15271 wolfram-notebook = callPackage ../applications/science/math/wolfram-engine/notebook.nix { };
15272
15273 ### SCIENCE/MOLECULAR-DYNAMICS
15274
15275 gromacs = callPackage ../applications/science/molecular-dynamics/gromacs {
15276 singlePrec = true;
15277 fftw = fftwSinglePrec;
15278 };
15279
15280 gromacsPlumed = lowPrio (
15281 gromacs.override {
15282 singlePrec = true;
15283 enablePlumed = true;
15284 fftw = fftwSinglePrec;
15285 }
15286 );
15287
15288 gromacsMpi = lowPrio (
15289 gromacs.override {
15290 singlePrec = true;
15291 enableMpi = true;
15292 fftw = fftwSinglePrec;
15293 }
15294 );
15295
15296 gromacsDouble = lowPrio (
15297 gromacs.override {
15298 singlePrec = false;
15299 fftw = fftw;
15300 }
15301 );
15302
15303 gromacsDoubleMpi = lowPrio (
15304 gromacs.override {
15305 singlePrec = false;
15306 enableMpi = true;
15307 fftw = fftw;
15308 }
15309 );
15310
15311 gromacsCudaMpi = lowPrio (
15312 gromacs.override {
15313 singlePrec = true;
15314 enableMpi = true;
15315 enableCuda = true;
15316 fftw = fftwSinglePrec;
15317 }
15318 );
15319
15320 ### SCIENCE/MEDICINE
15321
15322 ### SCIENCE/PHYSICS
15323
15324 mcfm = callPackage ../applications/science/physics/MCFM {
15325 stdenv = gccStdenv;
15326 lhapdf = lhapdf.override {
15327 stdenv = gccStdenv;
15328 python3 = null;
15329 };
15330 };
15331
15332 xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
15333
15334 ### SCIENCE/PROGRAMMING
15335
15336 ### SCIENCE/LOGIC
15337
15338 abella = callPackage ../applications/science/logic/abella {
15339 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
15340 };
15341
15342 inherit
15343 (callPackage ./rocq-packages.nix {
15344 inherit (ocaml-ng)
15345 ocamlPackages_4_14
15346 ;
15347 })
15348 mkRocqPackages
15349 rocqPackages_9_0
15350 rocq-core_9_0
15351 rocqPackages_9_1
15352 rocq-core_9_1
15353 rocqPackages
15354 rocq-core
15355 ;
15356
15357 inherit
15358 (callPackage ./coq-packages.nix {
15359 inherit (ocaml-ng)
15360 ocamlPackages_4_09
15361 ocamlPackages_4_10
15362 ocamlPackages_4_12
15363 ocamlPackages_4_14
15364 ;
15365 inherit
15366 rocqPackages_9_0
15367 rocqPackages_9_1
15368 rocqPackages
15369 ;
15370 })
15371 mkCoqPackages
15372 coqPackages_8_7
15373 coq_8_7
15374 coqPackages_8_8
15375 coq_8_8
15376 coqPackages_8_9
15377 coq_8_9
15378 coqPackages_8_10
15379 coq_8_10
15380 coqPackages_8_11
15381 coq_8_11
15382 coqPackages_8_12
15383 coq_8_12
15384 coqPackages_8_13
15385 coq_8_13
15386 coqPackages_8_14
15387 coq_8_14
15388 coqPackages_8_15
15389 coq_8_15
15390 coqPackages_8_16
15391 coq_8_16
15392 coqPackages_8_17
15393 coq_8_17
15394 coqPackages_8_18
15395 coq_8_18
15396 coqPackages_8_19
15397 coq_8_19
15398 coqPackages_8_20
15399 coq_8_20
15400 coqPackages_9_0
15401 coq_9_0
15402 coqPackages_9_1
15403 coq_9_1
15404 coqPackages
15405 coq
15406 ;
15407
15408 coq-kernel = callPackage ../applications/editors/jupyter-kernels/coq { };
15409
15410 cubicle = callPackage ../applications/science/logic/cubicle {
15411 ocamlPackages = ocaml-ng.ocamlPackages_4_14;
15412 };
15413
15414 cvc3 = callPackage ../applications/science/logic/cvc3 {
15415 gmp = lib.overrideDerivation gmp (_: {
15416 dontDisableStatic = true;
15417 });
15418 stdenv = gccStdenv;
15419 };
15420
15421 cvc5 = callPackage ../applications/science/logic/cvc5 { };
15422
15423 ekrhyper = callPackage ../applications/science/logic/ekrhyper {
15424 ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
15425 };
15426
15427 eprover = callPackage ../applications/science/logic/eprover { };
15428
15429 eprover-ho = callPackage ../applications/science/logic/eprover { enableHO = true; };
15430
15431 giac-with-xcas = giac.override { enableGUI = true; };
15432
15433 glucose = callPackage ../applications/science/logic/glucose { };
15434 glucose-syrup = callPackage ../applications/science/logic/glucose {
15435 enableUnfree = true;
15436 };
15437
15438 inherit (ocamlPackages) hol_light;
15439
15440 isabelle = callPackage ../by-name/is/isabelle/package.nix {
15441 polyml = polyml.overrideAttrs {
15442 pname = "polyml-for-isabelle";
15443 version = "2025";
15444 __intentionallyOverridingVersion = true; # avoid a warning, no src override
15445 configureFlags = [
15446 "--enable-intinf-as-int"
15447 "--with-gmp"
15448 "--disable-shared"
15449 ];
15450 buildFlags = [ "compiler" ];
15451 };
15452
15453 java = openjdk21;
15454 };
15455 isabelle-components = recurseIntoAttrs (callPackage ../by-name/is/isabelle/components { });
15456
15457 lean3 = lean;
15458 mathlibtools = with python3Packages; toPythonApplication mathlibtools;
15459
15460 leo2 = callPackage ../applications/science/logic/leo2 {
15461 inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml camlp4;
15462 };
15463
15464 leo3-bin = callPackage ../applications/science/logic/leo3/binary.nix { };
15465
15466 prooftree = callPackage ../applications/science/logic/prooftree {
15467 ocamlPackages = ocaml-ng.ocamlPackages_4_12;
15468 };
15469
15470 satallax = callPackage ../applications/science/logic/satallax {
15471 inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
15472 };
15473
15474 spass = callPackage ../applications/science/logic/spass {
15475 stdenv = gccStdenv;
15476 };
15477
15478 statverif = callPackage ../applications/science/logic/statverif {
15479 ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
15480 };
15481
15482 veriT = callPackage ../applications/science/logic/verit {
15483 stdenv = gccStdenv;
15484 };
15485
15486 why3 = callPackage ../applications/science/logic/why3 { coqPackages = coqPackages_8_20; };
15487
15488 yices = callPackage ../applications/science/logic/yices {
15489 gmp-static = gmp.override { withStatic = true; };
15490 };
15491
15492 tlaplus = callPackage ../applications/science/logic/tlaplus {
15493 jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
15494 };
15495 tlaplus18 = callPackage ../applications/science/logic/tlaplus/tlaplus18.nix { };
15496 tlaps = callPackage ../applications/science/logic/tlaplus/tlaps.nix {
15497 inherit (ocaml-ng.ocamlPackages_4_14_unsafe_string) ocaml;
15498 };
15499 tlaplusToolbox = callPackage ../applications/science/logic/tlaplus/toolbox.nix { };
15500
15501 avy = callPackage ../applications/science/logic/avy { };
15502
15503 ### SCIENCE / ENGINEERING
15504
15505 ### SCIENCE / ELECTRONICS
15506
15507 appcsxcad = libsForQt5.callPackage ../applications/science/electronics/appcsxcad { };
15508
15509 simulide_0_4_15 = callPackage ../by-name/si/simulide/package.nix { versionNum = "0.4.15"; };
15510 simulide_1_0_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.0.0"; };
15511 simulide_1_1_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.1.0"; };
15512 simulide_1_2_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.2.0"; };
15513
15514 eagle = libsForQt5.callPackage ../applications/science/electronics/eagle/eagle.nix { };
15515
15516 caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { };
15517
15518 degate = libsForQt5.callPackage ../applications/science/electronics/degate { };
15519
15520 geda = callPackage ../applications/science/electronics/geda {
15521 guile = guile_2_2;
15522 };
15523
15524 gerbv = callPackage ../applications/science/electronics/gerbv {
15525 cairo = cairo.override { x11Support = true; };
15526 };
15527
15528 # this is a wrapper for kicad.base and kicad.libraries
15529 kicad = callPackage ../applications/science/electronics/kicad { };
15530 # this is the same but without the (sizable) 3D models library
15531 kicad-small = kicad.override {
15532 pname = "kicad-small";
15533 with3d = false;
15534 };
15535 # this is the stable branch at whatever point update.sh last updated versions.nix
15536 kicad-testing = kicad.override {
15537 pname = "kicad-testing";
15538 testing = true;
15539 };
15540 # and a small version of that
15541 kicad-testing-small = kicad.override {
15542 pname = "kicad-testing-small";
15543 testing = true;
15544 with3d = false;
15545 };
15546 # this is the master branch at whatever point update.sh last updated versions.nix
15547 kicad-unstable = kicad.override {
15548 pname = "kicad-unstable";
15549 stable = false;
15550 };
15551 # and a small version of that
15552 kicad-unstable-small = kicad.override {
15553 pname = "kicad-unstable-small";
15554 stable = false;
15555 with3d = false;
15556 };
15557
15558 kicadAddons = recurseIntoAttrs (callPackage ../applications/science/electronics/kicad/addons { });
15559
15560 librepcb = qt6Packages.callPackage ../applications/science/electronics/librepcb { };
15561
15562 ngspice = libngspice.override {
15563 withNgshared = false;
15564 };
15565
15566 openems = callPackage ../applications/science/electronics/openems {
15567 qcsxcad = libsForQt5.qcsxcad;
15568 };
15569
15570 qucs-s = qt6Packages.callPackage ../applications/science/electronics/qucs-s { };
15571
15572 xyce-parallel = callPackage ../by-name/xy/xyce/package.nix {
15573 withMPI = true;
15574 trilinos = trilinos-mpi;
15575 };
15576
15577 ### SCIENCE / MATH
15578
15579 caffe = callPackage ../applications/science/math/caffe (
15580 {
15581 opencv4 = opencv4WithoutCuda; # Used only for image loading.
15582 blas = openblas;
15583 }
15584 // (config.caffe or { })
15585 );
15586
15587 gap-minimal = lowPrio (gap.override { packageSet = "minimal"; });
15588
15589 gap-full = lowPrio (gap.override { packageSet = "full"; });
15590
15591 geogebra = callPackage ../applications/science/math/geogebra { };
15592 geogebra6 = callPackage ../applications/science/math/geogebra/geogebra6.nix { };
15593
15594 maxima = callPackage ../applications/science/math/maxima {
15595 lisp-compiler = sbcl;
15596 };
15597 maxima-ecl = maxima.override {
15598 lisp-compiler = ecl;
15599 };
15600
15601 wxmaxima = callPackage ../applications/science/math/wxmaxima {
15602 wxGTK = wxGTK32.override {
15603 withWebKit = true;
15604 };
15605 };
15606
15607 pari = callPackage ../applications/science/math/pari { };
15608 gp2c = callPackage ../applications/science/math/pari/gp2c.nix { };
15609
15610 raspa = callPackage ../applications/science/molecular-dynamics/raspa { };
15611
15612 raspa-data = callPackage ../applications/science/molecular-dynamics/raspa/data.nix { };
15613
15614 yacas = libsForQt5.callPackage ../applications/science/math/yacas { };
15615
15616 yacas-gui = yacas.override {
15617 enableGui = true;
15618 enableJupyter = false;
15619 };
15620
15621 speedcrunch = libsForQt5.callPackage ../applications/science/math/speedcrunch { };
15622
15623 ### SCIENCE / MISC
15624
15625 boinc = callPackage ../applications/science/misc/boinc { };
15626
15627 boinc-headless = callPackage ../applications/science/misc/boinc { headless = true; };
15628
15629 celestia = callPackage ../applications/science/astronomy/celestia {
15630 inherit (gnome2) gtkglext;
15631 };
15632
15633 convertall = qt5.callPackage ../applications/science/misc/convertall { };
15634
15635 cytoscape = callPackage ../applications/science/misc/cytoscape {
15636 jre = openjdk17;
15637 };
15638
15639 faissWithCuda = faiss.override {
15640 cudaSupport = true;
15641 };
15642
15643 gplates = libsForQt5.callPackage ../applications/science/misc/gplates { };
15644
15645 golly = callPackage ../applications/science/misc/golly {
15646 wxGTK = wxGTK32;
15647 };
15648
15649 megam = callPackage ../applications/science/misc/megam {
15650 inherit (ocaml-ng.ocamlPackages_4_14) ocaml;
15651 };
15652
15653 spyder = with python3.pkgs; toPythonApplication spyder;
15654
15655 stellarium = qt6Packages.callPackage ../applications/science/astronomy/stellarium { };
15656
15657 tulip = libsForQt5.callPackage ../applications/science/misc/tulip {
15658 python3 = python312; # fails to build otherwise
15659 };
15660
15661 vite = libsForQt5.callPackage ../applications/science/misc/vite { };
15662
15663 ### SCIENCE / PHYSICS
15664
15665 hepmc3 = callPackage ../development/libraries/physics/hepmc3 {
15666 python = null;
15667 };
15668
15669 pythia = callPackage ../development/libraries/physics/pythia {
15670 hepmc = hepmc2;
15671 };
15672
15673 yoda-with-root = lowPrio (
15674 yoda.override {
15675 withRootSupport = true;
15676 }
15677 );
15678
15679 ### SCIENCE/ROBOTICS
15680
15681 apmplanner2 = libsForQt5.callPackage ../applications/science/robotics/apmplanner2 { };
15682
15683 ### MISC
15684
15685 antimicrox = libsForQt5.callPackage ../tools/misc/antimicrox { };
15686
15687 autotiling = python3Packages.callPackage ../misc/autotiling { };
15688
15689 avell-unofficial-control-center =
15690 callPackage ../applications/misc/avell-unofficial-control-center
15691 { };
15692
15693 brgenml1lpr = pkgsi686Linux.callPackage ../misc/cups/drivers/brgenml1lpr { };
15694
15695 cups = callPackage ../misc/cups { };
15696
15697 cups-filters = callPackage ../misc/cups/filters.nix { };
15698
15699 cups-pk-helper = callPackage ../misc/cups/cups-pk-helper.nix { };
15700
15701 epsonscan2 = callPackage ../by-name/ep/epsonscan2/package.nix {
15702 inherit (qt5) wrapQtAppsHook qtbase;
15703 };
15704
15705 foomatic-db-ppds-withNonfreeDb = callPackage ../by-name/fo/foomatic-db-ppds/package.nix {
15706 withNonfreeDb = true;
15707 };
15708
15709 gutenprint = callPackage ../misc/drivers/gutenprint { };
15710
15711 gutenprintBin = callPackage ../misc/drivers/gutenprint/bin.nix { };
15712
15713 dcp375cwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp375cw { }).driver;
15714
15715 dcp375cw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp375cw { }).cupswrapper;
15716
15717 dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver;
15718
15719 dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper;
15720
15721 cups-brother-hl1110 = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1110 { };
15722
15723 cups-brother-hl1210w = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1210w { };
15724
15725 cups-brother-hl2260d = pkgsi686Linux.callPackage ../misc/cups/drivers/hl2260d { };
15726
15727 cups-brother-hl3140cw = pkgsi686Linux.callPackage ../misc/cups/drivers/hl3140cw { };
15728
15729 cups-brother-hll2340dw = pkgsi686Linux.callPackage ../misc/cups/drivers/hll2340dw { };
15730
15731 cups-brother-hll3230cdw = pkgsi686Linux.callPackage ../misc/cups/drivers/hll3230cdw { };
15732
15733 # this driver ships with pre-compiled 32-bit binary libraries
15734 cnijfilter_2_80 = pkgsi686Linux.callPackage ../misc/cups/drivers/cnijfilter_2_80 { };
15735
15736 faust = faust2;
15737
15738 flashprint = libsForQt5.callPackage ../applications/misc/flashprint { };
15739
15740 fahclient = callPackage ../applications/science/misc/foldingathome/client.nix { };
15741
15742 gajim = callPackage ../applications/networking/instant-messengers/gajim {
15743 inherit (gst_all_1) gstreamer gst-plugins-base gst-libav;
15744 gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
15745 };
15746
15747 ghostscriptX = ghostscript.override {
15748 cupsSupport = true;
15749 x11Support = true;
15750 };
15751
15752 ghostscript_headless = ghostscript.override {
15753 cupsSupport = false;
15754 x11Support = false;
15755 };
15756
15757 gnuk = callPackage ../misc/gnuk {
15758 gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc;
15759 binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
15760 };
15761
15762 gotrue = callPackage ../tools/security/gotrue { };
15763
15764 gotrue-supabase = callPackage ../tools/security/gotrue/supabase.nix { };
15765
15766 gowitness = callPackage ../tools/security/gowitness {
15767 buildGoModule = buildGo123Module;
15768 };
15769
15770 helmfile = callPackage ../applications/networking/cluster/helmfile { };
15771
15772 helmfile-wrapped = callPackage ../applications/networking/cluster/helmfile {
15773 inherit (kubernetes-helm-wrapped.passthru) pluginsDir;
15774 };
15775
15776 hplipWithPlugin = hplip.override { withPlugin = true; };
15777
15778 hjson = with python3Packages; toPythonApplication hjson;
15779
15780 epkowa = callPackage ../misc/drivers/epkowa { };
15781
15782 utsushi = callPackage ../misc/drivers/utsushi { };
15783
15784 utsushi-networkscan = callPackage ../misc/drivers/utsushi/networkscan.nix { };
15785
15786 image_optim = callPackage ../applications/graphics/image_optim { inherit (nodePackages) svgo; };
15787
15788 # using the new configuration style proposal which is unstable
15789 jack1 = callPackage ../misc/jackaudio/jack1.nix { };
15790
15791 jack2 = callPackage ../misc/jackaudio { };
15792
15793 libjack2 = jack2.override { prefix = "lib"; };
15794
15795 jack-example-tools = callPackage ../misc/jackaudio/tools.nix {
15796 libopus = libopus.override { withCustomModes = true; };
15797 jack = jack2;
15798 };
15799
15800 jack-autoconnect = libsForQt5.callPackage ../applications/audio/jack-autoconnect { };
15801 jack_autoconnect = jack-autoconnect;
15802
15803 j2cli = with python311Packages; toPythonApplication j2cli;
15804
15805 kmonad = haskellPackages.kmonad.bin;
15806
15807 kompute = callPackage ../development/libraries/kompute {
15808 fmt = fmt_10;
15809 };
15810
15811 # In general we only want keep the last three minor versions around that
15812 # correspond to the last three supported kubernetes versions:
15813 # https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions
15814 # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases
15815 inherit (callPackage ../applications/networking/cluster/kops { })
15816 mkKops
15817 kops_1_27
15818 kops_1_28
15819 kops_1_29
15820 kops_1_30
15821 ;
15822 kops = kops_1_29;
15823
15824 lilypond = callPackage ../misc/lilypond { };
15825
15826 lilypond-unstable = callPackage ../misc/lilypond/unstable.nix { };
15827
15828 lilypond-unstable-with-fonts = callPackage ../misc/lilypond/with-fonts.nix {
15829 lilypond = lilypond-unstable;
15830 openlilylib-fonts = openlilylib-fonts.override {
15831 lilypond = lilypond-unstable;
15832 };
15833 };
15834
15835 lilypond-with-fonts = callPackage ../misc/lilypond/with-fonts.nix { };
15836
15837 openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { };
15838
15839 meilisearch_1_11 = callPackage ../by-name/me/meilisearch/package.nix { version = "1.11.3"; };
15840
15841 mongocxx = callPackage ../development/libraries/mongocxx/default.nix { };
15842
15843 muse = libsForQt5.callPackage ../applications/audio/muse { };
15844
15845 nixDependencies = recurseIntoAttrs (
15846 callPackage ../tools/package-management/nix/dependencies-scope.nix { }
15847 );
15848
15849 nixVersions = recurseIntoAttrs (
15850 callPackage ../tools/package-management/nix {
15851 storeDir = config.nix.storeDir or "/nix/store";
15852 stateDir = config.nix.stateDir or "/nix/var";
15853 }
15854 );
15855
15856 nix = nixVersions.stable;
15857
15858 # Overlays for CppNix nightly, Lix, or Tvix want to change the default Nix
15859 # implementation in Nixpkgs by overriding `pkgs.nix`. However, some packages
15860 # link against the internal/unstable CppNix APIs directly, and these packages
15861 # will break if built with different versions or implementations of Nix.
15862 #
15863 # If you want to swap out the Nix implementation in your package set, you
15864 # don't want these packages to break. Therefore, some packages will refer to
15865 # `nixForLinking` explicitly, at least until these dependencies can be sorted out.
15866 nixForLinking = nixVersions.stable;
15867
15868 nixStatic = pkgsStatic.nix;
15869
15870 lixPackageSets = recurseIntoAttrs (
15871 callPackage ../tools/package-management/lix {
15872 storeDir = config.nix.storeDir or "/nix/store";
15873 stateDir = config.nix.stateDir or "/nix/var";
15874 }
15875 );
15876
15877 lix = lixPackageSets.stable.lix;
15878
15879 lixStatic = pkgsStatic.lix;
15880
15881 inherit (callPackages ../applications/networking/cluster/nixops { })
15882 nixops_unstable_minimal
15883
15884 # Not recommended; too fragile
15885 nixops_unstable_full
15886 ;
15887
15888 # Useful with ofborg, e.g. commit prefix `nixops_unstablePlugins.nixops-digitalocean: ...` to trigger automatically.
15889 nixops_unstablePlugins = recurseIntoAttrs nixops_unstable_minimal.availablePlugins;
15890
15891 /*
15892 Evaluate a NixOS configuration using this evaluation of Nixpkgs.
15893
15894 With this function you can write, for example, a package that
15895 depends on a custom virtual machine image.
15896
15897 Parameter: A module, path or list of those that represent the
15898 configuration of the NixOS system to be constructed.
15899
15900 Result: An attribute set containing packages produced by this
15901 evaluation of NixOS, such as toplevel, kernel and
15902 initialRamdisk.
15903 The result can be extended in the modules by defining
15904 extra attributes in system.build.
15905 Alternatively, you may use the result's config and
15906 options attributes to query any option.
15907
15908 Example:
15909
15910 let
15911 myOS = pkgs.nixos ({ lib, pkgs, config, ... }: {
15912
15913 config.services.nginx = {
15914 enable = true;
15915 # ...
15916 };
15917
15918 # Use config.system.build to exports relevant parts of a
15919 # configuration. The runner attribute should not be
15920 # considered a fully general replacement for systemd
15921 # functionality.
15922 config.system.build.run-nginx = config.systemd.services.nginx.runner;
15923 });
15924 in
15925 myOS.run-nginx
15926
15927 Unlike in plain NixOS, the nixpkgs.config and
15928 nixpkgs.system options will be ignored by default. Instead,
15929 nixpkgs.pkgs will have the default value of pkgs as it was
15930 constructed right after invoking the nixpkgs function (e.g. the
15931 value of import <nixpkgs> { overlays = [./my-overlay.nix]; }
15932 but not the value of (import <nixpkgs> {} // { extra = ...; }).
15933
15934 If you do want to use the config.nixpkgs options, you are
15935 probably better off by calling nixos/lib/eval-config.nix
15936 directly, even though it is possible to set config.nixpkgs.pkgs.
15937
15938 For more information about writing NixOS modules, see
15939 https://nixos.org/nixos/manual/index.html#sec-writing-modules
15940
15941 Note that you will need to have called Nixpkgs with the system
15942 parameter set to the right value for your deployment target.
15943 */
15944 nixos =
15945 configuration:
15946 let
15947 c = import (path + "/nixos/lib/eval-config.nix") {
15948 modules = [
15949 (
15950 { lib, ... }:
15951 {
15952 config.nixpkgs.pkgs = lib.mkDefault pkgs;
15953 config.nixpkgs.localSystem = lib.mkDefault stdenv.hostPlatform;
15954 }
15955 )
15956 ]
15957 ++ (if builtins.isList configuration then configuration else [ configuration ]);
15958
15959 # The system is inherited from the current pkgs above.
15960 # Set it to null, to remove the "legacy" entrypoint's non-hermetic default.
15961 system = null;
15962 };
15963 in
15964 c.config.system.build // c;
15965
15966 # A NixOS/home-manager/arion/... module that sets the `pkgs` module argument.
15967 pkgsModule =
15968 { options, ... }:
15969 {
15970 config =
15971 if options ? nixpkgs.pkgs then
15972 {
15973 # legacy / nixpkgs.nix style
15974 nixpkgs.pkgs = pkgs;
15975 }
15976 else
15977 {
15978 # minimal
15979 _module.args.pkgs = pkgs;
15980 };
15981 };
15982
15983 nixosOptionsDoc =
15984 attrs:
15985 (import ../../nixos/lib/make-options-doc) (
15986 {
15987 pkgs = pkgs.__splicedPackages;
15988 inherit lib;
15989 }
15990 // attrs
15991 );
15992
15993 nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs {
15994 nix = nixVersions.nix_2_30;
15995 };
15996
15997 nix-delegate = haskell.lib.compose.justStaticExecutables haskellPackages.nix-delegate;
15998 nix-deploy = haskell.lib.compose.justStaticExecutables haskellPackages.nix-deploy;
15999 nix-derivation = haskell.lib.compose.justStaticExecutables haskellPackages.nix-derivation;
16000 nix-diff = haskell.lib.compose.justStaticExecutables haskellPackages.nix-diff;
16001
16002 nix-info = callPackage ../tools/nix/info { };
16003 nix-info-tested = nix-info.override { doCheck = true; };
16004
16005 nix-index-unwrapped = callPackage ../tools/package-management/nix-index { };
16006 nix-index = callPackage ../tools/package-management/nix-index/wrapper.nix { };
16007
16008 nix-linter = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-linter);
16009
16010 nix-pin = callPackage ../tools/package-management/nix-pin { };
16011
16012 nix-prefetch-github = with python3Packages; toPythonApplication nix-prefetch-github;
16013
16014 inherit (callPackages ../tools/package-management/nix-prefetch-scripts { })
16015 nix-prefetch-bzr
16016 nix-prefetch-cvs
16017 nix-prefetch-git
16018 nix-prefetch-hg
16019 nix-prefetch-svn
16020 nix-prefetch-scripts
16021 ;
16022
16023 nix-update-source = callPackage ../tools/package-management/nix-update-source { };
16024
16025 nix-tree = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-tree);
16026
16027 nix-serve-ng = haskell.lib.compose.justStaticExecutables haskellPackages.nix-serve-ng;
16028
16029 nix-visualize = python3.pkgs.callPackage ../tools/package-management/nix-visualize { };
16030
16031 nixfmt-classic = haskellPackages.nixfmt.bin;
16032
16033 nixpkgs-manual = callPackage ../../doc/doc-support/package.nix { };
16034
16035 nixos-artwork = callPackage ../data/misc/nixos-artwork { };
16036 nixos-icons = callPackage ../data/misc/nixos-artwork/icons.nix { };
16037 nixos-grub2-theme = callPackage ../data/misc/nixos-artwork/grub2-theme.nix { };
16038
16039 nixos-rebuild = callPackage ../os-specific/linux/nixos-rebuild { };
16040
16041 disnix = callPackage ../tools/package-management/disnix { };
16042
16043 dysnomia = callPackage ../tools/package-management/disnix/dysnomia (
16044 config.disnix or {
16045 inherit (python3Packages) supervisor;
16046 }
16047 );
16048
16049 DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService {
16050 jdk = jdk8;
16051 };
16052
16053 lice = python3Packages.callPackage ../tools/misc/lice { };
16054
16055 mysql-workbench = callPackage ../by-name/my/mysql-workbench/package.nix (
16056 let
16057 mysql = mysql80;
16058 in
16059 {
16060 gdal = gdal.override {
16061 libmysqlclient = mysql;
16062 };
16063 mysql = mysql;
16064 }
16065 );
16066
16067 resp-app = libsForQt5.callPackage ../applications/misc/resp-app { };
16068
16069 pgadmin4 = callPackage ../tools/admin/pgadmin { };
16070
16071 pgadmin4-desktopmode = callPackage ../tools/admin/pgadmin { server-mode = false; };
16072
16073 philipstv = with python3Packages; toPythonApplication philipstv;
16074
16075 pyupgrade = with python3Packages; toPythonApplication pyupgrade;
16076
16077 pwntools = with python3Packages; toPythonApplication pwntools;
16078
16079 putty = callPackage ../applications/networking/remote/putty {
16080 gtk3 = if stdenv.hostPlatform.isDarwin then gtk3-x11 else gtk3;
16081 };
16082
16083 qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { };
16084
16085 qMasterPassword-wayland = qt6Packages.callPackage ../applications/misc/qMasterPassword {
16086 x11Support = false;
16087 waylandSupport = true;
16088 };
16089
16090 qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { };
16091
16092 qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { };
16093
16094 romdirfs = callPackage ../tools/filesystems/romdirfs {
16095 stdenv = gccStdenv;
16096 };
16097
16098 sail-riscv = callPackage ../applications/virtualization/sail-riscv {
16099 inherit (ocamlPackages) sail;
16100 };
16101
16102 mfcj470dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj470dwlpr { };
16103
16104 mfcj6510dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj6510dwlpr { };
16105
16106 mfcl2700dnlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcl2700dnlpr { };
16107
16108 # This driver is only available as a 32 bit proprietary binary driver
16109 mfcl3770cdwlpr = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).driver;
16110 mfcl3770cdwcupswrapper = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).cupswrapper;
16111
16112 samsung-unified-linux-driver_1_00_37 = callPackage ../misc/cups/drivers/samsung/1.00.37.nix { };
16113 samsung-unified-linux-driver_4_01_17 = callPackage ../misc/cups/drivers/samsung/4.01.17.nix { };
16114 samsung-unified-linux-driver = res.samsung-unified-linux-driver_4_01_17;
16115
16116 sane-backends = callPackage ../applications/graphics/sane/backends (config.sane or { });
16117
16118 sane-drivers = callPackage ../applications/graphics/sane/drivers.nix { };
16119
16120 mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { };
16121
16122 sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { };
16123
16124 slock = callPackage ../misc/screensavers/slock {
16125 conf = config.slock.conf or null;
16126 };
16127
16128 snscrape = with python3Packages; toPythonApplication snscrape;
16129
16130 sourceAndTags = callPackage ../misc/source-and-tags {
16131 hasktags = haskellPackages.hasktags;
16132 };
16133
16134 tellico = libsForQt5.callPackage ../applications/misc/tellico { };
16135
16136 termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py { };
16137
16138 inherit (callPackage ../applications/networking/cluster/terraform { })
16139 mkTerraform
16140 terraform_1
16141 terraform_plugins_test
16142 ;
16143
16144 terraform = terraform_1;
16145
16146 terraform-providers = recurseIntoAttrs (
16147 callPackage ../applications/networking/cluster/terraform-providers { }
16148 );
16149
16150 terraforming = callPackage ../applications/networking/cluster/terraforming { };
16151
16152 terraform-landscape = callPackage ../applications/networking/cluster/terraform-landscape { };
16153
16154 unityhub = callPackage ../development/tools/unityhub { };
16155
16156 vaultenv = haskell.lib.justStaticExecutables haskellPackages.vaultenv;
16157
16158 vaultwarden-sqlite = vaultwarden;
16159 vaultwarden-mysql = vaultwarden.override { dbBackend = "mysql"; };
16160 vaultwarden-postgresql = vaultwarden.override { dbBackend = "postgresql"; };
16161
16162 vimUtils = callPackage ../applications/editors/vim/plugins/utils/vim-utils.nix { };
16163
16164 vimPlugins = recurseIntoAttrs (callPackage ../applications/editors/vim/plugins { });
16165
16166 vimb = wrapFirefox vimb-unwrapped { };
16167
16168 vivisect = with python3Packages; toPythonApplication (vivisect.override { withGui = true; });
16169
16170 vokoscreen = libsForQt5.callPackage ../applications/video/vokoscreen {
16171 ffmpeg = ffmpeg-full;
16172 };
16173
16174 py-wacz = with python3Packages; toPythonApplication wacz;
16175
16176 wacomtablet = libsForQt5.callPackage ../tools/misc/wacomtablet { };
16177
16178 wasmer = callPackage ../development/interpreters/wasmer {
16179 llvmPackages = llvmPackages_18;
16180 };
16181
16182 wavm = callPackage ../development/interpreters/wavm {
16183 llvmPackages = llvmPackages_12;
16184 };
16185
16186 webkit2-sharp = callPackage ../development/libraries/webkit2-sharp {
16187 webkitgtk = webkitgtk_4_0;
16188 };
16189
16190 wibo = pkgsi686Linux.callPackage ../applications/emulators/wibo { };
16191
16192 wikicurses = callPackage ../applications/misc/wikicurses {
16193 pythonPackages = python3Packages;
16194 };
16195
16196 winePackagesFor =
16197 wineBuild:
16198 lib.makeExtensible (
16199 self: with self; {
16200 callPackage = newScope self;
16201
16202 inherit wineBuild;
16203
16204 inherit (callPackage ./wine-packages.nix { })
16205 minimal
16206 base
16207 full
16208 stable
16209 stableFull
16210 unstable
16211 unstableFull
16212 staging
16213 stagingFull
16214 wayland
16215 waylandFull
16216 yabridge
16217 fonts
16218 ;
16219 }
16220 );
16221
16222 winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32"));
16223 wine64Packages = recurseIntoAttrs (winePackagesFor "wine64");
16224 wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow");
16225 wineWow64Packages = recurseIntoAttrs (winePackagesFor "wineWow64");
16226
16227 wine = winePackages.full;
16228 wine64 = wine64Packages.full;
16229
16230 wine-staging = lowPrio (
16231 winePackages.full.override {
16232 wineRelease = "staging";
16233 }
16234 );
16235
16236 wine-wayland = lowPrio (
16237 winePackages.full.override {
16238 x11Support = false;
16239 }
16240 );
16241
16242 inherit (callPackage ../servers/web-apps/wordpress { })
16243 wordpress
16244 wordpress_6_7
16245 wordpress_6_8
16246 ;
16247
16248 wordpressPackages = recurseIntoAttrs (
16249 callPackage ../servers/web-apps/wordpress/packages {
16250 plugins = lib.importJSON ../servers/web-apps/wordpress/packages/plugins.json;
16251 themes = lib.importJSON ../servers/web-apps/wordpress/packages/themes.json;
16252 languages = lib.importJSON ../servers/web-apps/wordpress/packages/languages.json;
16253 }
16254 );
16255
16256 wraith = callPackage ../applications/networking/irc/wraith {
16257 openssl = openssl_1_1;
16258 };
16259
16260 xsane = callPackage ../applications/graphics/sane/xsane.nix { };
16261
16262 xsw = callPackage ../applications/misc/xsw {
16263 # Enable the next line to use this in terminal.
16264 # Note that it requires sixel capable terminals such as mlterm
16265 # or xterm -ti 340
16266 SDL = SDL_sixel;
16267 SDL_gfx = SDL_gfx.override { SDL = SDL_sixel; };
16268 SDL_image = SDL_image.override { SDL = SDL_sixel; };
16269 SDL_ttf = SDL_ttf.override { SDL = SDL_sixel; };
16270 };
16271
16272 yamale = with python3Packages; toPythonApplication yamale;
16273
16274 zap-chip-gui = zap-chip.override { withGui = true; };
16275
16276 myEnvFun = callPackage ../misc/my-env {
16277 inherit (stdenv) mkDerivation;
16278 };
16279
16280 znc = callPackage ../applications/networking/znc { };
16281
16282 zncModules = recurseIntoAttrs (callPackage ../applications/networking/znc/modules.nix { });
16283
16284 bullet = callPackage ../development/libraries/bullet { };
16285
16286 bullet-roboschool = callPackage ../development/libraries/bullet/roboschool-fork.nix { };
16287
16288 dart = callPackage ../development/compilers/dart { };
16289
16290 pub2nix = recurseIntoAttrs (callPackage ../build-support/dart/pub2nix { });
16291
16292 buildDartApplication = callPackage ../build-support/dart/build-dart-application { };
16293
16294 dartHooks = callPackage ../build-support/dart/build-dart-application/hooks { };
16295
16296 httrack = callPackage ../tools/backup/httrack { };
16297
16298 httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { };
16299
16300 # Overriding does not work when using callPackage on discord using import instead. (https://github.com/NixOS/nixpkgs/pull/179906)
16301 discord = import ../applications/networking/instant-messengers/discord {
16302 inherit lib stdenv;
16303 inherit (pkgs) callPackage fetchurl;
16304 branch = "stable";
16305 };
16306
16307 discord-ptb = import ../applications/networking/instant-messengers/discord {
16308 inherit lib stdenv;
16309 inherit (pkgs) callPackage fetchurl;
16310 branch = "ptb";
16311 };
16312
16313 discord-canary = import ../applications/networking/instant-messengers/discord {
16314 inherit lib stdenv;
16315 inherit (pkgs) callPackage fetchurl;
16316 branch = "canary";
16317 };
16318
16319 discord-development = import ../applications/networking/instant-messengers/discord {
16320 inherit lib stdenv;
16321 inherit (pkgs) callPackage fetchurl;
16322 branch = "development";
16323 };
16324
16325 discord-screenaudio =
16326 qt6Packages.callPackage ../applications/networking/instant-messengers/discord-screenaudio
16327 { };
16328
16329 tomb = callPackage ../by-name/to/tomb/package.nix {
16330 pinentry = pinentry-curses;
16331 };
16332
16333 maphosts = callPackage ../tools/networking/maphosts { };
16334
16335 tora = libsForQt5.callPackage ../development/tools/tora { };
16336
16337 nitrokey-app = libsForQt5.callPackage ../tools/security/nitrokey-app { };
16338
16339 nitrokey-app2 = qt6Packages.callPackage ../tools/security/nitrokey-app2 { };
16340
16341 hy = with python3Packages; toPythonApplication hy;
16342
16343 ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { };
16344
16345 vdr = callPackage ../applications/video/vdr { };
16346 vdrPlugins = recurseIntoAttrs (callPackage ../applications/video/vdr/plugins.nix { });
16347 wrapVdr = callPackage ../applications/video/vdr/wrapper.nix { };
16348
16349 chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing { };
16350
16351 linode-cli = python3Packages.callPackage ../tools/virtualization/linode-cli { };
16352
16353 phonetisaurus = callPackage ../development/libraries/phonetisaurus {
16354 # https://github.com/AdolfVonKleist/Phonetisaurus/issues/70
16355 openfst = openfst.overrideAttrs rec {
16356 version = "1.7.9";
16357 src = fetchurl {
16358 url = "http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-${version}.tar.gz";
16359 hash = "sha256-kxmusx0eKVCuJUSYhOJVzCvJ36+Yf2AVkHY+YaEPvd4=";
16360 };
16361 };
16362 };
16363
16364 compressDrv = callPackage ../build-support/compress-drv { };
16365
16366 compressDrvWeb = callPackage ../build-support/compress-drv/web.nix { };
16367
16368 dnstracer = callPackage ../tools/networking/dnstracer {
16369 inherit (darwin) libresolv;
16370 };
16371
16372 diceware = with python3Packages; toPythonApplication diceware;
16373
16374 xml2rfc = with python3Packages; toPythonApplication xml2rfc;
16375
16376 ape = callPackage ../applications/misc/ape { };
16377 attemptoClex = callPackage ../applications/misc/ape/clex.nix { };
16378 apeClex = callPackage ../applications/misc/ape/apeclex.nix { };
16379
16380 # Unix tools
16381 unixtools = recurseIntoAttrs (callPackages ./unixtools.nix { });
16382 inherit (unixtools)
16383 hexdump
16384 ps
16385 logger
16386 eject
16387 umount
16388 mount
16389 wall
16390 hostname
16391 more
16392 sysctl
16393 getconf
16394 getent
16395 locale
16396 killall
16397 xxd
16398 watch
16399 ;
16400
16401 fts = if stdenv.hostPlatform.isMusl then musl-fts else null;
16402
16403 bsdSetupHook = makeSetupHook {
16404 name = "bsd-setup-hook";
16405 } ../os-specific/bsd/setup-hook.sh;
16406
16407 freebsd = callPackage ../os-specific/bsd/freebsd { };
16408
16409 netbsd = callPackage ../os-specific/bsd/netbsd { };
16410
16411 openbsd = callPackage ../os-specific/bsd/openbsd { };
16412
16413 bcompare = libsForQt5.callPackage ../applications/version-management/bcompare { };
16414
16415 xp-pen-deco-01-v2-driver = libsForQt5.xp-pen-deco-01-v2-driver;
16416
16417 xp-pen-g430-driver = libsForQt5.xp-pen-g430-driver;
16418
16419 newlib = callPackage ../development/misc/newlib {
16420 stdenv = stdenvNoLibc;
16421 };
16422
16423 newlib-nano = callPackage ../development/misc/newlib {
16424 stdenv = stdenvNoLibc;
16425 nanoizeNewlib = true;
16426 };
16427
16428 wfuzz = with python3Packages; toPythonApplication wfuzz;
16429
16430 kodelife = callPackage ../applications/graphics/kodelife {
16431 inherit (gst_all_1) gstreamer gst-plugins-base;
16432 };
16433
16434 sieveshell = with python3.pkgs; toPythonApplication managesieve;
16435
16436 jami = qt6Packages.callPackage ../applications/networking/instant-messengers/jami {
16437 # TODO: remove once `udev` is `systemdMinimal` everywhere.
16438 udev = systemdMinimal;
16439 jack = libjack2;
16440 };
16441
16442 gpio-utils = callPackage ../os-specific/linux/kernel/gpio-utils.nix { };
16443
16444 inherit (callPackage ../applications/misc/zettlr { }) zettlr;
16445
16446 swift-corelibs-libdispatch = swiftPackages.Dispatch;
16447
16448 aitrack = libsForQt5.callPackage ../applications/misc/aitrack { };
16449
16450 tidal-dl = python3Packages.callPackage ../tools/audio/tidal-dl { };
16451
16452 tubekit = callPackage ../applications/networking/cluster/tubekit/wrapper.nix { };
16453
16454 tubekit-unwrapped = callPackage ../applications/networking/cluster/tubekit { };
16455
16456 duden = python3Packages.toPythonApplication python3Packages.duden;
16457
16458 yaziPlugins = recurseIntoAttrs (callPackage ../by-name/ya/yazi/plugins { });
16459
16460 dillo = callPackage ../by-name/di/dillo/package.nix {
16461 fltk = fltk13;
16462 };
16463
16464 cantata = callPackage ../by-name/ca/cantata/package.nix {
16465 ffmpeg = ffmpeg_6;
16466 };
16467
16468 libkazv = callPackage ../by-name/li/libkazv/package.nix {
16469 libcpr = libcpr_1_10_5;
16470 };
16471
16472 tree-from-tags = callPackage ../by-name/tr/tree-from-tags/package.nix {
16473 ruby = ruby_3_1;
16474 };
16475
16476 biblioteca = callPackage ../by-name/bi/biblioteca/package.nix {
16477 webkitgtk = webkitgtk_6_0;
16478 };
16479
16480 libpostalWithData = callPackage ../by-name/li/libpostal/package.nix {
16481 withData = true;
16482 };
16483
16484 clash-verge-rev = callPackage ../by-name/cl/clash-verge-rev/package.nix {
16485 libsoup = libsoup_3;
16486 };
16487
16488 rustdesk-flutter = callPackage ../by-name/ru/rustdesk-flutter/package.nix {
16489 flutter = flutter324;
16490 };
16491
16492 openfreebuds = callPackage ../by-name/op/openfreebuds/package.nix {
16493 python3Packages = python3Full.pkgs;
16494 };
16495
16496 davis = callPackage ../by-name/da/davis/package.nix {
16497 php = php83; # https://github.com/tchapi/davis/issues/195
16498 };
16499}